summaryrefslogtreecommitdiff
path: root/src/systemc/tests/systemc/misc/unit/data
diff options
context:
space:
mode:
Diffstat (limited to 'src/systemc/tests/systemc/misc/unit/data')
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/README9
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/bits_to_bits.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/datawidth.cpp66
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/golden/bits_to_bits.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/extension.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/golden/extension.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/main.cpp79
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/golden/lost_carry.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/lost_carry.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/common.h51
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/golden/promote.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/promote.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/common.h51
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/golden/promote_extension.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/promote_extension.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/golden/promote_lost_carry.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/promote_lost_carry.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/golden/promote_truncation.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/promote_truncation.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/golden/truncation.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/truncation.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/README9
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/bits_to_bits.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/golden/bits_to_bits.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/extension.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/golden/extension.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/common.h47
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/golden/lost_carry.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/lost_carry.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/common.h51
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/golden/promote.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/promote.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/common.h51
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/golden/promote_extension.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/promote_extension.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/golden/promote_lost_carry.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/promote_lost_carry.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/golden/promote_truncation.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/promote_truncation.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/golden/truncation.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/truncation.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/README9
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/bits_to_bits.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/golden/bits_to_bits.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/extension.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/golden/extension.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/common.h45
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/golden/lost_carry.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/lost_carry.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/common.h47
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/golden/promote.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/promote.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/common.h47
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/golden/promote_extension.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/promote_extension.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/golden/promote_lost_carry.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/promote_lost_carry.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/golden/promote_truncation.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/promote_truncation.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/golden/truncation.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/truncation.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/README9
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/bits_to_bits.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/golden/bits_to_bits.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/extension.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/golden/extension.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/common.h45
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/golden/lost_carry.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/lost_carry.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/common.h47
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/golden/promote.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/promote.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/common.h47
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/golden/promote_extension.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/promote_extension.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/golden/promote_lost_carry.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/promote_lost_carry.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/golden/promote_truncation.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/promote_truncation.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/datawidth.h87
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/golden/truncation.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/main.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/stimgen.cpp69
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/truncation.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/add_promote/add_promote.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/add_promote/common.h48
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/add_promote/datawidth.cpp67
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/add_promote/datawidth.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/add_promote/golden/add_promote.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/add_promote/main.cpp79
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/add_promote/stimgen.cpp68
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/add_promote/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.cpp77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.h83
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/array_range/common.h49
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/array_range/golden/array_range.log8
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/array_range/main.cpp67
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/array_range/stimgen.cpp61
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/array_range/stimgen.h83
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/bool_tilda/bool_tilda.cpp63
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/bool_tilda/golden/bool_tilda.log6
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/concat_port/common.h48
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.cpp85
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.h86
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/concat_port/golden/concat_port.log11
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/concat_port/main.cpp68
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/concat_port/stimgen.cpp66
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/concat_port/stimgen.h86
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth_int.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/golden/datawidth_int.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/main.cpp71
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/stimgen.cpp68
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/common.h46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/datawidth.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/datawidth.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/golden/int_to_bits.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/int_to_bits.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/main.cpp72
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/stimgen.cpp68
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/promote_add/common.h48
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/promote_add/datawidth.cpp67
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/promote_add/datawidth.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/promote_add/golden/promote_add.log4099
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/promote_add/main.cpp78
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/promote_add/promote_add.f3
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/promote_add/stimgen.cpp68
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/promote_add/stimgen.h77
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/shift/test1/golden/test1.log45
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/shift/test1/test1.cpp61
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/std_to_bool/golden/std_to_bool.log5
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/std_to_bool/std_to_bool.cpp57
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/std_ulogic_tilda/golden/std_ulogic_tilda.log7
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/std_ulogic_tilda/std_ulogic_tilda.cpp65
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/subvector/stab1/golden/stab1.log1407
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/subvector/stab1/stab1.cpp148
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/subvector/stab2/golden/stab2.log1317
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/subvector/stab2/stab2.cpp172
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/subvector/stab3/golden/stab3.log1717
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/subvector/stab3/stab3.cpp223
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/subvector/test1/golden/test1.log63
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/general/subvector/test1/test1.cpp147
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/c_array_datatype/c_array_datatype.cpp110
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/c_array_datatype/golden/c_array_datatype.log17
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/int_datatype/golden/int_datatype.log46
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/int_datatype/int_datatype.cpp217
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/golden/std_ulogic_da106
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/golden/std_ulogic_datatype.log106
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/std_ulogic_datatype.cpp542
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ul203
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log203
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.bsd64203
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.cygwin64203
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.linux64203
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.linuxaarch64203
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.macosx64203
-rw-r--r--src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/std_ulogic_vector_datatype.cpp772
338 files changed, 172566 insertions, 0 deletions
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/README b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/README
new file mode 100644
index 000000000..6d77c7cbb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/README
@@ -0,0 +1,9 @@
+bits_to_bits 7-bit = 6-bit + 6-bit
+lost_carry 6-bit = 6-bit + 6-bit
+extension 9-bit = 6-bit + 6-bit
+truncation 4-bit = 6-bit + 6-bit
+
+promote 7-bit = 4-bit + 6-bit
+promote_lost_carry 6-bit = 4-bit + 6-bit
+promote_extension 9-bit = 4-bit + 6-bit
+promote_truncation 4-bit = 4-bit + 6-bit
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/bits_to_bits.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/bits_to_bits.f
new file mode 100644
index 000000000..9fcbb2977
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/bits_to_bits.f
@@ -0,0 +1,3 @@
+bits_to_bits/datawidth.cpp
+bits_to_bits/stimgen.cpp
+bits_to_bits/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/common.h
new file mode 100644
index 000000000..e56acdb9f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<7> bool_vector7;
+
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+typedef sc_signal<bool_vector7> signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/datawidth.cpp
new file mode 100644
index 000000000..e6a4ae2c2
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/datawidth.cpp
@@ -0,0 +1,66 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector6 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector7 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+
+ tmp_result = tmp_a.to_int() + tmp_b.to_int();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/datawidth.h
new file mode 100644
index 000000000..df7ca5b2e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector7& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector7& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/golden/bits_to_bits.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/golden/bits_to_bits.log
new file mode 100644
index 000000000..4bf4390b9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/golden/bits_to_bits.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + -32 = -24 (1101000)
+8 + -31 = -23 (1101001)
+8 + -30 = -22 (1101010)
+8 + -29 = -21 (1101011)
+8 + -28 = -20 (1101100)
+8 + -27 = -19 (1101101)
+8 + -26 = -18 (1101110)
+8 + -25 = -17 (1101111)
+8 + -24 = -16 (1110000)
+8 + -23 = -15 (1110001)
+8 + -22 = -14 (1110010)
+8 + -21 = -13 (1110011)
+8 + -20 = -12 (1110100)
+8 + -19 = -11 (1110101)
+8 + -18 = -10 (1110110)
+8 + -17 = -9 (1110111)
+8 + -16 = -8 (1111000)
+8 + -15 = -7 (1111001)
+8 + -14 = -6 (1111010)
+8 + -13 = -5 (1111011)
+8 + -12 = -4 (1111100)
+8 + -11 = -3 (1111101)
+8 + -10 = -2 (1111110)
+8 + -9 = -1 (1111111)
+8 + -8 = 0 (0000000)
+8 + -7 = 1 (0000001)
+8 + -6 = 2 (0000010)
+8 + -5 = 3 (0000011)
+8 + -4 = 4 (0000100)
+8 + -3 = 5 (0000101)
+8 + -2 = 6 (0000110)
+8 + -1 = 7 (0000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + -32 = -23 (1101001)
+9 + -31 = -22 (1101010)
+9 + -30 = -21 (1101011)
+9 + -29 = -20 (1101100)
+9 + -28 = -19 (1101101)
+9 + -27 = -18 (1101110)
+9 + -26 = -17 (1101111)
+9 + -25 = -16 (1110000)
+9 + -24 = -15 (1110001)
+9 + -23 = -14 (1110010)
+9 + -22 = -13 (1110011)
+9 + -21 = -12 (1110100)
+9 + -20 = -11 (1110101)
+9 + -19 = -10 (1110110)
+9 + -18 = -9 (1110111)
+9 + -17 = -8 (1111000)
+9 + -16 = -7 (1111001)
+9 + -15 = -6 (1111010)
+9 + -14 = -5 (1111011)
+9 + -13 = -4 (1111100)
+9 + -12 = -3 (1111101)
+9 + -11 = -2 (1111110)
+9 + -10 = -1 (1111111)
+9 + -9 = 0 (0000000)
+9 + -8 = 1 (0000001)
+9 + -7 = 2 (0000010)
+9 + -6 = 3 (0000011)
+9 + -5 = 4 (0000100)
+9 + -4 = 5 (0000101)
+9 + -3 = 6 (0000110)
+9 + -2 = 7 (0000111)
+9 + -1 = 8 (0001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + -32 = -22 (1101010)
+10 + -31 = -21 (1101011)
+10 + -30 = -20 (1101100)
+10 + -29 = -19 (1101101)
+10 + -28 = -18 (1101110)
+10 + -27 = -17 (1101111)
+10 + -26 = -16 (1110000)
+10 + -25 = -15 (1110001)
+10 + -24 = -14 (1110010)
+10 + -23 = -13 (1110011)
+10 + -22 = -12 (1110100)
+10 + -21 = -11 (1110101)
+10 + -20 = -10 (1110110)
+10 + -19 = -9 (1110111)
+10 + -18 = -8 (1111000)
+10 + -17 = -7 (1111001)
+10 + -16 = -6 (1111010)
+10 + -15 = -5 (1111011)
+10 + -14 = -4 (1111100)
+10 + -13 = -3 (1111101)
+10 + -12 = -2 (1111110)
+10 + -11 = -1 (1111111)
+10 + -10 = 0 (0000000)
+10 + -9 = 1 (0000001)
+10 + -8 = 2 (0000010)
+10 + -7 = 3 (0000011)
+10 + -6 = 4 (0000100)
+10 + -5 = 5 (0000101)
+10 + -4 = 6 (0000110)
+10 + -3 = 7 (0000111)
+10 + -2 = 8 (0001000)
+10 + -1 = 9 (0001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + -32 = -21 (1101011)
+11 + -31 = -20 (1101100)
+11 + -30 = -19 (1101101)
+11 + -29 = -18 (1101110)
+11 + -28 = -17 (1101111)
+11 + -27 = -16 (1110000)
+11 + -26 = -15 (1110001)
+11 + -25 = -14 (1110010)
+11 + -24 = -13 (1110011)
+11 + -23 = -12 (1110100)
+11 + -22 = -11 (1110101)
+11 + -21 = -10 (1110110)
+11 + -20 = -9 (1110111)
+11 + -19 = -8 (1111000)
+11 + -18 = -7 (1111001)
+11 + -17 = -6 (1111010)
+11 + -16 = -5 (1111011)
+11 + -15 = -4 (1111100)
+11 + -14 = -3 (1111101)
+11 + -13 = -2 (1111110)
+11 + -12 = -1 (1111111)
+11 + -11 = 0 (0000000)
+11 + -10 = 1 (0000001)
+11 + -9 = 2 (0000010)
+11 + -8 = 3 (0000011)
+11 + -7 = 4 (0000100)
+11 + -6 = 5 (0000101)
+11 + -5 = 6 (0000110)
+11 + -4 = 7 (0000111)
+11 + -3 = 8 (0001000)
+11 + -2 = 9 (0001001)
+11 + -1 = 10 (0001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + -32 = -20 (1101100)
+12 + -31 = -19 (1101101)
+12 + -30 = -18 (1101110)
+12 + -29 = -17 (1101111)
+12 + -28 = -16 (1110000)
+12 + -27 = -15 (1110001)
+12 + -26 = -14 (1110010)
+12 + -25 = -13 (1110011)
+12 + -24 = -12 (1110100)
+12 + -23 = -11 (1110101)
+12 + -22 = -10 (1110110)
+12 + -21 = -9 (1110111)
+12 + -20 = -8 (1111000)
+12 + -19 = -7 (1111001)
+12 + -18 = -6 (1111010)
+12 + -17 = -5 (1111011)
+12 + -16 = -4 (1111100)
+12 + -15 = -3 (1111101)
+12 + -14 = -2 (1111110)
+12 + -13 = -1 (1111111)
+12 + -12 = 0 (0000000)
+12 + -11 = 1 (0000001)
+12 + -10 = 2 (0000010)
+12 + -9 = 3 (0000011)
+12 + -8 = 4 (0000100)
+12 + -7 = 5 (0000101)
+12 + -6 = 6 (0000110)
+12 + -5 = 7 (0000111)
+12 + -4 = 8 (0001000)
+12 + -3 = 9 (0001001)
+12 + -2 = 10 (0001010)
+12 + -1 = 11 (0001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + -32 = -19 (1101101)
+13 + -31 = -18 (1101110)
+13 + -30 = -17 (1101111)
+13 + -29 = -16 (1110000)
+13 + -28 = -15 (1110001)
+13 + -27 = -14 (1110010)
+13 + -26 = -13 (1110011)
+13 + -25 = -12 (1110100)
+13 + -24 = -11 (1110101)
+13 + -23 = -10 (1110110)
+13 + -22 = -9 (1110111)
+13 + -21 = -8 (1111000)
+13 + -20 = -7 (1111001)
+13 + -19 = -6 (1111010)
+13 + -18 = -5 (1111011)
+13 + -17 = -4 (1111100)
+13 + -16 = -3 (1111101)
+13 + -15 = -2 (1111110)
+13 + -14 = -1 (1111111)
+13 + -13 = 0 (0000000)
+13 + -12 = 1 (0000001)
+13 + -11 = 2 (0000010)
+13 + -10 = 3 (0000011)
+13 + -9 = 4 (0000100)
+13 + -8 = 5 (0000101)
+13 + -7 = 6 (0000110)
+13 + -6 = 7 (0000111)
+13 + -5 = 8 (0001000)
+13 + -4 = 9 (0001001)
+13 + -3 = 10 (0001010)
+13 + -2 = 11 (0001011)
+13 + -1 = 12 (0001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + -32 = -18 (1101110)
+14 + -31 = -17 (1101111)
+14 + -30 = -16 (1110000)
+14 + -29 = -15 (1110001)
+14 + -28 = -14 (1110010)
+14 + -27 = -13 (1110011)
+14 + -26 = -12 (1110100)
+14 + -25 = -11 (1110101)
+14 + -24 = -10 (1110110)
+14 + -23 = -9 (1110111)
+14 + -22 = -8 (1111000)
+14 + -21 = -7 (1111001)
+14 + -20 = -6 (1111010)
+14 + -19 = -5 (1111011)
+14 + -18 = -4 (1111100)
+14 + -17 = -3 (1111101)
+14 + -16 = -2 (1111110)
+14 + -15 = -1 (1111111)
+14 + -14 = 0 (0000000)
+14 + -13 = 1 (0000001)
+14 + -12 = 2 (0000010)
+14 + -11 = 3 (0000011)
+14 + -10 = 4 (0000100)
+14 + -9 = 5 (0000101)
+14 + -8 = 6 (0000110)
+14 + -7 = 7 (0000111)
+14 + -6 = 8 (0001000)
+14 + -5 = 9 (0001001)
+14 + -4 = 10 (0001010)
+14 + -3 = 11 (0001011)
+14 + -2 = 12 (0001100)
+14 + -1 = 13 (0001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + -32 = -17 (1101111)
+15 + -31 = -16 (1110000)
+15 + -30 = -15 (1110001)
+15 + -29 = -14 (1110010)
+15 + -28 = -13 (1110011)
+15 + -27 = -12 (1110100)
+15 + -26 = -11 (1110101)
+15 + -25 = -10 (1110110)
+15 + -24 = -9 (1110111)
+15 + -23 = -8 (1111000)
+15 + -22 = -7 (1111001)
+15 + -21 = -6 (1111010)
+15 + -20 = -5 (1111011)
+15 + -19 = -4 (1111100)
+15 + -18 = -3 (1111101)
+15 + -17 = -2 (1111110)
+15 + -16 = -1 (1111111)
+15 + -15 = 0 (0000000)
+15 + -14 = 1 (0000001)
+15 + -13 = 2 (0000010)
+15 + -12 = 3 (0000011)
+15 + -11 = 4 (0000100)
+15 + -10 = 5 (0000101)
+15 + -9 = 6 (0000110)
+15 + -8 = 7 (0000111)
+15 + -7 = 8 (0001000)
+15 + -6 = 9 (0001001)
+15 + -5 = 10 (0001010)
+15 + -4 = 11 (0001011)
+15 + -3 = 12 (0001100)
+15 + -2 = 13 (0001101)
+15 + -1 = 14 (0001110)
+16 + 0 = 16 (0010000)
+16 + 1 = 17 (0010001)
+16 + 2 = 18 (0010010)
+16 + 3 = 19 (0010011)
+16 + 4 = 20 (0010100)
+16 + 5 = 21 (0010101)
+16 + 6 = 22 (0010110)
+16 + 7 = 23 (0010111)
+16 + 8 = 24 (0011000)
+16 + 9 = 25 (0011001)
+16 + 10 = 26 (0011010)
+16 + 11 = 27 (0011011)
+16 + 12 = 28 (0011100)
+16 + 13 = 29 (0011101)
+16 + 14 = 30 (0011110)
+16 + 15 = 31 (0011111)
+16 + 16 = 32 (0100000)
+16 + 17 = 33 (0100001)
+16 + 18 = 34 (0100010)
+16 + 19 = 35 (0100011)
+16 + 20 = 36 (0100100)
+16 + 21 = 37 (0100101)
+16 + 22 = 38 (0100110)
+16 + 23 = 39 (0100111)
+16 + 24 = 40 (0101000)
+16 + 25 = 41 (0101001)
+16 + 26 = 42 (0101010)
+16 + 27 = 43 (0101011)
+16 + 28 = 44 (0101100)
+16 + 29 = 45 (0101101)
+16 + 30 = 46 (0101110)
+16 + 31 = 47 (0101111)
+16 + -32 = -16 (1110000)
+16 + -31 = -15 (1110001)
+16 + -30 = -14 (1110010)
+16 + -29 = -13 (1110011)
+16 + -28 = -12 (1110100)
+16 + -27 = -11 (1110101)
+16 + -26 = -10 (1110110)
+16 + -25 = -9 (1110111)
+16 + -24 = -8 (1111000)
+16 + -23 = -7 (1111001)
+16 + -22 = -6 (1111010)
+16 + -21 = -5 (1111011)
+16 + -20 = -4 (1111100)
+16 + -19 = -3 (1111101)
+16 + -18 = -2 (1111110)
+16 + -17 = -1 (1111111)
+16 + -16 = 0 (0000000)
+16 + -15 = 1 (0000001)
+16 + -14 = 2 (0000010)
+16 + -13 = 3 (0000011)
+16 + -12 = 4 (0000100)
+16 + -11 = 5 (0000101)
+16 + -10 = 6 (0000110)
+16 + -9 = 7 (0000111)
+16 + -8 = 8 (0001000)
+16 + -7 = 9 (0001001)
+16 + -6 = 10 (0001010)
+16 + -5 = 11 (0001011)
+16 + -4 = 12 (0001100)
+16 + -3 = 13 (0001101)
+16 + -2 = 14 (0001110)
+16 + -1 = 15 (0001111)
+17 + 0 = 17 (0010001)
+17 + 1 = 18 (0010010)
+17 + 2 = 19 (0010011)
+17 + 3 = 20 (0010100)
+17 + 4 = 21 (0010101)
+17 + 5 = 22 (0010110)
+17 + 6 = 23 (0010111)
+17 + 7 = 24 (0011000)
+17 + 8 = 25 (0011001)
+17 + 9 = 26 (0011010)
+17 + 10 = 27 (0011011)
+17 + 11 = 28 (0011100)
+17 + 12 = 29 (0011101)
+17 + 13 = 30 (0011110)
+17 + 14 = 31 (0011111)
+17 + 15 = 32 (0100000)
+17 + 16 = 33 (0100001)
+17 + 17 = 34 (0100010)
+17 + 18 = 35 (0100011)
+17 + 19 = 36 (0100100)
+17 + 20 = 37 (0100101)
+17 + 21 = 38 (0100110)
+17 + 22 = 39 (0100111)
+17 + 23 = 40 (0101000)
+17 + 24 = 41 (0101001)
+17 + 25 = 42 (0101010)
+17 + 26 = 43 (0101011)
+17 + 27 = 44 (0101100)
+17 + 28 = 45 (0101101)
+17 + 29 = 46 (0101110)
+17 + 30 = 47 (0101111)
+17 + 31 = 48 (0110000)
+17 + -32 = -15 (1110001)
+17 + -31 = -14 (1110010)
+17 + -30 = -13 (1110011)
+17 + -29 = -12 (1110100)
+17 + -28 = -11 (1110101)
+17 + -27 = -10 (1110110)
+17 + -26 = -9 (1110111)
+17 + -25 = -8 (1111000)
+17 + -24 = -7 (1111001)
+17 + -23 = -6 (1111010)
+17 + -22 = -5 (1111011)
+17 + -21 = -4 (1111100)
+17 + -20 = -3 (1111101)
+17 + -19 = -2 (1111110)
+17 + -18 = -1 (1111111)
+17 + -17 = 0 (0000000)
+17 + -16 = 1 (0000001)
+17 + -15 = 2 (0000010)
+17 + -14 = 3 (0000011)
+17 + -13 = 4 (0000100)
+17 + -12 = 5 (0000101)
+17 + -11 = 6 (0000110)
+17 + -10 = 7 (0000111)
+17 + -9 = 8 (0001000)
+17 + -8 = 9 (0001001)
+17 + -7 = 10 (0001010)
+17 + -6 = 11 (0001011)
+17 + -5 = 12 (0001100)
+17 + -4 = 13 (0001101)
+17 + -3 = 14 (0001110)
+17 + -2 = 15 (0001111)
+17 + -1 = 16 (0010000)
+18 + 0 = 18 (0010010)
+18 + 1 = 19 (0010011)
+18 + 2 = 20 (0010100)
+18 + 3 = 21 (0010101)
+18 + 4 = 22 (0010110)
+18 + 5 = 23 (0010111)
+18 + 6 = 24 (0011000)
+18 + 7 = 25 (0011001)
+18 + 8 = 26 (0011010)
+18 + 9 = 27 (0011011)
+18 + 10 = 28 (0011100)
+18 + 11 = 29 (0011101)
+18 + 12 = 30 (0011110)
+18 + 13 = 31 (0011111)
+18 + 14 = 32 (0100000)
+18 + 15 = 33 (0100001)
+18 + 16 = 34 (0100010)
+18 + 17 = 35 (0100011)
+18 + 18 = 36 (0100100)
+18 + 19 = 37 (0100101)
+18 + 20 = 38 (0100110)
+18 + 21 = 39 (0100111)
+18 + 22 = 40 (0101000)
+18 + 23 = 41 (0101001)
+18 + 24 = 42 (0101010)
+18 + 25 = 43 (0101011)
+18 + 26 = 44 (0101100)
+18 + 27 = 45 (0101101)
+18 + 28 = 46 (0101110)
+18 + 29 = 47 (0101111)
+18 + 30 = 48 (0110000)
+18 + 31 = 49 (0110001)
+18 + -32 = -14 (1110010)
+18 + -31 = -13 (1110011)
+18 + -30 = -12 (1110100)
+18 + -29 = -11 (1110101)
+18 + -28 = -10 (1110110)
+18 + -27 = -9 (1110111)
+18 + -26 = -8 (1111000)
+18 + -25 = -7 (1111001)
+18 + -24 = -6 (1111010)
+18 + -23 = -5 (1111011)
+18 + -22 = -4 (1111100)
+18 + -21 = -3 (1111101)
+18 + -20 = -2 (1111110)
+18 + -19 = -1 (1111111)
+18 + -18 = 0 (0000000)
+18 + -17 = 1 (0000001)
+18 + -16 = 2 (0000010)
+18 + -15 = 3 (0000011)
+18 + -14 = 4 (0000100)
+18 + -13 = 5 (0000101)
+18 + -12 = 6 (0000110)
+18 + -11 = 7 (0000111)
+18 + -10 = 8 (0001000)
+18 + -9 = 9 (0001001)
+18 + -8 = 10 (0001010)
+18 + -7 = 11 (0001011)
+18 + -6 = 12 (0001100)
+18 + -5 = 13 (0001101)
+18 + -4 = 14 (0001110)
+18 + -3 = 15 (0001111)
+18 + -2 = 16 (0010000)
+18 + -1 = 17 (0010001)
+19 + 0 = 19 (0010011)
+19 + 1 = 20 (0010100)
+19 + 2 = 21 (0010101)
+19 + 3 = 22 (0010110)
+19 + 4 = 23 (0010111)
+19 + 5 = 24 (0011000)
+19 + 6 = 25 (0011001)
+19 + 7 = 26 (0011010)
+19 + 8 = 27 (0011011)
+19 + 9 = 28 (0011100)
+19 + 10 = 29 (0011101)
+19 + 11 = 30 (0011110)
+19 + 12 = 31 (0011111)
+19 + 13 = 32 (0100000)
+19 + 14 = 33 (0100001)
+19 + 15 = 34 (0100010)
+19 + 16 = 35 (0100011)
+19 + 17 = 36 (0100100)
+19 + 18 = 37 (0100101)
+19 + 19 = 38 (0100110)
+19 + 20 = 39 (0100111)
+19 + 21 = 40 (0101000)
+19 + 22 = 41 (0101001)
+19 + 23 = 42 (0101010)
+19 + 24 = 43 (0101011)
+19 + 25 = 44 (0101100)
+19 + 26 = 45 (0101101)
+19 + 27 = 46 (0101110)
+19 + 28 = 47 (0101111)
+19 + 29 = 48 (0110000)
+19 + 30 = 49 (0110001)
+19 + 31 = 50 (0110010)
+19 + -32 = -13 (1110011)
+19 + -31 = -12 (1110100)
+19 + -30 = -11 (1110101)
+19 + -29 = -10 (1110110)
+19 + -28 = -9 (1110111)
+19 + -27 = -8 (1111000)
+19 + -26 = -7 (1111001)
+19 + -25 = -6 (1111010)
+19 + -24 = -5 (1111011)
+19 + -23 = -4 (1111100)
+19 + -22 = -3 (1111101)
+19 + -21 = -2 (1111110)
+19 + -20 = -1 (1111111)
+19 + -19 = 0 (0000000)
+19 + -18 = 1 (0000001)
+19 + -17 = 2 (0000010)
+19 + -16 = 3 (0000011)
+19 + -15 = 4 (0000100)
+19 + -14 = 5 (0000101)
+19 + -13 = 6 (0000110)
+19 + -12 = 7 (0000111)
+19 + -11 = 8 (0001000)
+19 + -10 = 9 (0001001)
+19 + -9 = 10 (0001010)
+19 + -8 = 11 (0001011)
+19 + -7 = 12 (0001100)
+19 + -6 = 13 (0001101)
+19 + -5 = 14 (0001110)
+19 + -4 = 15 (0001111)
+19 + -3 = 16 (0010000)
+19 + -2 = 17 (0010001)
+19 + -1 = 18 (0010010)
+20 + 0 = 20 (0010100)
+20 + 1 = 21 (0010101)
+20 + 2 = 22 (0010110)
+20 + 3 = 23 (0010111)
+20 + 4 = 24 (0011000)
+20 + 5 = 25 (0011001)
+20 + 6 = 26 (0011010)
+20 + 7 = 27 (0011011)
+20 + 8 = 28 (0011100)
+20 + 9 = 29 (0011101)
+20 + 10 = 30 (0011110)
+20 + 11 = 31 (0011111)
+20 + 12 = 32 (0100000)
+20 + 13 = 33 (0100001)
+20 + 14 = 34 (0100010)
+20 + 15 = 35 (0100011)
+20 + 16 = 36 (0100100)
+20 + 17 = 37 (0100101)
+20 + 18 = 38 (0100110)
+20 + 19 = 39 (0100111)
+20 + 20 = 40 (0101000)
+20 + 21 = 41 (0101001)
+20 + 22 = 42 (0101010)
+20 + 23 = 43 (0101011)
+20 + 24 = 44 (0101100)
+20 + 25 = 45 (0101101)
+20 + 26 = 46 (0101110)
+20 + 27 = 47 (0101111)
+20 + 28 = 48 (0110000)
+20 + 29 = 49 (0110001)
+20 + 30 = 50 (0110010)
+20 + 31 = 51 (0110011)
+20 + -32 = -12 (1110100)
+20 + -31 = -11 (1110101)
+20 + -30 = -10 (1110110)
+20 + -29 = -9 (1110111)
+20 + -28 = -8 (1111000)
+20 + -27 = -7 (1111001)
+20 + -26 = -6 (1111010)
+20 + -25 = -5 (1111011)
+20 + -24 = -4 (1111100)
+20 + -23 = -3 (1111101)
+20 + -22 = -2 (1111110)
+20 + -21 = -1 (1111111)
+20 + -20 = 0 (0000000)
+20 + -19 = 1 (0000001)
+20 + -18 = 2 (0000010)
+20 + -17 = 3 (0000011)
+20 + -16 = 4 (0000100)
+20 + -15 = 5 (0000101)
+20 + -14 = 6 (0000110)
+20 + -13 = 7 (0000111)
+20 + -12 = 8 (0001000)
+20 + -11 = 9 (0001001)
+20 + -10 = 10 (0001010)
+20 + -9 = 11 (0001011)
+20 + -8 = 12 (0001100)
+20 + -7 = 13 (0001101)
+20 + -6 = 14 (0001110)
+20 + -5 = 15 (0001111)
+20 + -4 = 16 (0010000)
+20 + -3 = 17 (0010001)
+20 + -2 = 18 (0010010)
+20 + -1 = 19 (0010011)
+21 + 0 = 21 (0010101)
+21 + 1 = 22 (0010110)
+21 + 2 = 23 (0010111)
+21 + 3 = 24 (0011000)
+21 + 4 = 25 (0011001)
+21 + 5 = 26 (0011010)
+21 + 6 = 27 (0011011)
+21 + 7 = 28 (0011100)
+21 + 8 = 29 (0011101)
+21 + 9 = 30 (0011110)
+21 + 10 = 31 (0011111)
+21 + 11 = 32 (0100000)
+21 + 12 = 33 (0100001)
+21 + 13 = 34 (0100010)
+21 + 14 = 35 (0100011)
+21 + 15 = 36 (0100100)
+21 + 16 = 37 (0100101)
+21 + 17 = 38 (0100110)
+21 + 18 = 39 (0100111)
+21 + 19 = 40 (0101000)
+21 + 20 = 41 (0101001)
+21 + 21 = 42 (0101010)
+21 + 22 = 43 (0101011)
+21 + 23 = 44 (0101100)
+21 + 24 = 45 (0101101)
+21 + 25 = 46 (0101110)
+21 + 26 = 47 (0101111)
+21 + 27 = 48 (0110000)
+21 + 28 = 49 (0110001)
+21 + 29 = 50 (0110010)
+21 + 30 = 51 (0110011)
+21 + 31 = 52 (0110100)
+21 + -32 = -11 (1110101)
+21 + -31 = -10 (1110110)
+21 + -30 = -9 (1110111)
+21 + -29 = -8 (1111000)
+21 + -28 = -7 (1111001)
+21 + -27 = -6 (1111010)
+21 + -26 = -5 (1111011)
+21 + -25 = -4 (1111100)
+21 + -24 = -3 (1111101)
+21 + -23 = -2 (1111110)
+21 + -22 = -1 (1111111)
+21 + -21 = 0 (0000000)
+21 + -20 = 1 (0000001)
+21 + -19 = 2 (0000010)
+21 + -18 = 3 (0000011)
+21 + -17 = 4 (0000100)
+21 + -16 = 5 (0000101)
+21 + -15 = 6 (0000110)
+21 + -14 = 7 (0000111)
+21 + -13 = 8 (0001000)
+21 + -12 = 9 (0001001)
+21 + -11 = 10 (0001010)
+21 + -10 = 11 (0001011)
+21 + -9 = 12 (0001100)
+21 + -8 = 13 (0001101)
+21 + -7 = 14 (0001110)
+21 + -6 = 15 (0001111)
+21 + -5 = 16 (0010000)
+21 + -4 = 17 (0010001)
+21 + -3 = 18 (0010010)
+21 + -2 = 19 (0010011)
+21 + -1 = 20 (0010100)
+22 + 0 = 22 (0010110)
+22 + 1 = 23 (0010111)
+22 + 2 = 24 (0011000)
+22 + 3 = 25 (0011001)
+22 + 4 = 26 (0011010)
+22 + 5 = 27 (0011011)
+22 + 6 = 28 (0011100)
+22 + 7 = 29 (0011101)
+22 + 8 = 30 (0011110)
+22 + 9 = 31 (0011111)
+22 + 10 = 32 (0100000)
+22 + 11 = 33 (0100001)
+22 + 12 = 34 (0100010)
+22 + 13 = 35 (0100011)
+22 + 14 = 36 (0100100)
+22 + 15 = 37 (0100101)
+22 + 16 = 38 (0100110)
+22 + 17 = 39 (0100111)
+22 + 18 = 40 (0101000)
+22 + 19 = 41 (0101001)
+22 + 20 = 42 (0101010)
+22 + 21 = 43 (0101011)
+22 + 22 = 44 (0101100)
+22 + 23 = 45 (0101101)
+22 + 24 = 46 (0101110)
+22 + 25 = 47 (0101111)
+22 + 26 = 48 (0110000)
+22 + 27 = 49 (0110001)
+22 + 28 = 50 (0110010)
+22 + 29 = 51 (0110011)
+22 + 30 = 52 (0110100)
+22 + 31 = 53 (0110101)
+22 + -32 = -10 (1110110)
+22 + -31 = -9 (1110111)
+22 + -30 = -8 (1111000)
+22 + -29 = -7 (1111001)
+22 + -28 = -6 (1111010)
+22 + -27 = -5 (1111011)
+22 + -26 = -4 (1111100)
+22 + -25 = -3 (1111101)
+22 + -24 = -2 (1111110)
+22 + -23 = -1 (1111111)
+22 + -22 = 0 (0000000)
+22 + -21 = 1 (0000001)
+22 + -20 = 2 (0000010)
+22 + -19 = 3 (0000011)
+22 + -18 = 4 (0000100)
+22 + -17 = 5 (0000101)
+22 + -16 = 6 (0000110)
+22 + -15 = 7 (0000111)
+22 + -14 = 8 (0001000)
+22 + -13 = 9 (0001001)
+22 + -12 = 10 (0001010)
+22 + -11 = 11 (0001011)
+22 + -10 = 12 (0001100)
+22 + -9 = 13 (0001101)
+22 + -8 = 14 (0001110)
+22 + -7 = 15 (0001111)
+22 + -6 = 16 (0010000)
+22 + -5 = 17 (0010001)
+22 + -4 = 18 (0010010)
+22 + -3 = 19 (0010011)
+22 + -2 = 20 (0010100)
+22 + -1 = 21 (0010101)
+23 + 0 = 23 (0010111)
+23 + 1 = 24 (0011000)
+23 + 2 = 25 (0011001)
+23 + 3 = 26 (0011010)
+23 + 4 = 27 (0011011)
+23 + 5 = 28 (0011100)
+23 + 6 = 29 (0011101)
+23 + 7 = 30 (0011110)
+23 + 8 = 31 (0011111)
+23 + 9 = 32 (0100000)
+23 + 10 = 33 (0100001)
+23 + 11 = 34 (0100010)
+23 + 12 = 35 (0100011)
+23 + 13 = 36 (0100100)
+23 + 14 = 37 (0100101)
+23 + 15 = 38 (0100110)
+23 + 16 = 39 (0100111)
+23 + 17 = 40 (0101000)
+23 + 18 = 41 (0101001)
+23 + 19 = 42 (0101010)
+23 + 20 = 43 (0101011)
+23 + 21 = 44 (0101100)
+23 + 22 = 45 (0101101)
+23 + 23 = 46 (0101110)
+23 + 24 = 47 (0101111)
+23 + 25 = 48 (0110000)
+23 + 26 = 49 (0110001)
+23 + 27 = 50 (0110010)
+23 + 28 = 51 (0110011)
+23 + 29 = 52 (0110100)
+23 + 30 = 53 (0110101)
+23 + 31 = 54 (0110110)
+23 + -32 = -9 (1110111)
+23 + -31 = -8 (1111000)
+23 + -30 = -7 (1111001)
+23 + -29 = -6 (1111010)
+23 + -28 = -5 (1111011)
+23 + -27 = -4 (1111100)
+23 + -26 = -3 (1111101)
+23 + -25 = -2 (1111110)
+23 + -24 = -1 (1111111)
+23 + -23 = 0 (0000000)
+23 + -22 = 1 (0000001)
+23 + -21 = 2 (0000010)
+23 + -20 = 3 (0000011)
+23 + -19 = 4 (0000100)
+23 + -18 = 5 (0000101)
+23 + -17 = 6 (0000110)
+23 + -16 = 7 (0000111)
+23 + -15 = 8 (0001000)
+23 + -14 = 9 (0001001)
+23 + -13 = 10 (0001010)
+23 + -12 = 11 (0001011)
+23 + -11 = 12 (0001100)
+23 + -10 = 13 (0001101)
+23 + -9 = 14 (0001110)
+23 + -8 = 15 (0001111)
+23 + -7 = 16 (0010000)
+23 + -6 = 17 (0010001)
+23 + -5 = 18 (0010010)
+23 + -4 = 19 (0010011)
+23 + -3 = 20 (0010100)
+23 + -2 = 21 (0010101)
+23 + -1 = 22 (0010110)
+24 + 0 = 24 (0011000)
+24 + 1 = 25 (0011001)
+24 + 2 = 26 (0011010)
+24 + 3 = 27 (0011011)
+24 + 4 = 28 (0011100)
+24 + 5 = 29 (0011101)
+24 + 6 = 30 (0011110)
+24 + 7 = 31 (0011111)
+24 + 8 = 32 (0100000)
+24 + 9 = 33 (0100001)
+24 + 10 = 34 (0100010)
+24 + 11 = 35 (0100011)
+24 + 12 = 36 (0100100)
+24 + 13 = 37 (0100101)
+24 + 14 = 38 (0100110)
+24 + 15 = 39 (0100111)
+24 + 16 = 40 (0101000)
+24 + 17 = 41 (0101001)
+24 + 18 = 42 (0101010)
+24 + 19 = 43 (0101011)
+24 + 20 = 44 (0101100)
+24 + 21 = 45 (0101101)
+24 + 22 = 46 (0101110)
+24 + 23 = 47 (0101111)
+24 + 24 = 48 (0110000)
+24 + 25 = 49 (0110001)
+24 + 26 = 50 (0110010)
+24 + 27 = 51 (0110011)
+24 + 28 = 52 (0110100)
+24 + 29 = 53 (0110101)
+24 + 30 = 54 (0110110)
+24 + 31 = 55 (0110111)
+24 + -32 = -8 (1111000)
+24 + -31 = -7 (1111001)
+24 + -30 = -6 (1111010)
+24 + -29 = -5 (1111011)
+24 + -28 = -4 (1111100)
+24 + -27 = -3 (1111101)
+24 + -26 = -2 (1111110)
+24 + -25 = -1 (1111111)
+24 + -24 = 0 (0000000)
+24 + -23 = 1 (0000001)
+24 + -22 = 2 (0000010)
+24 + -21 = 3 (0000011)
+24 + -20 = 4 (0000100)
+24 + -19 = 5 (0000101)
+24 + -18 = 6 (0000110)
+24 + -17 = 7 (0000111)
+24 + -16 = 8 (0001000)
+24 + -15 = 9 (0001001)
+24 + -14 = 10 (0001010)
+24 + -13 = 11 (0001011)
+24 + -12 = 12 (0001100)
+24 + -11 = 13 (0001101)
+24 + -10 = 14 (0001110)
+24 + -9 = 15 (0001111)
+24 + -8 = 16 (0010000)
+24 + -7 = 17 (0010001)
+24 + -6 = 18 (0010010)
+24 + -5 = 19 (0010011)
+24 + -4 = 20 (0010100)
+24 + -3 = 21 (0010101)
+24 + -2 = 22 (0010110)
+24 + -1 = 23 (0010111)
+25 + 0 = 25 (0011001)
+25 + 1 = 26 (0011010)
+25 + 2 = 27 (0011011)
+25 + 3 = 28 (0011100)
+25 + 4 = 29 (0011101)
+25 + 5 = 30 (0011110)
+25 + 6 = 31 (0011111)
+25 + 7 = 32 (0100000)
+25 + 8 = 33 (0100001)
+25 + 9 = 34 (0100010)
+25 + 10 = 35 (0100011)
+25 + 11 = 36 (0100100)
+25 + 12 = 37 (0100101)
+25 + 13 = 38 (0100110)
+25 + 14 = 39 (0100111)
+25 + 15 = 40 (0101000)
+25 + 16 = 41 (0101001)
+25 + 17 = 42 (0101010)
+25 + 18 = 43 (0101011)
+25 + 19 = 44 (0101100)
+25 + 20 = 45 (0101101)
+25 + 21 = 46 (0101110)
+25 + 22 = 47 (0101111)
+25 + 23 = 48 (0110000)
+25 + 24 = 49 (0110001)
+25 + 25 = 50 (0110010)
+25 + 26 = 51 (0110011)
+25 + 27 = 52 (0110100)
+25 + 28 = 53 (0110101)
+25 + 29 = 54 (0110110)
+25 + 30 = 55 (0110111)
+25 + 31 = 56 (0111000)
+25 + -32 = -7 (1111001)
+25 + -31 = -6 (1111010)
+25 + -30 = -5 (1111011)
+25 + -29 = -4 (1111100)
+25 + -28 = -3 (1111101)
+25 + -27 = -2 (1111110)
+25 + -26 = -1 (1111111)
+25 + -25 = 0 (0000000)
+25 + -24 = 1 (0000001)
+25 + -23 = 2 (0000010)
+25 + -22 = 3 (0000011)
+25 + -21 = 4 (0000100)
+25 + -20 = 5 (0000101)
+25 + -19 = 6 (0000110)
+25 + -18 = 7 (0000111)
+25 + -17 = 8 (0001000)
+25 + -16 = 9 (0001001)
+25 + -15 = 10 (0001010)
+25 + -14 = 11 (0001011)
+25 + -13 = 12 (0001100)
+25 + -12 = 13 (0001101)
+25 + -11 = 14 (0001110)
+25 + -10 = 15 (0001111)
+25 + -9 = 16 (0010000)
+25 + -8 = 17 (0010001)
+25 + -7 = 18 (0010010)
+25 + -6 = 19 (0010011)
+25 + -5 = 20 (0010100)
+25 + -4 = 21 (0010101)
+25 + -3 = 22 (0010110)
+25 + -2 = 23 (0010111)
+25 + -1 = 24 (0011000)
+26 + 0 = 26 (0011010)
+26 + 1 = 27 (0011011)
+26 + 2 = 28 (0011100)
+26 + 3 = 29 (0011101)
+26 + 4 = 30 (0011110)
+26 + 5 = 31 (0011111)
+26 + 6 = 32 (0100000)
+26 + 7 = 33 (0100001)
+26 + 8 = 34 (0100010)
+26 + 9 = 35 (0100011)
+26 + 10 = 36 (0100100)
+26 + 11 = 37 (0100101)
+26 + 12 = 38 (0100110)
+26 + 13 = 39 (0100111)
+26 + 14 = 40 (0101000)
+26 + 15 = 41 (0101001)
+26 + 16 = 42 (0101010)
+26 + 17 = 43 (0101011)
+26 + 18 = 44 (0101100)
+26 + 19 = 45 (0101101)
+26 + 20 = 46 (0101110)
+26 + 21 = 47 (0101111)
+26 + 22 = 48 (0110000)
+26 + 23 = 49 (0110001)
+26 + 24 = 50 (0110010)
+26 + 25 = 51 (0110011)
+26 + 26 = 52 (0110100)
+26 + 27 = 53 (0110101)
+26 + 28 = 54 (0110110)
+26 + 29 = 55 (0110111)
+26 + 30 = 56 (0111000)
+26 + 31 = 57 (0111001)
+26 + -32 = -6 (1111010)
+26 + -31 = -5 (1111011)
+26 + -30 = -4 (1111100)
+26 + -29 = -3 (1111101)
+26 + -28 = -2 (1111110)
+26 + -27 = -1 (1111111)
+26 + -26 = 0 (0000000)
+26 + -25 = 1 (0000001)
+26 + -24 = 2 (0000010)
+26 + -23 = 3 (0000011)
+26 + -22 = 4 (0000100)
+26 + -21 = 5 (0000101)
+26 + -20 = 6 (0000110)
+26 + -19 = 7 (0000111)
+26 + -18 = 8 (0001000)
+26 + -17 = 9 (0001001)
+26 + -16 = 10 (0001010)
+26 + -15 = 11 (0001011)
+26 + -14 = 12 (0001100)
+26 + -13 = 13 (0001101)
+26 + -12 = 14 (0001110)
+26 + -11 = 15 (0001111)
+26 + -10 = 16 (0010000)
+26 + -9 = 17 (0010001)
+26 + -8 = 18 (0010010)
+26 + -7 = 19 (0010011)
+26 + -6 = 20 (0010100)
+26 + -5 = 21 (0010101)
+26 + -4 = 22 (0010110)
+26 + -3 = 23 (0010111)
+26 + -2 = 24 (0011000)
+26 + -1 = 25 (0011001)
+27 + 0 = 27 (0011011)
+27 + 1 = 28 (0011100)
+27 + 2 = 29 (0011101)
+27 + 3 = 30 (0011110)
+27 + 4 = 31 (0011111)
+27 + 5 = 32 (0100000)
+27 + 6 = 33 (0100001)
+27 + 7 = 34 (0100010)
+27 + 8 = 35 (0100011)
+27 + 9 = 36 (0100100)
+27 + 10 = 37 (0100101)
+27 + 11 = 38 (0100110)
+27 + 12 = 39 (0100111)
+27 + 13 = 40 (0101000)
+27 + 14 = 41 (0101001)
+27 + 15 = 42 (0101010)
+27 + 16 = 43 (0101011)
+27 + 17 = 44 (0101100)
+27 + 18 = 45 (0101101)
+27 + 19 = 46 (0101110)
+27 + 20 = 47 (0101111)
+27 + 21 = 48 (0110000)
+27 + 22 = 49 (0110001)
+27 + 23 = 50 (0110010)
+27 + 24 = 51 (0110011)
+27 + 25 = 52 (0110100)
+27 + 26 = 53 (0110101)
+27 + 27 = 54 (0110110)
+27 + 28 = 55 (0110111)
+27 + 29 = 56 (0111000)
+27 + 30 = 57 (0111001)
+27 + 31 = 58 (0111010)
+27 + -32 = -5 (1111011)
+27 + -31 = -4 (1111100)
+27 + -30 = -3 (1111101)
+27 + -29 = -2 (1111110)
+27 + -28 = -1 (1111111)
+27 + -27 = 0 (0000000)
+27 + -26 = 1 (0000001)
+27 + -25 = 2 (0000010)
+27 + -24 = 3 (0000011)
+27 + -23 = 4 (0000100)
+27 + -22 = 5 (0000101)
+27 + -21 = 6 (0000110)
+27 + -20 = 7 (0000111)
+27 + -19 = 8 (0001000)
+27 + -18 = 9 (0001001)
+27 + -17 = 10 (0001010)
+27 + -16 = 11 (0001011)
+27 + -15 = 12 (0001100)
+27 + -14 = 13 (0001101)
+27 + -13 = 14 (0001110)
+27 + -12 = 15 (0001111)
+27 + -11 = 16 (0010000)
+27 + -10 = 17 (0010001)
+27 + -9 = 18 (0010010)
+27 + -8 = 19 (0010011)
+27 + -7 = 20 (0010100)
+27 + -6 = 21 (0010101)
+27 + -5 = 22 (0010110)
+27 + -4 = 23 (0010111)
+27 + -3 = 24 (0011000)
+27 + -2 = 25 (0011001)
+27 + -1 = 26 (0011010)
+28 + 0 = 28 (0011100)
+28 + 1 = 29 (0011101)
+28 + 2 = 30 (0011110)
+28 + 3 = 31 (0011111)
+28 + 4 = 32 (0100000)
+28 + 5 = 33 (0100001)
+28 + 6 = 34 (0100010)
+28 + 7 = 35 (0100011)
+28 + 8 = 36 (0100100)
+28 + 9 = 37 (0100101)
+28 + 10 = 38 (0100110)
+28 + 11 = 39 (0100111)
+28 + 12 = 40 (0101000)
+28 + 13 = 41 (0101001)
+28 + 14 = 42 (0101010)
+28 + 15 = 43 (0101011)
+28 + 16 = 44 (0101100)
+28 + 17 = 45 (0101101)
+28 + 18 = 46 (0101110)
+28 + 19 = 47 (0101111)
+28 + 20 = 48 (0110000)
+28 + 21 = 49 (0110001)
+28 + 22 = 50 (0110010)
+28 + 23 = 51 (0110011)
+28 + 24 = 52 (0110100)
+28 + 25 = 53 (0110101)
+28 + 26 = 54 (0110110)
+28 + 27 = 55 (0110111)
+28 + 28 = 56 (0111000)
+28 + 29 = 57 (0111001)
+28 + 30 = 58 (0111010)
+28 + 31 = 59 (0111011)
+28 + -32 = -4 (1111100)
+28 + -31 = -3 (1111101)
+28 + -30 = -2 (1111110)
+28 + -29 = -1 (1111111)
+28 + -28 = 0 (0000000)
+28 + -27 = 1 (0000001)
+28 + -26 = 2 (0000010)
+28 + -25 = 3 (0000011)
+28 + -24 = 4 (0000100)
+28 + -23 = 5 (0000101)
+28 + -22 = 6 (0000110)
+28 + -21 = 7 (0000111)
+28 + -20 = 8 (0001000)
+28 + -19 = 9 (0001001)
+28 + -18 = 10 (0001010)
+28 + -17 = 11 (0001011)
+28 + -16 = 12 (0001100)
+28 + -15 = 13 (0001101)
+28 + -14 = 14 (0001110)
+28 + -13 = 15 (0001111)
+28 + -12 = 16 (0010000)
+28 + -11 = 17 (0010001)
+28 + -10 = 18 (0010010)
+28 + -9 = 19 (0010011)
+28 + -8 = 20 (0010100)
+28 + -7 = 21 (0010101)
+28 + -6 = 22 (0010110)
+28 + -5 = 23 (0010111)
+28 + -4 = 24 (0011000)
+28 + -3 = 25 (0011001)
+28 + -2 = 26 (0011010)
+28 + -1 = 27 (0011011)
+29 + 0 = 29 (0011101)
+29 + 1 = 30 (0011110)
+29 + 2 = 31 (0011111)
+29 + 3 = 32 (0100000)
+29 + 4 = 33 (0100001)
+29 + 5 = 34 (0100010)
+29 + 6 = 35 (0100011)
+29 + 7 = 36 (0100100)
+29 + 8 = 37 (0100101)
+29 + 9 = 38 (0100110)
+29 + 10 = 39 (0100111)
+29 + 11 = 40 (0101000)
+29 + 12 = 41 (0101001)
+29 + 13 = 42 (0101010)
+29 + 14 = 43 (0101011)
+29 + 15 = 44 (0101100)
+29 + 16 = 45 (0101101)
+29 + 17 = 46 (0101110)
+29 + 18 = 47 (0101111)
+29 + 19 = 48 (0110000)
+29 + 20 = 49 (0110001)
+29 + 21 = 50 (0110010)
+29 + 22 = 51 (0110011)
+29 + 23 = 52 (0110100)
+29 + 24 = 53 (0110101)
+29 + 25 = 54 (0110110)
+29 + 26 = 55 (0110111)
+29 + 27 = 56 (0111000)
+29 + 28 = 57 (0111001)
+29 + 29 = 58 (0111010)
+29 + 30 = 59 (0111011)
+29 + 31 = 60 (0111100)
+29 + -32 = -3 (1111101)
+29 + -31 = -2 (1111110)
+29 + -30 = -1 (1111111)
+29 + -29 = 0 (0000000)
+29 + -28 = 1 (0000001)
+29 + -27 = 2 (0000010)
+29 + -26 = 3 (0000011)
+29 + -25 = 4 (0000100)
+29 + -24 = 5 (0000101)
+29 + -23 = 6 (0000110)
+29 + -22 = 7 (0000111)
+29 + -21 = 8 (0001000)
+29 + -20 = 9 (0001001)
+29 + -19 = 10 (0001010)
+29 + -18 = 11 (0001011)
+29 + -17 = 12 (0001100)
+29 + -16 = 13 (0001101)
+29 + -15 = 14 (0001110)
+29 + -14 = 15 (0001111)
+29 + -13 = 16 (0010000)
+29 + -12 = 17 (0010001)
+29 + -11 = 18 (0010010)
+29 + -10 = 19 (0010011)
+29 + -9 = 20 (0010100)
+29 + -8 = 21 (0010101)
+29 + -7 = 22 (0010110)
+29 + -6 = 23 (0010111)
+29 + -5 = 24 (0011000)
+29 + -4 = 25 (0011001)
+29 + -3 = 26 (0011010)
+29 + -2 = 27 (0011011)
+29 + -1 = 28 (0011100)
+30 + 0 = 30 (0011110)
+30 + 1 = 31 (0011111)
+30 + 2 = 32 (0100000)
+30 + 3 = 33 (0100001)
+30 + 4 = 34 (0100010)
+30 + 5 = 35 (0100011)
+30 + 6 = 36 (0100100)
+30 + 7 = 37 (0100101)
+30 + 8 = 38 (0100110)
+30 + 9 = 39 (0100111)
+30 + 10 = 40 (0101000)
+30 + 11 = 41 (0101001)
+30 + 12 = 42 (0101010)
+30 + 13 = 43 (0101011)
+30 + 14 = 44 (0101100)
+30 + 15 = 45 (0101101)
+30 + 16 = 46 (0101110)
+30 + 17 = 47 (0101111)
+30 + 18 = 48 (0110000)
+30 + 19 = 49 (0110001)
+30 + 20 = 50 (0110010)
+30 + 21 = 51 (0110011)
+30 + 22 = 52 (0110100)
+30 + 23 = 53 (0110101)
+30 + 24 = 54 (0110110)
+30 + 25 = 55 (0110111)
+30 + 26 = 56 (0111000)
+30 + 27 = 57 (0111001)
+30 + 28 = 58 (0111010)
+30 + 29 = 59 (0111011)
+30 + 30 = 60 (0111100)
+30 + 31 = 61 (0111101)
+30 + -32 = -2 (1111110)
+30 + -31 = -1 (1111111)
+30 + -30 = 0 (0000000)
+30 + -29 = 1 (0000001)
+30 + -28 = 2 (0000010)
+30 + -27 = 3 (0000011)
+30 + -26 = 4 (0000100)
+30 + -25 = 5 (0000101)
+30 + -24 = 6 (0000110)
+30 + -23 = 7 (0000111)
+30 + -22 = 8 (0001000)
+30 + -21 = 9 (0001001)
+30 + -20 = 10 (0001010)
+30 + -19 = 11 (0001011)
+30 + -18 = 12 (0001100)
+30 + -17 = 13 (0001101)
+30 + -16 = 14 (0001110)
+30 + -15 = 15 (0001111)
+30 + -14 = 16 (0010000)
+30 + -13 = 17 (0010001)
+30 + -12 = 18 (0010010)
+30 + -11 = 19 (0010011)
+30 + -10 = 20 (0010100)
+30 + -9 = 21 (0010101)
+30 + -8 = 22 (0010110)
+30 + -7 = 23 (0010111)
+30 + -6 = 24 (0011000)
+30 + -5 = 25 (0011001)
+30 + -4 = 26 (0011010)
+30 + -3 = 27 (0011011)
+30 + -2 = 28 (0011100)
+30 + -1 = 29 (0011101)
+31 + 0 = 31 (0011111)
+31 + 1 = 32 (0100000)
+31 + 2 = 33 (0100001)
+31 + 3 = 34 (0100010)
+31 + 4 = 35 (0100011)
+31 + 5 = 36 (0100100)
+31 + 6 = 37 (0100101)
+31 + 7 = 38 (0100110)
+31 + 8 = 39 (0100111)
+31 + 9 = 40 (0101000)
+31 + 10 = 41 (0101001)
+31 + 11 = 42 (0101010)
+31 + 12 = 43 (0101011)
+31 + 13 = 44 (0101100)
+31 + 14 = 45 (0101101)
+31 + 15 = 46 (0101110)
+31 + 16 = 47 (0101111)
+31 + 17 = 48 (0110000)
+31 + 18 = 49 (0110001)
+31 + 19 = 50 (0110010)
+31 + 20 = 51 (0110011)
+31 + 21 = 52 (0110100)
+31 + 22 = 53 (0110101)
+31 + 23 = 54 (0110110)
+31 + 24 = 55 (0110111)
+31 + 25 = 56 (0111000)
+31 + 26 = 57 (0111001)
+31 + 27 = 58 (0111010)
+31 + 28 = 59 (0111011)
+31 + 29 = 60 (0111100)
+31 + 30 = 61 (0111101)
+31 + 31 = 62 (0111110)
+31 + -32 = -1 (1111111)
+31 + -31 = 0 (0000000)
+31 + -30 = 1 (0000001)
+31 + -29 = 2 (0000010)
+31 + -28 = 3 (0000011)
+31 + -27 = 4 (0000100)
+31 + -26 = 5 (0000101)
+31 + -25 = 6 (0000110)
+31 + -24 = 7 (0000111)
+31 + -23 = 8 (0001000)
+31 + -22 = 9 (0001001)
+31 + -21 = 10 (0001010)
+31 + -20 = 11 (0001011)
+31 + -19 = 12 (0001100)
+31 + -18 = 13 (0001101)
+31 + -17 = 14 (0001110)
+31 + -16 = 15 (0001111)
+31 + -15 = 16 (0010000)
+31 + -14 = 17 (0010001)
+31 + -13 = 18 (0010010)
+31 + -12 = 19 (0010011)
+31 + -11 = 20 (0010100)
+31 + -10 = 21 (0010101)
+31 + -9 = 22 (0010110)
+31 + -8 = 23 (0010111)
+31 + -7 = 24 (0011000)
+31 + -6 = 25 (0011001)
+31 + -5 = 26 (0011010)
+31 + -4 = 27 (0011011)
+31 + -3 = 28 (0011100)
+31 + -2 = 29 (0011101)
+31 + -1 = 30 (0011110)
+-32 + 0 = -32 (1100000)
+-32 + 1 = -31 (1100001)
+-32 + 2 = -30 (1100010)
+-32 + 3 = -29 (1100011)
+-32 + 4 = -28 (1100100)
+-32 + 5 = -27 (1100101)
+-32 + 6 = -26 (1100110)
+-32 + 7 = -25 (1100111)
+-32 + 8 = -24 (1101000)
+-32 + 9 = -23 (1101001)
+-32 + 10 = -22 (1101010)
+-32 + 11 = -21 (1101011)
+-32 + 12 = -20 (1101100)
+-32 + 13 = -19 (1101101)
+-32 + 14 = -18 (1101110)
+-32 + 15 = -17 (1101111)
+-32 + 16 = -16 (1110000)
+-32 + 17 = -15 (1110001)
+-32 + 18 = -14 (1110010)
+-32 + 19 = -13 (1110011)
+-32 + 20 = -12 (1110100)
+-32 + 21 = -11 (1110101)
+-32 + 22 = -10 (1110110)
+-32 + 23 = -9 (1110111)
+-32 + 24 = -8 (1111000)
+-32 + 25 = -7 (1111001)
+-32 + 26 = -6 (1111010)
+-32 + 27 = -5 (1111011)
+-32 + 28 = -4 (1111100)
+-32 + 29 = -3 (1111101)
+-32 + 30 = -2 (1111110)
+-32 + 31 = -1 (1111111)
+-32 + -32 = -64 (1000000)
+-32 + -31 = -63 (1000001)
+-32 + -30 = -62 (1000010)
+-32 + -29 = -61 (1000011)
+-32 + -28 = -60 (1000100)
+-32 + -27 = -59 (1000101)
+-32 + -26 = -58 (1000110)
+-32 + -25 = -57 (1000111)
+-32 + -24 = -56 (1001000)
+-32 + -23 = -55 (1001001)
+-32 + -22 = -54 (1001010)
+-32 + -21 = -53 (1001011)
+-32 + -20 = -52 (1001100)
+-32 + -19 = -51 (1001101)
+-32 + -18 = -50 (1001110)
+-32 + -17 = -49 (1001111)
+-32 + -16 = -48 (1010000)
+-32 + -15 = -47 (1010001)
+-32 + -14 = -46 (1010010)
+-32 + -13 = -45 (1010011)
+-32 + -12 = -44 (1010100)
+-32 + -11 = -43 (1010101)
+-32 + -10 = -42 (1010110)
+-32 + -9 = -41 (1010111)
+-32 + -8 = -40 (1011000)
+-32 + -7 = -39 (1011001)
+-32 + -6 = -38 (1011010)
+-32 + -5 = -37 (1011011)
+-32 + -4 = -36 (1011100)
+-32 + -3 = -35 (1011101)
+-32 + -2 = -34 (1011110)
+-32 + -1 = -33 (1011111)
+-31 + 0 = -31 (1100001)
+-31 + 1 = -30 (1100010)
+-31 + 2 = -29 (1100011)
+-31 + 3 = -28 (1100100)
+-31 + 4 = -27 (1100101)
+-31 + 5 = -26 (1100110)
+-31 + 6 = -25 (1100111)
+-31 + 7 = -24 (1101000)
+-31 + 8 = -23 (1101001)
+-31 + 9 = -22 (1101010)
+-31 + 10 = -21 (1101011)
+-31 + 11 = -20 (1101100)
+-31 + 12 = -19 (1101101)
+-31 + 13 = -18 (1101110)
+-31 + 14 = -17 (1101111)
+-31 + 15 = -16 (1110000)
+-31 + 16 = -15 (1110001)
+-31 + 17 = -14 (1110010)
+-31 + 18 = -13 (1110011)
+-31 + 19 = -12 (1110100)
+-31 + 20 = -11 (1110101)
+-31 + 21 = -10 (1110110)
+-31 + 22 = -9 (1110111)
+-31 + 23 = -8 (1111000)
+-31 + 24 = -7 (1111001)
+-31 + 25 = -6 (1111010)
+-31 + 26 = -5 (1111011)
+-31 + 27 = -4 (1111100)
+-31 + 28 = -3 (1111101)
+-31 + 29 = -2 (1111110)
+-31 + 30 = -1 (1111111)
+-31 + 31 = 0 (0000000)
+-31 + -32 = -63 (1000001)
+-31 + -31 = -62 (1000010)
+-31 + -30 = -61 (1000011)
+-31 + -29 = -60 (1000100)
+-31 + -28 = -59 (1000101)
+-31 + -27 = -58 (1000110)
+-31 + -26 = -57 (1000111)
+-31 + -25 = -56 (1001000)
+-31 + -24 = -55 (1001001)
+-31 + -23 = -54 (1001010)
+-31 + -22 = -53 (1001011)
+-31 + -21 = -52 (1001100)
+-31 + -20 = -51 (1001101)
+-31 + -19 = -50 (1001110)
+-31 + -18 = -49 (1001111)
+-31 + -17 = -48 (1010000)
+-31 + -16 = -47 (1010001)
+-31 + -15 = -46 (1010010)
+-31 + -14 = -45 (1010011)
+-31 + -13 = -44 (1010100)
+-31 + -12 = -43 (1010101)
+-31 + -11 = -42 (1010110)
+-31 + -10 = -41 (1010111)
+-31 + -9 = -40 (1011000)
+-31 + -8 = -39 (1011001)
+-31 + -7 = -38 (1011010)
+-31 + -6 = -37 (1011011)
+-31 + -5 = -36 (1011100)
+-31 + -4 = -35 (1011101)
+-31 + -3 = -34 (1011110)
+-31 + -2 = -33 (1011111)
+-31 + -1 = -32 (1100000)
+-30 + 0 = -30 (1100010)
+-30 + 1 = -29 (1100011)
+-30 + 2 = -28 (1100100)
+-30 + 3 = -27 (1100101)
+-30 + 4 = -26 (1100110)
+-30 + 5 = -25 (1100111)
+-30 + 6 = -24 (1101000)
+-30 + 7 = -23 (1101001)
+-30 + 8 = -22 (1101010)
+-30 + 9 = -21 (1101011)
+-30 + 10 = -20 (1101100)
+-30 + 11 = -19 (1101101)
+-30 + 12 = -18 (1101110)
+-30 + 13 = -17 (1101111)
+-30 + 14 = -16 (1110000)
+-30 + 15 = -15 (1110001)
+-30 + 16 = -14 (1110010)
+-30 + 17 = -13 (1110011)
+-30 + 18 = -12 (1110100)
+-30 + 19 = -11 (1110101)
+-30 + 20 = -10 (1110110)
+-30 + 21 = -9 (1110111)
+-30 + 22 = -8 (1111000)
+-30 + 23 = -7 (1111001)
+-30 + 24 = -6 (1111010)
+-30 + 25 = -5 (1111011)
+-30 + 26 = -4 (1111100)
+-30 + 27 = -3 (1111101)
+-30 + 28 = -2 (1111110)
+-30 + 29 = -1 (1111111)
+-30 + 30 = 0 (0000000)
+-30 + 31 = 1 (0000001)
+-30 + -32 = -62 (1000010)
+-30 + -31 = -61 (1000011)
+-30 + -30 = -60 (1000100)
+-30 + -29 = -59 (1000101)
+-30 + -28 = -58 (1000110)
+-30 + -27 = -57 (1000111)
+-30 + -26 = -56 (1001000)
+-30 + -25 = -55 (1001001)
+-30 + -24 = -54 (1001010)
+-30 + -23 = -53 (1001011)
+-30 + -22 = -52 (1001100)
+-30 + -21 = -51 (1001101)
+-30 + -20 = -50 (1001110)
+-30 + -19 = -49 (1001111)
+-30 + -18 = -48 (1010000)
+-30 + -17 = -47 (1010001)
+-30 + -16 = -46 (1010010)
+-30 + -15 = -45 (1010011)
+-30 + -14 = -44 (1010100)
+-30 + -13 = -43 (1010101)
+-30 + -12 = -42 (1010110)
+-30 + -11 = -41 (1010111)
+-30 + -10 = -40 (1011000)
+-30 + -9 = -39 (1011001)
+-30 + -8 = -38 (1011010)
+-30 + -7 = -37 (1011011)
+-30 + -6 = -36 (1011100)
+-30 + -5 = -35 (1011101)
+-30 + -4 = -34 (1011110)
+-30 + -3 = -33 (1011111)
+-30 + -2 = -32 (1100000)
+-30 + -1 = -31 (1100001)
+-29 + 0 = -29 (1100011)
+-29 + 1 = -28 (1100100)
+-29 + 2 = -27 (1100101)
+-29 + 3 = -26 (1100110)
+-29 + 4 = -25 (1100111)
+-29 + 5 = -24 (1101000)
+-29 + 6 = -23 (1101001)
+-29 + 7 = -22 (1101010)
+-29 + 8 = -21 (1101011)
+-29 + 9 = -20 (1101100)
+-29 + 10 = -19 (1101101)
+-29 + 11 = -18 (1101110)
+-29 + 12 = -17 (1101111)
+-29 + 13 = -16 (1110000)
+-29 + 14 = -15 (1110001)
+-29 + 15 = -14 (1110010)
+-29 + 16 = -13 (1110011)
+-29 + 17 = -12 (1110100)
+-29 + 18 = -11 (1110101)
+-29 + 19 = -10 (1110110)
+-29 + 20 = -9 (1110111)
+-29 + 21 = -8 (1111000)
+-29 + 22 = -7 (1111001)
+-29 + 23 = -6 (1111010)
+-29 + 24 = -5 (1111011)
+-29 + 25 = -4 (1111100)
+-29 + 26 = -3 (1111101)
+-29 + 27 = -2 (1111110)
+-29 + 28 = -1 (1111111)
+-29 + 29 = 0 (0000000)
+-29 + 30 = 1 (0000001)
+-29 + 31 = 2 (0000010)
+-29 + -32 = -61 (1000011)
+-29 + -31 = -60 (1000100)
+-29 + -30 = -59 (1000101)
+-29 + -29 = -58 (1000110)
+-29 + -28 = -57 (1000111)
+-29 + -27 = -56 (1001000)
+-29 + -26 = -55 (1001001)
+-29 + -25 = -54 (1001010)
+-29 + -24 = -53 (1001011)
+-29 + -23 = -52 (1001100)
+-29 + -22 = -51 (1001101)
+-29 + -21 = -50 (1001110)
+-29 + -20 = -49 (1001111)
+-29 + -19 = -48 (1010000)
+-29 + -18 = -47 (1010001)
+-29 + -17 = -46 (1010010)
+-29 + -16 = -45 (1010011)
+-29 + -15 = -44 (1010100)
+-29 + -14 = -43 (1010101)
+-29 + -13 = -42 (1010110)
+-29 + -12 = -41 (1010111)
+-29 + -11 = -40 (1011000)
+-29 + -10 = -39 (1011001)
+-29 + -9 = -38 (1011010)
+-29 + -8 = -37 (1011011)
+-29 + -7 = -36 (1011100)
+-29 + -6 = -35 (1011101)
+-29 + -5 = -34 (1011110)
+-29 + -4 = -33 (1011111)
+-29 + -3 = -32 (1100000)
+-29 + -2 = -31 (1100001)
+-29 + -1 = -30 (1100010)
+-28 + 0 = -28 (1100100)
+-28 + 1 = -27 (1100101)
+-28 + 2 = -26 (1100110)
+-28 + 3 = -25 (1100111)
+-28 + 4 = -24 (1101000)
+-28 + 5 = -23 (1101001)
+-28 + 6 = -22 (1101010)
+-28 + 7 = -21 (1101011)
+-28 + 8 = -20 (1101100)
+-28 + 9 = -19 (1101101)
+-28 + 10 = -18 (1101110)
+-28 + 11 = -17 (1101111)
+-28 + 12 = -16 (1110000)
+-28 + 13 = -15 (1110001)
+-28 + 14 = -14 (1110010)
+-28 + 15 = -13 (1110011)
+-28 + 16 = -12 (1110100)
+-28 + 17 = -11 (1110101)
+-28 + 18 = -10 (1110110)
+-28 + 19 = -9 (1110111)
+-28 + 20 = -8 (1111000)
+-28 + 21 = -7 (1111001)
+-28 + 22 = -6 (1111010)
+-28 + 23 = -5 (1111011)
+-28 + 24 = -4 (1111100)
+-28 + 25 = -3 (1111101)
+-28 + 26 = -2 (1111110)
+-28 + 27 = -1 (1111111)
+-28 + 28 = 0 (0000000)
+-28 + 29 = 1 (0000001)
+-28 + 30 = 2 (0000010)
+-28 + 31 = 3 (0000011)
+-28 + -32 = -60 (1000100)
+-28 + -31 = -59 (1000101)
+-28 + -30 = -58 (1000110)
+-28 + -29 = -57 (1000111)
+-28 + -28 = -56 (1001000)
+-28 + -27 = -55 (1001001)
+-28 + -26 = -54 (1001010)
+-28 + -25 = -53 (1001011)
+-28 + -24 = -52 (1001100)
+-28 + -23 = -51 (1001101)
+-28 + -22 = -50 (1001110)
+-28 + -21 = -49 (1001111)
+-28 + -20 = -48 (1010000)
+-28 + -19 = -47 (1010001)
+-28 + -18 = -46 (1010010)
+-28 + -17 = -45 (1010011)
+-28 + -16 = -44 (1010100)
+-28 + -15 = -43 (1010101)
+-28 + -14 = -42 (1010110)
+-28 + -13 = -41 (1010111)
+-28 + -12 = -40 (1011000)
+-28 + -11 = -39 (1011001)
+-28 + -10 = -38 (1011010)
+-28 + -9 = -37 (1011011)
+-28 + -8 = -36 (1011100)
+-28 + -7 = -35 (1011101)
+-28 + -6 = -34 (1011110)
+-28 + -5 = -33 (1011111)
+-28 + -4 = -32 (1100000)
+-28 + -3 = -31 (1100001)
+-28 + -2 = -30 (1100010)
+-28 + -1 = -29 (1100011)
+-27 + 0 = -27 (1100101)
+-27 + 1 = -26 (1100110)
+-27 + 2 = -25 (1100111)
+-27 + 3 = -24 (1101000)
+-27 + 4 = -23 (1101001)
+-27 + 5 = -22 (1101010)
+-27 + 6 = -21 (1101011)
+-27 + 7 = -20 (1101100)
+-27 + 8 = -19 (1101101)
+-27 + 9 = -18 (1101110)
+-27 + 10 = -17 (1101111)
+-27 + 11 = -16 (1110000)
+-27 + 12 = -15 (1110001)
+-27 + 13 = -14 (1110010)
+-27 + 14 = -13 (1110011)
+-27 + 15 = -12 (1110100)
+-27 + 16 = -11 (1110101)
+-27 + 17 = -10 (1110110)
+-27 + 18 = -9 (1110111)
+-27 + 19 = -8 (1111000)
+-27 + 20 = -7 (1111001)
+-27 + 21 = -6 (1111010)
+-27 + 22 = -5 (1111011)
+-27 + 23 = -4 (1111100)
+-27 + 24 = -3 (1111101)
+-27 + 25 = -2 (1111110)
+-27 + 26 = -1 (1111111)
+-27 + 27 = 0 (0000000)
+-27 + 28 = 1 (0000001)
+-27 + 29 = 2 (0000010)
+-27 + 30 = 3 (0000011)
+-27 + 31 = 4 (0000100)
+-27 + -32 = -59 (1000101)
+-27 + -31 = -58 (1000110)
+-27 + -30 = -57 (1000111)
+-27 + -29 = -56 (1001000)
+-27 + -28 = -55 (1001001)
+-27 + -27 = -54 (1001010)
+-27 + -26 = -53 (1001011)
+-27 + -25 = -52 (1001100)
+-27 + -24 = -51 (1001101)
+-27 + -23 = -50 (1001110)
+-27 + -22 = -49 (1001111)
+-27 + -21 = -48 (1010000)
+-27 + -20 = -47 (1010001)
+-27 + -19 = -46 (1010010)
+-27 + -18 = -45 (1010011)
+-27 + -17 = -44 (1010100)
+-27 + -16 = -43 (1010101)
+-27 + -15 = -42 (1010110)
+-27 + -14 = -41 (1010111)
+-27 + -13 = -40 (1011000)
+-27 + -12 = -39 (1011001)
+-27 + -11 = -38 (1011010)
+-27 + -10 = -37 (1011011)
+-27 + -9 = -36 (1011100)
+-27 + -8 = -35 (1011101)
+-27 + -7 = -34 (1011110)
+-27 + -6 = -33 (1011111)
+-27 + -5 = -32 (1100000)
+-27 + -4 = -31 (1100001)
+-27 + -3 = -30 (1100010)
+-27 + -2 = -29 (1100011)
+-27 + -1 = -28 (1100100)
+-26 + 0 = -26 (1100110)
+-26 + 1 = -25 (1100111)
+-26 + 2 = -24 (1101000)
+-26 + 3 = -23 (1101001)
+-26 + 4 = -22 (1101010)
+-26 + 5 = -21 (1101011)
+-26 + 6 = -20 (1101100)
+-26 + 7 = -19 (1101101)
+-26 + 8 = -18 (1101110)
+-26 + 9 = -17 (1101111)
+-26 + 10 = -16 (1110000)
+-26 + 11 = -15 (1110001)
+-26 + 12 = -14 (1110010)
+-26 + 13 = -13 (1110011)
+-26 + 14 = -12 (1110100)
+-26 + 15 = -11 (1110101)
+-26 + 16 = -10 (1110110)
+-26 + 17 = -9 (1110111)
+-26 + 18 = -8 (1111000)
+-26 + 19 = -7 (1111001)
+-26 + 20 = -6 (1111010)
+-26 + 21 = -5 (1111011)
+-26 + 22 = -4 (1111100)
+-26 + 23 = -3 (1111101)
+-26 + 24 = -2 (1111110)
+-26 + 25 = -1 (1111111)
+-26 + 26 = 0 (0000000)
+-26 + 27 = 1 (0000001)
+-26 + 28 = 2 (0000010)
+-26 + 29 = 3 (0000011)
+-26 + 30 = 4 (0000100)
+-26 + 31 = 5 (0000101)
+-26 + -32 = -58 (1000110)
+-26 + -31 = -57 (1000111)
+-26 + -30 = -56 (1001000)
+-26 + -29 = -55 (1001001)
+-26 + -28 = -54 (1001010)
+-26 + -27 = -53 (1001011)
+-26 + -26 = -52 (1001100)
+-26 + -25 = -51 (1001101)
+-26 + -24 = -50 (1001110)
+-26 + -23 = -49 (1001111)
+-26 + -22 = -48 (1010000)
+-26 + -21 = -47 (1010001)
+-26 + -20 = -46 (1010010)
+-26 + -19 = -45 (1010011)
+-26 + -18 = -44 (1010100)
+-26 + -17 = -43 (1010101)
+-26 + -16 = -42 (1010110)
+-26 + -15 = -41 (1010111)
+-26 + -14 = -40 (1011000)
+-26 + -13 = -39 (1011001)
+-26 + -12 = -38 (1011010)
+-26 + -11 = -37 (1011011)
+-26 + -10 = -36 (1011100)
+-26 + -9 = -35 (1011101)
+-26 + -8 = -34 (1011110)
+-26 + -7 = -33 (1011111)
+-26 + -6 = -32 (1100000)
+-26 + -5 = -31 (1100001)
+-26 + -4 = -30 (1100010)
+-26 + -3 = -29 (1100011)
+-26 + -2 = -28 (1100100)
+-26 + -1 = -27 (1100101)
+-25 + 0 = -25 (1100111)
+-25 + 1 = -24 (1101000)
+-25 + 2 = -23 (1101001)
+-25 + 3 = -22 (1101010)
+-25 + 4 = -21 (1101011)
+-25 + 5 = -20 (1101100)
+-25 + 6 = -19 (1101101)
+-25 + 7 = -18 (1101110)
+-25 + 8 = -17 (1101111)
+-25 + 9 = -16 (1110000)
+-25 + 10 = -15 (1110001)
+-25 + 11 = -14 (1110010)
+-25 + 12 = -13 (1110011)
+-25 + 13 = -12 (1110100)
+-25 + 14 = -11 (1110101)
+-25 + 15 = -10 (1110110)
+-25 + 16 = -9 (1110111)
+-25 + 17 = -8 (1111000)
+-25 + 18 = -7 (1111001)
+-25 + 19 = -6 (1111010)
+-25 + 20 = -5 (1111011)
+-25 + 21 = -4 (1111100)
+-25 + 22 = -3 (1111101)
+-25 + 23 = -2 (1111110)
+-25 + 24 = -1 (1111111)
+-25 + 25 = 0 (0000000)
+-25 + 26 = 1 (0000001)
+-25 + 27 = 2 (0000010)
+-25 + 28 = 3 (0000011)
+-25 + 29 = 4 (0000100)
+-25 + 30 = 5 (0000101)
+-25 + 31 = 6 (0000110)
+-25 + -32 = -57 (1000111)
+-25 + -31 = -56 (1001000)
+-25 + -30 = -55 (1001001)
+-25 + -29 = -54 (1001010)
+-25 + -28 = -53 (1001011)
+-25 + -27 = -52 (1001100)
+-25 + -26 = -51 (1001101)
+-25 + -25 = -50 (1001110)
+-25 + -24 = -49 (1001111)
+-25 + -23 = -48 (1010000)
+-25 + -22 = -47 (1010001)
+-25 + -21 = -46 (1010010)
+-25 + -20 = -45 (1010011)
+-25 + -19 = -44 (1010100)
+-25 + -18 = -43 (1010101)
+-25 + -17 = -42 (1010110)
+-25 + -16 = -41 (1010111)
+-25 + -15 = -40 (1011000)
+-25 + -14 = -39 (1011001)
+-25 + -13 = -38 (1011010)
+-25 + -12 = -37 (1011011)
+-25 + -11 = -36 (1011100)
+-25 + -10 = -35 (1011101)
+-25 + -9 = -34 (1011110)
+-25 + -8 = -33 (1011111)
+-25 + -7 = -32 (1100000)
+-25 + -6 = -31 (1100001)
+-25 + -5 = -30 (1100010)
+-25 + -4 = -29 (1100011)
+-25 + -3 = -28 (1100100)
+-25 + -2 = -27 (1100101)
+-25 + -1 = -26 (1100110)
+-24 + 0 = -24 (1101000)
+-24 + 1 = -23 (1101001)
+-24 + 2 = -22 (1101010)
+-24 + 3 = -21 (1101011)
+-24 + 4 = -20 (1101100)
+-24 + 5 = -19 (1101101)
+-24 + 6 = -18 (1101110)
+-24 + 7 = -17 (1101111)
+-24 + 8 = -16 (1110000)
+-24 + 9 = -15 (1110001)
+-24 + 10 = -14 (1110010)
+-24 + 11 = -13 (1110011)
+-24 + 12 = -12 (1110100)
+-24 + 13 = -11 (1110101)
+-24 + 14 = -10 (1110110)
+-24 + 15 = -9 (1110111)
+-24 + 16 = -8 (1111000)
+-24 + 17 = -7 (1111001)
+-24 + 18 = -6 (1111010)
+-24 + 19 = -5 (1111011)
+-24 + 20 = -4 (1111100)
+-24 + 21 = -3 (1111101)
+-24 + 22 = -2 (1111110)
+-24 + 23 = -1 (1111111)
+-24 + 24 = 0 (0000000)
+-24 + 25 = 1 (0000001)
+-24 + 26 = 2 (0000010)
+-24 + 27 = 3 (0000011)
+-24 + 28 = 4 (0000100)
+-24 + 29 = 5 (0000101)
+-24 + 30 = 6 (0000110)
+-24 + 31 = 7 (0000111)
+-24 + -32 = -56 (1001000)
+-24 + -31 = -55 (1001001)
+-24 + -30 = -54 (1001010)
+-24 + -29 = -53 (1001011)
+-24 + -28 = -52 (1001100)
+-24 + -27 = -51 (1001101)
+-24 + -26 = -50 (1001110)
+-24 + -25 = -49 (1001111)
+-24 + -24 = -48 (1010000)
+-24 + -23 = -47 (1010001)
+-24 + -22 = -46 (1010010)
+-24 + -21 = -45 (1010011)
+-24 + -20 = -44 (1010100)
+-24 + -19 = -43 (1010101)
+-24 + -18 = -42 (1010110)
+-24 + -17 = -41 (1010111)
+-24 + -16 = -40 (1011000)
+-24 + -15 = -39 (1011001)
+-24 + -14 = -38 (1011010)
+-24 + -13 = -37 (1011011)
+-24 + -12 = -36 (1011100)
+-24 + -11 = -35 (1011101)
+-24 + -10 = -34 (1011110)
+-24 + -9 = -33 (1011111)
+-24 + -8 = -32 (1100000)
+-24 + -7 = -31 (1100001)
+-24 + -6 = -30 (1100010)
+-24 + -5 = -29 (1100011)
+-24 + -4 = -28 (1100100)
+-24 + -3 = -27 (1100101)
+-24 + -2 = -26 (1100110)
+-24 + -1 = -25 (1100111)
+-23 + 0 = -23 (1101001)
+-23 + 1 = -22 (1101010)
+-23 + 2 = -21 (1101011)
+-23 + 3 = -20 (1101100)
+-23 + 4 = -19 (1101101)
+-23 + 5 = -18 (1101110)
+-23 + 6 = -17 (1101111)
+-23 + 7 = -16 (1110000)
+-23 + 8 = -15 (1110001)
+-23 + 9 = -14 (1110010)
+-23 + 10 = -13 (1110011)
+-23 + 11 = -12 (1110100)
+-23 + 12 = -11 (1110101)
+-23 + 13 = -10 (1110110)
+-23 + 14 = -9 (1110111)
+-23 + 15 = -8 (1111000)
+-23 + 16 = -7 (1111001)
+-23 + 17 = -6 (1111010)
+-23 + 18 = -5 (1111011)
+-23 + 19 = -4 (1111100)
+-23 + 20 = -3 (1111101)
+-23 + 21 = -2 (1111110)
+-23 + 22 = -1 (1111111)
+-23 + 23 = 0 (0000000)
+-23 + 24 = 1 (0000001)
+-23 + 25 = 2 (0000010)
+-23 + 26 = 3 (0000011)
+-23 + 27 = 4 (0000100)
+-23 + 28 = 5 (0000101)
+-23 + 29 = 6 (0000110)
+-23 + 30 = 7 (0000111)
+-23 + 31 = 8 (0001000)
+-23 + -32 = -55 (1001001)
+-23 + -31 = -54 (1001010)
+-23 + -30 = -53 (1001011)
+-23 + -29 = -52 (1001100)
+-23 + -28 = -51 (1001101)
+-23 + -27 = -50 (1001110)
+-23 + -26 = -49 (1001111)
+-23 + -25 = -48 (1010000)
+-23 + -24 = -47 (1010001)
+-23 + -23 = -46 (1010010)
+-23 + -22 = -45 (1010011)
+-23 + -21 = -44 (1010100)
+-23 + -20 = -43 (1010101)
+-23 + -19 = -42 (1010110)
+-23 + -18 = -41 (1010111)
+-23 + -17 = -40 (1011000)
+-23 + -16 = -39 (1011001)
+-23 + -15 = -38 (1011010)
+-23 + -14 = -37 (1011011)
+-23 + -13 = -36 (1011100)
+-23 + -12 = -35 (1011101)
+-23 + -11 = -34 (1011110)
+-23 + -10 = -33 (1011111)
+-23 + -9 = -32 (1100000)
+-23 + -8 = -31 (1100001)
+-23 + -7 = -30 (1100010)
+-23 + -6 = -29 (1100011)
+-23 + -5 = -28 (1100100)
+-23 + -4 = -27 (1100101)
+-23 + -3 = -26 (1100110)
+-23 + -2 = -25 (1100111)
+-23 + -1 = -24 (1101000)
+-22 + 0 = -22 (1101010)
+-22 + 1 = -21 (1101011)
+-22 + 2 = -20 (1101100)
+-22 + 3 = -19 (1101101)
+-22 + 4 = -18 (1101110)
+-22 + 5 = -17 (1101111)
+-22 + 6 = -16 (1110000)
+-22 + 7 = -15 (1110001)
+-22 + 8 = -14 (1110010)
+-22 + 9 = -13 (1110011)
+-22 + 10 = -12 (1110100)
+-22 + 11 = -11 (1110101)
+-22 + 12 = -10 (1110110)
+-22 + 13 = -9 (1110111)
+-22 + 14 = -8 (1111000)
+-22 + 15 = -7 (1111001)
+-22 + 16 = -6 (1111010)
+-22 + 17 = -5 (1111011)
+-22 + 18 = -4 (1111100)
+-22 + 19 = -3 (1111101)
+-22 + 20 = -2 (1111110)
+-22 + 21 = -1 (1111111)
+-22 + 22 = 0 (0000000)
+-22 + 23 = 1 (0000001)
+-22 + 24 = 2 (0000010)
+-22 + 25 = 3 (0000011)
+-22 + 26 = 4 (0000100)
+-22 + 27 = 5 (0000101)
+-22 + 28 = 6 (0000110)
+-22 + 29 = 7 (0000111)
+-22 + 30 = 8 (0001000)
+-22 + 31 = 9 (0001001)
+-22 + -32 = -54 (1001010)
+-22 + -31 = -53 (1001011)
+-22 + -30 = -52 (1001100)
+-22 + -29 = -51 (1001101)
+-22 + -28 = -50 (1001110)
+-22 + -27 = -49 (1001111)
+-22 + -26 = -48 (1010000)
+-22 + -25 = -47 (1010001)
+-22 + -24 = -46 (1010010)
+-22 + -23 = -45 (1010011)
+-22 + -22 = -44 (1010100)
+-22 + -21 = -43 (1010101)
+-22 + -20 = -42 (1010110)
+-22 + -19 = -41 (1010111)
+-22 + -18 = -40 (1011000)
+-22 + -17 = -39 (1011001)
+-22 + -16 = -38 (1011010)
+-22 + -15 = -37 (1011011)
+-22 + -14 = -36 (1011100)
+-22 + -13 = -35 (1011101)
+-22 + -12 = -34 (1011110)
+-22 + -11 = -33 (1011111)
+-22 + -10 = -32 (1100000)
+-22 + -9 = -31 (1100001)
+-22 + -8 = -30 (1100010)
+-22 + -7 = -29 (1100011)
+-22 + -6 = -28 (1100100)
+-22 + -5 = -27 (1100101)
+-22 + -4 = -26 (1100110)
+-22 + -3 = -25 (1100111)
+-22 + -2 = -24 (1101000)
+-22 + -1 = -23 (1101001)
+-21 + 0 = -21 (1101011)
+-21 + 1 = -20 (1101100)
+-21 + 2 = -19 (1101101)
+-21 + 3 = -18 (1101110)
+-21 + 4 = -17 (1101111)
+-21 + 5 = -16 (1110000)
+-21 + 6 = -15 (1110001)
+-21 + 7 = -14 (1110010)
+-21 + 8 = -13 (1110011)
+-21 + 9 = -12 (1110100)
+-21 + 10 = -11 (1110101)
+-21 + 11 = -10 (1110110)
+-21 + 12 = -9 (1110111)
+-21 + 13 = -8 (1111000)
+-21 + 14 = -7 (1111001)
+-21 + 15 = -6 (1111010)
+-21 + 16 = -5 (1111011)
+-21 + 17 = -4 (1111100)
+-21 + 18 = -3 (1111101)
+-21 + 19 = -2 (1111110)
+-21 + 20 = -1 (1111111)
+-21 + 21 = 0 (0000000)
+-21 + 22 = 1 (0000001)
+-21 + 23 = 2 (0000010)
+-21 + 24 = 3 (0000011)
+-21 + 25 = 4 (0000100)
+-21 + 26 = 5 (0000101)
+-21 + 27 = 6 (0000110)
+-21 + 28 = 7 (0000111)
+-21 + 29 = 8 (0001000)
+-21 + 30 = 9 (0001001)
+-21 + 31 = 10 (0001010)
+-21 + -32 = -53 (1001011)
+-21 + -31 = -52 (1001100)
+-21 + -30 = -51 (1001101)
+-21 + -29 = -50 (1001110)
+-21 + -28 = -49 (1001111)
+-21 + -27 = -48 (1010000)
+-21 + -26 = -47 (1010001)
+-21 + -25 = -46 (1010010)
+-21 + -24 = -45 (1010011)
+-21 + -23 = -44 (1010100)
+-21 + -22 = -43 (1010101)
+-21 + -21 = -42 (1010110)
+-21 + -20 = -41 (1010111)
+-21 + -19 = -40 (1011000)
+-21 + -18 = -39 (1011001)
+-21 + -17 = -38 (1011010)
+-21 + -16 = -37 (1011011)
+-21 + -15 = -36 (1011100)
+-21 + -14 = -35 (1011101)
+-21 + -13 = -34 (1011110)
+-21 + -12 = -33 (1011111)
+-21 + -11 = -32 (1100000)
+-21 + -10 = -31 (1100001)
+-21 + -9 = -30 (1100010)
+-21 + -8 = -29 (1100011)
+-21 + -7 = -28 (1100100)
+-21 + -6 = -27 (1100101)
+-21 + -5 = -26 (1100110)
+-21 + -4 = -25 (1100111)
+-21 + -3 = -24 (1101000)
+-21 + -2 = -23 (1101001)
+-21 + -1 = -22 (1101010)
+-20 + 0 = -20 (1101100)
+-20 + 1 = -19 (1101101)
+-20 + 2 = -18 (1101110)
+-20 + 3 = -17 (1101111)
+-20 + 4 = -16 (1110000)
+-20 + 5 = -15 (1110001)
+-20 + 6 = -14 (1110010)
+-20 + 7 = -13 (1110011)
+-20 + 8 = -12 (1110100)
+-20 + 9 = -11 (1110101)
+-20 + 10 = -10 (1110110)
+-20 + 11 = -9 (1110111)
+-20 + 12 = -8 (1111000)
+-20 + 13 = -7 (1111001)
+-20 + 14 = -6 (1111010)
+-20 + 15 = -5 (1111011)
+-20 + 16 = -4 (1111100)
+-20 + 17 = -3 (1111101)
+-20 + 18 = -2 (1111110)
+-20 + 19 = -1 (1111111)
+-20 + 20 = 0 (0000000)
+-20 + 21 = 1 (0000001)
+-20 + 22 = 2 (0000010)
+-20 + 23 = 3 (0000011)
+-20 + 24 = 4 (0000100)
+-20 + 25 = 5 (0000101)
+-20 + 26 = 6 (0000110)
+-20 + 27 = 7 (0000111)
+-20 + 28 = 8 (0001000)
+-20 + 29 = 9 (0001001)
+-20 + 30 = 10 (0001010)
+-20 + 31 = 11 (0001011)
+-20 + -32 = -52 (1001100)
+-20 + -31 = -51 (1001101)
+-20 + -30 = -50 (1001110)
+-20 + -29 = -49 (1001111)
+-20 + -28 = -48 (1010000)
+-20 + -27 = -47 (1010001)
+-20 + -26 = -46 (1010010)
+-20 + -25 = -45 (1010011)
+-20 + -24 = -44 (1010100)
+-20 + -23 = -43 (1010101)
+-20 + -22 = -42 (1010110)
+-20 + -21 = -41 (1010111)
+-20 + -20 = -40 (1011000)
+-20 + -19 = -39 (1011001)
+-20 + -18 = -38 (1011010)
+-20 + -17 = -37 (1011011)
+-20 + -16 = -36 (1011100)
+-20 + -15 = -35 (1011101)
+-20 + -14 = -34 (1011110)
+-20 + -13 = -33 (1011111)
+-20 + -12 = -32 (1100000)
+-20 + -11 = -31 (1100001)
+-20 + -10 = -30 (1100010)
+-20 + -9 = -29 (1100011)
+-20 + -8 = -28 (1100100)
+-20 + -7 = -27 (1100101)
+-20 + -6 = -26 (1100110)
+-20 + -5 = -25 (1100111)
+-20 + -4 = -24 (1101000)
+-20 + -3 = -23 (1101001)
+-20 + -2 = -22 (1101010)
+-20 + -1 = -21 (1101011)
+-19 + 0 = -19 (1101101)
+-19 + 1 = -18 (1101110)
+-19 + 2 = -17 (1101111)
+-19 + 3 = -16 (1110000)
+-19 + 4 = -15 (1110001)
+-19 + 5 = -14 (1110010)
+-19 + 6 = -13 (1110011)
+-19 + 7 = -12 (1110100)
+-19 + 8 = -11 (1110101)
+-19 + 9 = -10 (1110110)
+-19 + 10 = -9 (1110111)
+-19 + 11 = -8 (1111000)
+-19 + 12 = -7 (1111001)
+-19 + 13 = -6 (1111010)
+-19 + 14 = -5 (1111011)
+-19 + 15 = -4 (1111100)
+-19 + 16 = -3 (1111101)
+-19 + 17 = -2 (1111110)
+-19 + 18 = -1 (1111111)
+-19 + 19 = 0 (0000000)
+-19 + 20 = 1 (0000001)
+-19 + 21 = 2 (0000010)
+-19 + 22 = 3 (0000011)
+-19 + 23 = 4 (0000100)
+-19 + 24 = 5 (0000101)
+-19 + 25 = 6 (0000110)
+-19 + 26 = 7 (0000111)
+-19 + 27 = 8 (0001000)
+-19 + 28 = 9 (0001001)
+-19 + 29 = 10 (0001010)
+-19 + 30 = 11 (0001011)
+-19 + 31 = 12 (0001100)
+-19 + -32 = -51 (1001101)
+-19 + -31 = -50 (1001110)
+-19 + -30 = -49 (1001111)
+-19 + -29 = -48 (1010000)
+-19 + -28 = -47 (1010001)
+-19 + -27 = -46 (1010010)
+-19 + -26 = -45 (1010011)
+-19 + -25 = -44 (1010100)
+-19 + -24 = -43 (1010101)
+-19 + -23 = -42 (1010110)
+-19 + -22 = -41 (1010111)
+-19 + -21 = -40 (1011000)
+-19 + -20 = -39 (1011001)
+-19 + -19 = -38 (1011010)
+-19 + -18 = -37 (1011011)
+-19 + -17 = -36 (1011100)
+-19 + -16 = -35 (1011101)
+-19 + -15 = -34 (1011110)
+-19 + -14 = -33 (1011111)
+-19 + -13 = -32 (1100000)
+-19 + -12 = -31 (1100001)
+-19 + -11 = -30 (1100010)
+-19 + -10 = -29 (1100011)
+-19 + -9 = -28 (1100100)
+-19 + -8 = -27 (1100101)
+-19 + -7 = -26 (1100110)
+-19 + -6 = -25 (1100111)
+-19 + -5 = -24 (1101000)
+-19 + -4 = -23 (1101001)
+-19 + -3 = -22 (1101010)
+-19 + -2 = -21 (1101011)
+-19 + -1 = -20 (1101100)
+-18 + 0 = -18 (1101110)
+-18 + 1 = -17 (1101111)
+-18 + 2 = -16 (1110000)
+-18 + 3 = -15 (1110001)
+-18 + 4 = -14 (1110010)
+-18 + 5 = -13 (1110011)
+-18 + 6 = -12 (1110100)
+-18 + 7 = -11 (1110101)
+-18 + 8 = -10 (1110110)
+-18 + 9 = -9 (1110111)
+-18 + 10 = -8 (1111000)
+-18 + 11 = -7 (1111001)
+-18 + 12 = -6 (1111010)
+-18 + 13 = -5 (1111011)
+-18 + 14 = -4 (1111100)
+-18 + 15 = -3 (1111101)
+-18 + 16 = -2 (1111110)
+-18 + 17 = -1 (1111111)
+-18 + 18 = 0 (0000000)
+-18 + 19 = 1 (0000001)
+-18 + 20 = 2 (0000010)
+-18 + 21 = 3 (0000011)
+-18 + 22 = 4 (0000100)
+-18 + 23 = 5 (0000101)
+-18 + 24 = 6 (0000110)
+-18 + 25 = 7 (0000111)
+-18 + 26 = 8 (0001000)
+-18 + 27 = 9 (0001001)
+-18 + 28 = 10 (0001010)
+-18 + 29 = 11 (0001011)
+-18 + 30 = 12 (0001100)
+-18 + 31 = 13 (0001101)
+-18 + -32 = -50 (1001110)
+-18 + -31 = -49 (1001111)
+-18 + -30 = -48 (1010000)
+-18 + -29 = -47 (1010001)
+-18 + -28 = -46 (1010010)
+-18 + -27 = -45 (1010011)
+-18 + -26 = -44 (1010100)
+-18 + -25 = -43 (1010101)
+-18 + -24 = -42 (1010110)
+-18 + -23 = -41 (1010111)
+-18 + -22 = -40 (1011000)
+-18 + -21 = -39 (1011001)
+-18 + -20 = -38 (1011010)
+-18 + -19 = -37 (1011011)
+-18 + -18 = -36 (1011100)
+-18 + -17 = -35 (1011101)
+-18 + -16 = -34 (1011110)
+-18 + -15 = -33 (1011111)
+-18 + -14 = -32 (1100000)
+-18 + -13 = -31 (1100001)
+-18 + -12 = -30 (1100010)
+-18 + -11 = -29 (1100011)
+-18 + -10 = -28 (1100100)
+-18 + -9 = -27 (1100101)
+-18 + -8 = -26 (1100110)
+-18 + -7 = -25 (1100111)
+-18 + -6 = -24 (1101000)
+-18 + -5 = -23 (1101001)
+-18 + -4 = -22 (1101010)
+-18 + -3 = -21 (1101011)
+-18 + -2 = -20 (1101100)
+-18 + -1 = -19 (1101101)
+-17 + 0 = -17 (1101111)
+-17 + 1 = -16 (1110000)
+-17 + 2 = -15 (1110001)
+-17 + 3 = -14 (1110010)
+-17 + 4 = -13 (1110011)
+-17 + 5 = -12 (1110100)
+-17 + 6 = -11 (1110101)
+-17 + 7 = -10 (1110110)
+-17 + 8 = -9 (1110111)
+-17 + 9 = -8 (1111000)
+-17 + 10 = -7 (1111001)
+-17 + 11 = -6 (1111010)
+-17 + 12 = -5 (1111011)
+-17 + 13 = -4 (1111100)
+-17 + 14 = -3 (1111101)
+-17 + 15 = -2 (1111110)
+-17 + 16 = -1 (1111111)
+-17 + 17 = 0 (0000000)
+-17 + 18 = 1 (0000001)
+-17 + 19 = 2 (0000010)
+-17 + 20 = 3 (0000011)
+-17 + 21 = 4 (0000100)
+-17 + 22 = 5 (0000101)
+-17 + 23 = 6 (0000110)
+-17 + 24 = 7 (0000111)
+-17 + 25 = 8 (0001000)
+-17 + 26 = 9 (0001001)
+-17 + 27 = 10 (0001010)
+-17 + 28 = 11 (0001011)
+-17 + 29 = 12 (0001100)
+-17 + 30 = 13 (0001101)
+-17 + 31 = 14 (0001110)
+-17 + -32 = -49 (1001111)
+-17 + -31 = -48 (1010000)
+-17 + -30 = -47 (1010001)
+-17 + -29 = -46 (1010010)
+-17 + -28 = -45 (1010011)
+-17 + -27 = -44 (1010100)
+-17 + -26 = -43 (1010101)
+-17 + -25 = -42 (1010110)
+-17 + -24 = -41 (1010111)
+-17 + -23 = -40 (1011000)
+-17 + -22 = -39 (1011001)
+-17 + -21 = -38 (1011010)
+-17 + -20 = -37 (1011011)
+-17 + -19 = -36 (1011100)
+-17 + -18 = -35 (1011101)
+-17 + -17 = -34 (1011110)
+-17 + -16 = -33 (1011111)
+-17 + -15 = -32 (1100000)
+-17 + -14 = -31 (1100001)
+-17 + -13 = -30 (1100010)
+-17 + -12 = -29 (1100011)
+-17 + -11 = -28 (1100100)
+-17 + -10 = -27 (1100101)
+-17 + -9 = -26 (1100110)
+-17 + -8 = -25 (1100111)
+-17 + -7 = -24 (1101000)
+-17 + -6 = -23 (1101001)
+-17 + -5 = -22 (1101010)
+-17 + -4 = -21 (1101011)
+-17 + -3 = -20 (1101100)
+-17 + -2 = -19 (1101101)
+-17 + -1 = -18 (1101110)
+-16 + 0 = -16 (1110000)
+-16 + 1 = -15 (1110001)
+-16 + 2 = -14 (1110010)
+-16 + 3 = -13 (1110011)
+-16 + 4 = -12 (1110100)
+-16 + 5 = -11 (1110101)
+-16 + 6 = -10 (1110110)
+-16 + 7 = -9 (1110111)
+-16 + 8 = -8 (1111000)
+-16 + 9 = -7 (1111001)
+-16 + 10 = -6 (1111010)
+-16 + 11 = -5 (1111011)
+-16 + 12 = -4 (1111100)
+-16 + 13 = -3 (1111101)
+-16 + 14 = -2 (1111110)
+-16 + 15 = -1 (1111111)
+-16 + 16 = 0 (0000000)
+-16 + 17 = 1 (0000001)
+-16 + 18 = 2 (0000010)
+-16 + 19 = 3 (0000011)
+-16 + 20 = 4 (0000100)
+-16 + 21 = 5 (0000101)
+-16 + 22 = 6 (0000110)
+-16 + 23 = 7 (0000111)
+-16 + 24 = 8 (0001000)
+-16 + 25 = 9 (0001001)
+-16 + 26 = 10 (0001010)
+-16 + 27 = 11 (0001011)
+-16 + 28 = 12 (0001100)
+-16 + 29 = 13 (0001101)
+-16 + 30 = 14 (0001110)
+-16 + 31 = 15 (0001111)
+-16 + -32 = -48 (1010000)
+-16 + -31 = -47 (1010001)
+-16 + -30 = -46 (1010010)
+-16 + -29 = -45 (1010011)
+-16 + -28 = -44 (1010100)
+-16 + -27 = -43 (1010101)
+-16 + -26 = -42 (1010110)
+-16 + -25 = -41 (1010111)
+-16 + -24 = -40 (1011000)
+-16 + -23 = -39 (1011001)
+-16 + -22 = -38 (1011010)
+-16 + -21 = -37 (1011011)
+-16 + -20 = -36 (1011100)
+-16 + -19 = -35 (1011101)
+-16 + -18 = -34 (1011110)
+-16 + -17 = -33 (1011111)
+-16 + -16 = -32 (1100000)
+-16 + -15 = -31 (1100001)
+-16 + -14 = -30 (1100010)
+-16 + -13 = -29 (1100011)
+-16 + -12 = -28 (1100100)
+-16 + -11 = -27 (1100101)
+-16 + -10 = -26 (1100110)
+-16 + -9 = -25 (1100111)
+-16 + -8 = -24 (1101000)
+-16 + -7 = -23 (1101001)
+-16 + -6 = -22 (1101010)
+-16 + -5 = -21 (1101011)
+-16 + -4 = -20 (1101100)
+-16 + -3 = -19 (1101101)
+-16 + -2 = -18 (1101110)
+-16 + -1 = -17 (1101111)
+-15 + 0 = -15 (1110001)
+-15 + 1 = -14 (1110010)
+-15 + 2 = -13 (1110011)
+-15 + 3 = -12 (1110100)
+-15 + 4 = -11 (1110101)
+-15 + 5 = -10 (1110110)
+-15 + 6 = -9 (1110111)
+-15 + 7 = -8 (1111000)
+-15 + 8 = -7 (1111001)
+-15 + 9 = -6 (1111010)
+-15 + 10 = -5 (1111011)
+-15 + 11 = -4 (1111100)
+-15 + 12 = -3 (1111101)
+-15 + 13 = -2 (1111110)
+-15 + 14 = -1 (1111111)
+-15 + 15 = 0 (0000000)
+-15 + 16 = 1 (0000001)
+-15 + 17 = 2 (0000010)
+-15 + 18 = 3 (0000011)
+-15 + 19 = 4 (0000100)
+-15 + 20 = 5 (0000101)
+-15 + 21 = 6 (0000110)
+-15 + 22 = 7 (0000111)
+-15 + 23 = 8 (0001000)
+-15 + 24 = 9 (0001001)
+-15 + 25 = 10 (0001010)
+-15 + 26 = 11 (0001011)
+-15 + 27 = 12 (0001100)
+-15 + 28 = 13 (0001101)
+-15 + 29 = 14 (0001110)
+-15 + 30 = 15 (0001111)
+-15 + 31 = 16 (0010000)
+-15 + -32 = -47 (1010001)
+-15 + -31 = -46 (1010010)
+-15 + -30 = -45 (1010011)
+-15 + -29 = -44 (1010100)
+-15 + -28 = -43 (1010101)
+-15 + -27 = -42 (1010110)
+-15 + -26 = -41 (1010111)
+-15 + -25 = -40 (1011000)
+-15 + -24 = -39 (1011001)
+-15 + -23 = -38 (1011010)
+-15 + -22 = -37 (1011011)
+-15 + -21 = -36 (1011100)
+-15 + -20 = -35 (1011101)
+-15 + -19 = -34 (1011110)
+-15 + -18 = -33 (1011111)
+-15 + -17 = -32 (1100000)
+-15 + -16 = -31 (1100001)
+-15 + -15 = -30 (1100010)
+-15 + -14 = -29 (1100011)
+-15 + -13 = -28 (1100100)
+-15 + -12 = -27 (1100101)
+-15 + -11 = -26 (1100110)
+-15 + -10 = -25 (1100111)
+-15 + -9 = -24 (1101000)
+-15 + -8 = -23 (1101001)
+-15 + -7 = -22 (1101010)
+-15 + -6 = -21 (1101011)
+-15 + -5 = -20 (1101100)
+-15 + -4 = -19 (1101101)
+-15 + -3 = -18 (1101110)
+-15 + -2 = -17 (1101111)
+-15 + -1 = -16 (1110000)
+-14 + 0 = -14 (1110010)
+-14 + 1 = -13 (1110011)
+-14 + 2 = -12 (1110100)
+-14 + 3 = -11 (1110101)
+-14 + 4 = -10 (1110110)
+-14 + 5 = -9 (1110111)
+-14 + 6 = -8 (1111000)
+-14 + 7 = -7 (1111001)
+-14 + 8 = -6 (1111010)
+-14 + 9 = -5 (1111011)
+-14 + 10 = -4 (1111100)
+-14 + 11 = -3 (1111101)
+-14 + 12 = -2 (1111110)
+-14 + 13 = -1 (1111111)
+-14 + 14 = 0 (0000000)
+-14 + 15 = 1 (0000001)
+-14 + 16 = 2 (0000010)
+-14 + 17 = 3 (0000011)
+-14 + 18 = 4 (0000100)
+-14 + 19 = 5 (0000101)
+-14 + 20 = 6 (0000110)
+-14 + 21 = 7 (0000111)
+-14 + 22 = 8 (0001000)
+-14 + 23 = 9 (0001001)
+-14 + 24 = 10 (0001010)
+-14 + 25 = 11 (0001011)
+-14 + 26 = 12 (0001100)
+-14 + 27 = 13 (0001101)
+-14 + 28 = 14 (0001110)
+-14 + 29 = 15 (0001111)
+-14 + 30 = 16 (0010000)
+-14 + 31 = 17 (0010001)
+-14 + -32 = -46 (1010010)
+-14 + -31 = -45 (1010011)
+-14 + -30 = -44 (1010100)
+-14 + -29 = -43 (1010101)
+-14 + -28 = -42 (1010110)
+-14 + -27 = -41 (1010111)
+-14 + -26 = -40 (1011000)
+-14 + -25 = -39 (1011001)
+-14 + -24 = -38 (1011010)
+-14 + -23 = -37 (1011011)
+-14 + -22 = -36 (1011100)
+-14 + -21 = -35 (1011101)
+-14 + -20 = -34 (1011110)
+-14 + -19 = -33 (1011111)
+-14 + -18 = -32 (1100000)
+-14 + -17 = -31 (1100001)
+-14 + -16 = -30 (1100010)
+-14 + -15 = -29 (1100011)
+-14 + -14 = -28 (1100100)
+-14 + -13 = -27 (1100101)
+-14 + -12 = -26 (1100110)
+-14 + -11 = -25 (1100111)
+-14 + -10 = -24 (1101000)
+-14 + -9 = -23 (1101001)
+-14 + -8 = -22 (1101010)
+-14 + -7 = -21 (1101011)
+-14 + -6 = -20 (1101100)
+-14 + -5 = -19 (1101101)
+-14 + -4 = -18 (1101110)
+-14 + -3 = -17 (1101111)
+-14 + -2 = -16 (1110000)
+-14 + -1 = -15 (1110001)
+-13 + 0 = -13 (1110011)
+-13 + 1 = -12 (1110100)
+-13 + 2 = -11 (1110101)
+-13 + 3 = -10 (1110110)
+-13 + 4 = -9 (1110111)
+-13 + 5 = -8 (1111000)
+-13 + 6 = -7 (1111001)
+-13 + 7 = -6 (1111010)
+-13 + 8 = -5 (1111011)
+-13 + 9 = -4 (1111100)
+-13 + 10 = -3 (1111101)
+-13 + 11 = -2 (1111110)
+-13 + 12 = -1 (1111111)
+-13 + 13 = 0 (0000000)
+-13 + 14 = 1 (0000001)
+-13 + 15 = 2 (0000010)
+-13 + 16 = 3 (0000011)
+-13 + 17 = 4 (0000100)
+-13 + 18 = 5 (0000101)
+-13 + 19 = 6 (0000110)
+-13 + 20 = 7 (0000111)
+-13 + 21 = 8 (0001000)
+-13 + 22 = 9 (0001001)
+-13 + 23 = 10 (0001010)
+-13 + 24 = 11 (0001011)
+-13 + 25 = 12 (0001100)
+-13 + 26 = 13 (0001101)
+-13 + 27 = 14 (0001110)
+-13 + 28 = 15 (0001111)
+-13 + 29 = 16 (0010000)
+-13 + 30 = 17 (0010001)
+-13 + 31 = 18 (0010010)
+-13 + -32 = -45 (1010011)
+-13 + -31 = -44 (1010100)
+-13 + -30 = -43 (1010101)
+-13 + -29 = -42 (1010110)
+-13 + -28 = -41 (1010111)
+-13 + -27 = -40 (1011000)
+-13 + -26 = -39 (1011001)
+-13 + -25 = -38 (1011010)
+-13 + -24 = -37 (1011011)
+-13 + -23 = -36 (1011100)
+-13 + -22 = -35 (1011101)
+-13 + -21 = -34 (1011110)
+-13 + -20 = -33 (1011111)
+-13 + -19 = -32 (1100000)
+-13 + -18 = -31 (1100001)
+-13 + -17 = -30 (1100010)
+-13 + -16 = -29 (1100011)
+-13 + -15 = -28 (1100100)
+-13 + -14 = -27 (1100101)
+-13 + -13 = -26 (1100110)
+-13 + -12 = -25 (1100111)
+-13 + -11 = -24 (1101000)
+-13 + -10 = -23 (1101001)
+-13 + -9 = -22 (1101010)
+-13 + -8 = -21 (1101011)
+-13 + -7 = -20 (1101100)
+-13 + -6 = -19 (1101101)
+-13 + -5 = -18 (1101110)
+-13 + -4 = -17 (1101111)
+-13 + -3 = -16 (1110000)
+-13 + -2 = -15 (1110001)
+-13 + -1 = -14 (1110010)
+-12 + 0 = -12 (1110100)
+-12 + 1 = -11 (1110101)
+-12 + 2 = -10 (1110110)
+-12 + 3 = -9 (1110111)
+-12 + 4 = -8 (1111000)
+-12 + 5 = -7 (1111001)
+-12 + 6 = -6 (1111010)
+-12 + 7 = -5 (1111011)
+-12 + 8 = -4 (1111100)
+-12 + 9 = -3 (1111101)
+-12 + 10 = -2 (1111110)
+-12 + 11 = -1 (1111111)
+-12 + 12 = 0 (0000000)
+-12 + 13 = 1 (0000001)
+-12 + 14 = 2 (0000010)
+-12 + 15 = 3 (0000011)
+-12 + 16 = 4 (0000100)
+-12 + 17 = 5 (0000101)
+-12 + 18 = 6 (0000110)
+-12 + 19 = 7 (0000111)
+-12 + 20 = 8 (0001000)
+-12 + 21 = 9 (0001001)
+-12 + 22 = 10 (0001010)
+-12 + 23 = 11 (0001011)
+-12 + 24 = 12 (0001100)
+-12 + 25 = 13 (0001101)
+-12 + 26 = 14 (0001110)
+-12 + 27 = 15 (0001111)
+-12 + 28 = 16 (0010000)
+-12 + 29 = 17 (0010001)
+-12 + 30 = 18 (0010010)
+-12 + 31 = 19 (0010011)
+-12 + -32 = -44 (1010100)
+-12 + -31 = -43 (1010101)
+-12 + -30 = -42 (1010110)
+-12 + -29 = -41 (1010111)
+-12 + -28 = -40 (1011000)
+-12 + -27 = -39 (1011001)
+-12 + -26 = -38 (1011010)
+-12 + -25 = -37 (1011011)
+-12 + -24 = -36 (1011100)
+-12 + -23 = -35 (1011101)
+-12 + -22 = -34 (1011110)
+-12 + -21 = -33 (1011111)
+-12 + -20 = -32 (1100000)
+-12 + -19 = -31 (1100001)
+-12 + -18 = -30 (1100010)
+-12 + -17 = -29 (1100011)
+-12 + -16 = -28 (1100100)
+-12 + -15 = -27 (1100101)
+-12 + -14 = -26 (1100110)
+-12 + -13 = -25 (1100111)
+-12 + -12 = -24 (1101000)
+-12 + -11 = -23 (1101001)
+-12 + -10 = -22 (1101010)
+-12 + -9 = -21 (1101011)
+-12 + -8 = -20 (1101100)
+-12 + -7 = -19 (1101101)
+-12 + -6 = -18 (1101110)
+-12 + -5 = -17 (1101111)
+-12 + -4 = -16 (1110000)
+-12 + -3 = -15 (1110001)
+-12 + -2 = -14 (1110010)
+-12 + -1 = -13 (1110011)
+-11 + 0 = -11 (1110101)
+-11 + 1 = -10 (1110110)
+-11 + 2 = -9 (1110111)
+-11 + 3 = -8 (1111000)
+-11 + 4 = -7 (1111001)
+-11 + 5 = -6 (1111010)
+-11 + 6 = -5 (1111011)
+-11 + 7 = -4 (1111100)
+-11 + 8 = -3 (1111101)
+-11 + 9 = -2 (1111110)
+-11 + 10 = -1 (1111111)
+-11 + 11 = 0 (0000000)
+-11 + 12 = 1 (0000001)
+-11 + 13 = 2 (0000010)
+-11 + 14 = 3 (0000011)
+-11 + 15 = 4 (0000100)
+-11 + 16 = 5 (0000101)
+-11 + 17 = 6 (0000110)
+-11 + 18 = 7 (0000111)
+-11 + 19 = 8 (0001000)
+-11 + 20 = 9 (0001001)
+-11 + 21 = 10 (0001010)
+-11 + 22 = 11 (0001011)
+-11 + 23 = 12 (0001100)
+-11 + 24 = 13 (0001101)
+-11 + 25 = 14 (0001110)
+-11 + 26 = 15 (0001111)
+-11 + 27 = 16 (0010000)
+-11 + 28 = 17 (0010001)
+-11 + 29 = 18 (0010010)
+-11 + 30 = 19 (0010011)
+-11 + 31 = 20 (0010100)
+-11 + -32 = -43 (1010101)
+-11 + -31 = -42 (1010110)
+-11 + -30 = -41 (1010111)
+-11 + -29 = -40 (1011000)
+-11 + -28 = -39 (1011001)
+-11 + -27 = -38 (1011010)
+-11 + -26 = -37 (1011011)
+-11 + -25 = -36 (1011100)
+-11 + -24 = -35 (1011101)
+-11 + -23 = -34 (1011110)
+-11 + -22 = -33 (1011111)
+-11 + -21 = -32 (1100000)
+-11 + -20 = -31 (1100001)
+-11 + -19 = -30 (1100010)
+-11 + -18 = -29 (1100011)
+-11 + -17 = -28 (1100100)
+-11 + -16 = -27 (1100101)
+-11 + -15 = -26 (1100110)
+-11 + -14 = -25 (1100111)
+-11 + -13 = -24 (1101000)
+-11 + -12 = -23 (1101001)
+-11 + -11 = -22 (1101010)
+-11 + -10 = -21 (1101011)
+-11 + -9 = -20 (1101100)
+-11 + -8 = -19 (1101101)
+-11 + -7 = -18 (1101110)
+-11 + -6 = -17 (1101111)
+-11 + -5 = -16 (1110000)
+-11 + -4 = -15 (1110001)
+-11 + -3 = -14 (1110010)
+-11 + -2 = -13 (1110011)
+-11 + -1 = -12 (1110100)
+-10 + 0 = -10 (1110110)
+-10 + 1 = -9 (1110111)
+-10 + 2 = -8 (1111000)
+-10 + 3 = -7 (1111001)
+-10 + 4 = -6 (1111010)
+-10 + 5 = -5 (1111011)
+-10 + 6 = -4 (1111100)
+-10 + 7 = -3 (1111101)
+-10 + 8 = -2 (1111110)
+-10 + 9 = -1 (1111111)
+-10 + 10 = 0 (0000000)
+-10 + 11 = 1 (0000001)
+-10 + 12 = 2 (0000010)
+-10 + 13 = 3 (0000011)
+-10 + 14 = 4 (0000100)
+-10 + 15 = 5 (0000101)
+-10 + 16 = 6 (0000110)
+-10 + 17 = 7 (0000111)
+-10 + 18 = 8 (0001000)
+-10 + 19 = 9 (0001001)
+-10 + 20 = 10 (0001010)
+-10 + 21 = 11 (0001011)
+-10 + 22 = 12 (0001100)
+-10 + 23 = 13 (0001101)
+-10 + 24 = 14 (0001110)
+-10 + 25 = 15 (0001111)
+-10 + 26 = 16 (0010000)
+-10 + 27 = 17 (0010001)
+-10 + 28 = 18 (0010010)
+-10 + 29 = 19 (0010011)
+-10 + 30 = 20 (0010100)
+-10 + 31 = 21 (0010101)
+-10 + -32 = -42 (1010110)
+-10 + -31 = -41 (1010111)
+-10 + -30 = -40 (1011000)
+-10 + -29 = -39 (1011001)
+-10 + -28 = -38 (1011010)
+-10 + -27 = -37 (1011011)
+-10 + -26 = -36 (1011100)
+-10 + -25 = -35 (1011101)
+-10 + -24 = -34 (1011110)
+-10 + -23 = -33 (1011111)
+-10 + -22 = -32 (1100000)
+-10 + -21 = -31 (1100001)
+-10 + -20 = -30 (1100010)
+-10 + -19 = -29 (1100011)
+-10 + -18 = -28 (1100100)
+-10 + -17 = -27 (1100101)
+-10 + -16 = -26 (1100110)
+-10 + -15 = -25 (1100111)
+-10 + -14 = -24 (1101000)
+-10 + -13 = -23 (1101001)
+-10 + -12 = -22 (1101010)
+-10 + -11 = -21 (1101011)
+-10 + -10 = -20 (1101100)
+-10 + -9 = -19 (1101101)
+-10 + -8 = -18 (1101110)
+-10 + -7 = -17 (1101111)
+-10 + -6 = -16 (1110000)
+-10 + -5 = -15 (1110001)
+-10 + -4 = -14 (1110010)
+-10 + -3 = -13 (1110011)
+-10 + -2 = -12 (1110100)
+-10 + -1 = -11 (1110101)
+-9 + 0 = -9 (1110111)
+-9 + 1 = -8 (1111000)
+-9 + 2 = -7 (1111001)
+-9 + 3 = -6 (1111010)
+-9 + 4 = -5 (1111011)
+-9 + 5 = -4 (1111100)
+-9 + 6 = -3 (1111101)
+-9 + 7 = -2 (1111110)
+-9 + 8 = -1 (1111111)
+-9 + 9 = 0 (0000000)
+-9 + 10 = 1 (0000001)
+-9 + 11 = 2 (0000010)
+-9 + 12 = 3 (0000011)
+-9 + 13 = 4 (0000100)
+-9 + 14 = 5 (0000101)
+-9 + 15 = 6 (0000110)
+-9 + 16 = 7 (0000111)
+-9 + 17 = 8 (0001000)
+-9 + 18 = 9 (0001001)
+-9 + 19 = 10 (0001010)
+-9 + 20 = 11 (0001011)
+-9 + 21 = 12 (0001100)
+-9 + 22 = 13 (0001101)
+-9 + 23 = 14 (0001110)
+-9 + 24 = 15 (0001111)
+-9 + 25 = 16 (0010000)
+-9 + 26 = 17 (0010001)
+-9 + 27 = 18 (0010010)
+-9 + 28 = 19 (0010011)
+-9 + 29 = 20 (0010100)
+-9 + 30 = 21 (0010101)
+-9 + 31 = 22 (0010110)
+-9 + -32 = -41 (1010111)
+-9 + -31 = -40 (1011000)
+-9 + -30 = -39 (1011001)
+-9 + -29 = -38 (1011010)
+-9 + -28 = -37 (1011011)
+-9 + -27 = -36 (1011100)
+-9 + -26 = -35 (1011101)
+-9 + -25 = -34 (1011110)
+-9 + -24 = -33 (1011111)
+-9 + -23 = -32 (1100000)
+-9 + -22 = -31 (1100001)
+-9 + -21 = -30 (1100010)
+-9 + -20 = -29 (1100011)
+-9 + -19 = -28 (1100100)
+-9 + -18 = -27 (1100101)
+-9 + -17 = -26 (1100110)
+-9 + -16 = -25 (1100111)
+-9 + -15 = -24 (1101000)
+-9 + -14 = -23 (1101001)
+-9 + -13 = -22 (1101010)
+-9 + -12 = -21 (1101011)
+-9 + -11 = -20 (1101100)
+-9 + -10 = -19 (1101101)
+-9 + -9 = -18 (1101110)
+-9 + -8 = -17 (1101111)
+-9 + -7 = -16 (1110000)
+-9 + -6 = -15 (1110001)
+-9 + -5 = -14 (1110010)
+-9 + -4 = -13 (1110011)
+-9 + -3 = -12 (1110100)
+-9 + -2 = -11 (1110101)
+-9 + -1 = -10 (1110110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/main.cpp
new file mode 100644
index 000000000..c29f9b2b6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 7-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 7;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/stimgen.h
new file mode 100644
index 000000000..feeda4215
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/bits_to_bits/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector7& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector7& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/common.h
new file mode 100644
index 000000000..85b300c4d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<9> bool_vector9;
+
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+typedef sc_signal<bool_vector9> signal_bool_vector9;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/datawidth.cpp
new file mode 100644
index 000000000..7c5feb07b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector6 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector9 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_int() + tmp_b.to_int();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/datawidth.h
new file mode 100644
index 000000000..911b72c4f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector9& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector9& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/extension.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/extension.f
new file mode 100644
index 000000000..673123bd2
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/extension.f
@@ -0,0 +1,3 @@
+extension/datawidth.cpp
+extension/stimgen.cpp
+extension/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/golden/extension.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/golden/extension.log
new file mode 100644
index 000000000..e7488d162
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/golden/extension.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + -32 = -24 (111101000)
+8 + -31 = -23 (111101001)
+8 + -30 = -22 (111101010)
+8 + -29 = -21 (111101011)
+8 + -28 = -20 (111101100)
+8 + -27 = -19 (111101101)
+8 + -26 = -18 (111101110)
+8 + -25 = -17 (111101111)
+8 + -24 = -16 (111110000)
+8 + -23 = -15 (111110001)
+8 + -22 = -14 (111110010)
+8 + -21 = -13 (111110011)
+8 + -20 = -12 (111110100)
+8 + -19 = -11 (111110101)
+8 + -18 = -10 (111110110)
+8 + -17 = -9 (111110111)
+8 + -16 = -8 (111111000)
+8 + -15 = -7 (111111001)
+8 + -14 = -6 (111111010)
+8 + -13 = -5 (111111011)
+8 + -12 = -4 (111111100)
+8 + -11 = -3 (111111101)
+8 + -10 = -2 (111111110)
+8 + -9 = -1 (111111111)
+8 + -8 = 0 (000000000)
+8 + -7 = 1 (000000001)
+8 + -6 = 2 (000000010)
+8 + -5 = 3 (000000011)
+8 + -4 = 4 (000000100)
+8 + -3 = 5 (000000101)
+8 + -2 = 6 (000000110)
+8 + -1 = 7 (000000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + -32 = -23 (111101001)
+9 + -31 = -22 (111101010)
+9 + -30 = -21 (111101011)
+9 + -29 = -20 (111101100)
+9 + -28 = -19 (111101101)
+9 + -27 = -18 (111101110)
+9 + -26 = -17 (111101111)
+9 + -25 = -16 (111110000)
+9 + -24 = -15 (111110001)
+9 + -23 = -14 (111110010)
+9 + -22 = -13 (111110011)
+9 + -21 = -12 (111110100)
+9 + -20 = -11 (111110101)
+9 + -19 = -10 (111110110)
+9 + -18 = -9 (111110111)
+9 + -17 = -8 (111111000)
+9 + -16 = -7 (111111001)
+9 + -15 = -6 (111111010)
+9 + -14 = -5 (111111011)
+9 + -13 = -4 (111111100)
+9 + -12 = -3 (111111101)
+9 + -11 = -2 (111111110)
+9 + -10 = -1 (111111111)
+9 + -9 = 0 (000000000)
+9 + -8 = 1 (000000001)
+9 + -7 = 2 (000000010)
+9 + -6 = 3 (000000011)
+9 + -5 = 4 (000000100)
+9 + -4 = 5 (000000101)
+9 + -3 = 6 (000000110)
+9 + -2 = 7 (000000111)
+9 + -1 = 8 (000001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + -32 = -22 (111101010)
+10 + -31 = -21 (111101011)
+10 + -30 = -20 (111101100)
+10 + -29 = -19 (111101101)
+10 + -28 = -18 (111101110)
+10 + -27 = -17 (111101111)
+10 + -26 = -16 (111110000)
+10 + -25 = -15 (111110001)
+10 + -24 = -14 (111110010)
+10 + -23 = -13 (111110011)
+10 + -22 = -12 (111110100)
+10 + -21 = -11 (111110101)
+10 + -20 = -10 (111110110)
+10 + -19 = -9 (111110111)
+10 + -18 = -8 (111111000)
+10 + -17 = -7 (111111001)
+10 + -16 = -6 (111111010)
+10 + -15 = -5 (111111011)
+10 + -14 = -4 (111111100)
+10 + -13 = -3 (111111101)
+10 + -12 = -2 (111111110)
+10 + -11 = -1 (111111111)
+10 + -10 = 0 (000000000)
+10 + -9 = 1 (000000001)
+10 + -8 = 2 (000000010)
+10 + -7 = 3 (000000011)
+10 + -6 = 4 (000000100)
+10 + -5 = 5 (000000101)
+10 + -4 = 6 (000000110)
+10 + -3 = 7 (000000111)
+10 + -2 = 8 (000001000)
+10 + -1 = 9 (000001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + -32 = -21 (111101011)
+11 + -31 = -20 (111101100)
+11 + -30 = -19 (111101101)
+11 + -29 = -18 (111101110)
+11 + -28 = -17 (111101111)
+11 + -27 = -16 (111110000)
+11 + -26 = -15 (111110001)
+11 + -25 = -14 (111110010)
+11 + -24 = -13 (111110011)
+11 + -23 = -12 (111110100)
+11 + -22 = -11 (111110101)
+11 + -21 = -10 (111110110)
+11 + -20 = -9 (111110111)
+11 + -19 = -8 (111111000)
+11 + -18 = -7 (111111001)
+11 + -17 = -6 (111111010)
+11 + -16 = -5 (111111011)
+11 + -15 = -4 (111111100)
+11 + -14 = -3 (111111101)
+11 + -13 = -2 (111111110)
+11 + -12 = -1 (111111111)
+11 + -11 = 0 (000000000)
+11 + -10 = 1 (000000001)
+11 + -9 = 2 (000000010)
+11 + -8 = 3 (000000011)
+11 + -7 = 4 (000000100)
+11 + -6 = 5 (000000101)
+11 + -5 = 6 (000000110)
+11 + -4 = 7 (000000111)
+11 + -3 = 8 (000001000)
+11 + -2 = 9 (000001001)
+11 + -1 = 10 (000001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + -32 = -20 (111101100)
+12 + -31 = -19 (111101101)
+12 + -30 = -18 (111101110)
+12 + -29 = -17 (111101111)
+12 + -28 = -16 (111110000)
+12 + -27 = -15 (111110001)
+12 + -26 = -14 (111110010)
+12 + -25 = -13 (111110011)
+12 + -24 = -12 (111110100)
+12 + -23 = -11 (111110101)
+12 + -22 = -10 (111110110)
+12 + -21 = -9 (111110111)
+12 + -20 = -8 (111111000)
+12 + -19 = -7 (111111001)
+12 + -18 = -6 (111111010)
+12 + -17 = -5 (111111011)
+12 + -16 = -4 (111111100)
+12 + -15 = -3 (111111101)
+12 + -14 = -2 (111111110)
+12 + -13 = -1 (111111111)
+12 + -12 = 0 (000000000)
+12 + -11 = 1 (000000001)
+12 + -10 = 2 (000000010)
+12 + -9 = 3 (000000011)
+12 + -8 = 4 (000000100)
+12 + -7 = 5 (000000101)
+12 + -6 = 6 (000000110)
+12 + -5 = 7 (000000111)
+12 + -4 = 8 (000001000)
+12 + -3 = 9 (000001001)
+12 + -2 = 10 (000001010)
+12 + -1 = 11 (000001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + -32 = -19 (111101101)
+13 + -31 = -18 (111101110)
+13 + -30 = -17 (111101111)
+13 + -29 = -16 (111110000)
+13 + -28 = -15 (111110001)
+13 + -27 = -14 (111110010)
+13 + -26 = -13 (111110011)
+13 + -25 = -12 (111110100)
+13 + -24 = -11 (111110101)
+13 + -23 = -10 (111110110)
+13 + -22 = -9 (111110111)
+13 + -21 = -8 (111111000)
+13 + -20 = -7 (111111001)
+13 + -19 = -6 (111111010)
+13 + -18 = -5 (111111011)
+13 + -17 = -4 (111111100)
+13 + -16 = -3 (111111101)
+13 + -15 = -2 (111111110)
+13 + -14 = -1 (111111111)
+13 + -13 = 0 (000000000)
+13 + -12 = 1 (000000001)
+13 + -11 = 2 (000000010)
+13 + -10 = 3 (000000011)
+13 + -9 = 4 (000000100)
+13 + -8 = 5 (000000101)
+13 + -7 = 6 (000000110)
+13 + -6 = 7 (000000111)
+13 + -5 = 8 (000001000)
+13 + -4 = 9 (000001001)
+13 + -3 = 10 (000001010)
+13 + -2 = 11 (000001011)
+13 + -1 = 12 (000001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + -32 = -18 (111101110)
+14 + -31 = -17 (111101111)
+14 + -30 = -16 (111110000)
+14 + -29 = -15 (111110001)
+14 + -28 = -14 (111110010)
+14 + -27 = -13 (111110011)
+14 + -26 = -12 (111110100)
+14 + -25 = -11 (111110101)
+14 + -24 = -10 (111110110)
+14 + -23 = -9 (111110111)
+14 + -22 = -8 (111111000)
+14 + -21 = -7 (111111001)
+14 + -20 = -6 (111111010)
+14 + -19 = -5 (111111011)
+14 + -18 = -4 (111111100)
+14 + -17 = -3 (111111101)
+14 + -16 = -2 (111111110)
+14 + -15 = -1 (111111111)
+14 + -14 = 0 (000000000)
+14 + -13 = 1 (000000001)
+14 + -12 = 2 (000000010)
+14 + -11 = 3 (000000011)
+14 + -10 = 4 (000000100)
+14 + -9 = 5 (000000101)
+14 + -8 = 6 (000000110)
+14 + -7 = 7 (000000111)
+14 + -6 = 8 (000001000)
+14 + -5 = 9 (000001001)
+14 + -4 = 10 (000001010)
+14 + -3 = 11 (000001011)
+14 + -2 = 12 (000001100)
+14 + -1 = 13 (000001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + -32 = -17 (111101111)
+15 + -31 = -16 (111110000)
+15 + -30 = -15 (111110001)
+15 + -29 = -14 (111110010)
+15 + -28 = -13 (111110011)
+15 + -27 = -12 (111110100)
+15 + -26 = -11 (111110101)
+15 + -25 = -10 (111110110)
+15 + -24 = -9 (111110111)
+15 + -23 = -8 (111111000)
+15 + -22 = -7 (111111001)
+15 + -21 = -6 (111111010)
+15 + -20 = -5 (111111011)
+15 + -19 = -4 (111111100)
+15 + -18 = -3 (111111101)
+15 + -17 = -2 (111111110)
+15 + -16 = -1 (111111111)
+15 + -15 = 0 (000000000)
+15 + -14 = 1 (000000001)
+15 + -13 = 2 (000000010)
+15 + -12 = 3 (000000011)
+15 + -11 = 4 (000000100)
+15 + -10 = 5 (000000101)
+15 + -9 = 6 (000000110)
+15 + -8 = 7 (000000111)
+15 + -7 = 8 (000001000)
+15 + -6 = 9 (000001001)
+15 + -5 = 10 (000001010)
+15 + -4 = 11 (000001011)
+15 + -3 = 12 (000001100)
+15 + -2 = 13 (000001101)
+15 + -1 = 14 (000001110)
+16 + 0 = 16 (000010000)
+16 + 1 = 17 (000010001)
+16 + 2 = 18 (000010010)
+16 + 3 = 19 (000010011)
+16 + 4 = 20 (000010100)
+16 + 5 = 21 (000010101)
+16 + 6 = 22 (000010110)
+16 + 7 = 23 (000010111)
+16 + 8 = 24 (000011000)
+16 + 9 = 25 (000011001)
+16 + 10 = 26 (000011010)
+16 + 11 = 27 (000011011)
+16 + 12 = 28 (000011100)
+16 + 13 = 29 (000011101)
+16 + 14 = 30 (000011110)
+16 + 15 = 31 (000011111)
+16 + 16 = 32 (000100000)
+16 + 17 = 33 (000100001)
+16 + 18 = 34 (000100010)
+16 + 19 = 35 (000100011)
+16 + 20 = 36 (000100100)
+16 + 21 = 37 (000100101)
+16 + 22 = 38 (000100110)
+16 + 23 = 39 (000100111)
+16 + 24 = 40 (000101000)
+16 + 25 = 41 (000101001)
+16 + 26 = 42 (000101010)
+16 + 27 = 43 (000101011)
+16 + 28 = 44 (000101100)
+16 + 29 = 45 (000101101)
+16 + 30 = 46 (000101110)
+16 + 31 = 47 (000101111)
+16 + -32 = -16 (111110000)
+16 + -31 = -15 (111110001)
+16 + -30 = -14 (111110010)
+16 + -29 = -13 (111110011)
+16 + -28 = -12 (111110100)
+16 + -27 = -11 (111110101)
+16 + -26 = -10 (111110110)
+16 + -25 = -9 (111110111)
+16 + -24 = -8 (111111000)
+16 + -23 = -7 (111111001)
+16 + -22 = -6 (111111010)
+16 + -21 = -5 (111111011)
+16 + -20 = -4 (111111100)
+16 + -19 = -3 (111111101)
+16 + -18 = -2 (111111110)
+16 + -17 = -1 (111111111)
+16 + -16 = 0 (000000000)
+16 + -15 = 1 (000000001)
+16 + -14 = 2 (000000010)
+16 + -13 = 3 (000000011)
+16 + -12 = 4 (000000100)
+16 + -11 = 5 (000000101)
+16 + -10 = 6 (000000110)
+16 + -9 = 7 (000000111)
+16 + -8 = 8 (000001000)
+16 + -7 = 9 (000001001)
+16 + -6 = 10 (000001010)
+16 + -5 = 11 (000001011)
+16 + -4 = 12 (000001100)
+16 + -3 = 13 (000001101)
+16 + -2 = 14 (000001110)
+16 + -1 = 15 (000001111)
+17 + 0 = 17 (000010001)
+17 + 1 = 18 (000010010)
+17 + 2 = 19 (000010011)
+17 + 3 = 20 (000010100)
+17 + 4 = 21 (000010101)
+17 + 5 = 22 (000010110)
+17 + 6 = 23 (000010111)
+17 + 7 = 24 (000011000)
+17 + 8 = 25 (000011001)
+17 + 9 = 26 (000011010)
+17 + 10 = 27 (000011011)
+17 + 11 = 28 (000011100)
+17 + 12 = 29 (000011101)
+17 + 13 = 30 (000011110)
+17 + 14 = 31 (000011111)
+17 + 15 = 32 (000100000)
+17 + 16 = 33 (000100001)
+17 + 17 = 34 (000100010)
+17 + 18 = 35 (000100011)
+17 + 19 = 36 (000100100)
+17 + 20 = 37 (000100101)
+17 + 21 = 38 (000100110)
+17 + 22 = 39 (000100111)
+17 + 23 = 40 (000101000)
+17 + 24 = 41 (000101001)
+17 + 25 = 42 (000101010)
+17 + 26 = 43 (000101011)
+17 + 27 = 44 (000101100)
+17 + 28 = 45 (000101101)
+17 + 29 = 46 (000101110)
+17 + 30 = 47 (000101111)
+17 + 31 = 48 (000110000)
+17 + -32 = -15 (111110001)
+17 + -31 = -14 (111110010)
+17 + -30 = -13 (111110011)
+17 + -29 = -12 (111110100)
+17 + -28 = -11 (111110101)
+17 + -27 = -10 (111110110)
+17 + -26 = -9 (111110111)
+17 + -25 = -8 (111111000)
+17 + -24 = -7 (111111001)
+17 + -23 = -6 (111111010)
+17 + -22 = -5 (111111011)
+17 + -21 = -4 (111111100)
+17 + -20 = -3 (111111101)
+17 + -19 = -2 (111111110)
+17 + -18 = -1 (111111111)
+17 + -17 = 0 (000000000)
+17 + -16 = 1 (000000001)
+17 + -15 = 2 (000000010)
+17 + -14 = 3 (000000011)
+17 + -13 = 4 (000000100)
+17 + -12 = 5 (000000101)
+17 + -11 = 6 (000000110)
+17 + -10 = 7 (000000111)
+17 + -9 = 8 (000001000)
+17 + -8 = 9 (000001001)
+17 + -7 = 10 (000001010)
+17 + -6 = 11 (000001011)
+17 + -5 = 12 (000001100)
+17 + -4 = 13 (000001101)
+17 + -3 = 14 (000001110)
+17 + -2 = 15 (000001111)
+17 + -1 = 16 (000010000)
+18 + 0 = 18 (000010010)
+18 + 1 = 19 (000010011)
+18 + 2 = 20 (000010100)
+18 + 3 = 21 (000010101)
+18 + 4 = 22 (000010110)
+18 + 5 = 23 (000010111)
+18 + 6 = 24 (000011000)
+18 + 7 = 25 (000011001)
+18 + 8 = 26 (000011010)
+18 + 9 = 27 (000011011)
+18 + 10 = 28 (000011100)
+18 + 11 = 29 (000011101)
+18 + 12 = 30 (000011110)
+18 + 13 = 31 (000011111)
+18 + 14 = 32 (000100000)
+18 + 15 = 33 (000100001)
+18 + 16 = 34 (000100010)
+18 + 17 = 35 (000100011)
+18 + 18 = 36 (000100100)
+18 + 19 = 37 (000100101)
+18 + 20 = 38 (000100110)
+18 + 21 = 39 (000100111)
+18 + 22 = 40 (000101000)
+18 + 23 = 41 (000101001)
+18 + 24 = 42 (000101010)
+18 + 25 = 43 (000101011)
+18 + 26 = 44 (000101100)
+18 + 27 = 45 (000101101)
+18 + 28 = 46 (000101110)
+18 + 29 = 47 (000101111)
+18 + 30 = 48 (000110000)
+18 + 31 = 49 (000110001)
+18 + -32 = -14 (111110010)
+18 + -31 = -13 (111110011)
+18 + -30 = -12 (111110100)
+18 + -29 = -11 (111110101)
+18 + -28 = -10 (111110110)
+18 + -27 = -9 (111110111)
+18 + -26 = -8 (111111000)
+18 + -25 = -7 (111111001)
+18 + -24 = -6 (111111010)
+18 + -23 = -5 (111111011)
+18 + -22 = -4 (111111100)
+18 + -21 = -3 (111111101)
+18 + -20 = -2 (111111110)
+18 + -19 = -1 (111111111)
+18 + -18 = 0 (000000000)
+18 + -17 = 1 (000000001)
+18 + -16 = 2 (000000010)
+18 + -15 = 3 (000000011)
+18 + -14 = 4 (000000100)
+18 + -13 = 5 (000000101)
+18 + -12 = 6 (000000110)
+18 + -11 = 7 (000000111)
+18 + -10 = 8 (000001000)
+18 + -9 = 9 (000001001)
+18 + -8 = 10 (000001010)
+18 + -7 = 11 (000001011)
+18 + -6 = 12 (000001100)
+18 + -5 = 13 (000001101)
+18 + -4 = 14 (000001110)
+18 + -3 = 15 (000001111)
+18 + -2 = 16 (000010000)
+18 + -1 = 17 (000010001)
+19 + 0 = 19 (000010011)
+19 + 1 = 20 (000010100)
+19 + 2 = 21 (000010101)
+19 + 3 = 22 (000010110)
+19 + 4 = 23 (000010111)
+19 + 5 = 24 (000011000)
+19 + 6 = 25 (000011001)
+19 + 7 = 26 (000011010)
+19 + 8 = 27 (000011011)
+19 + 9 = 28 (000011100)
+19 + 10 = 29 (000011101)
+19 + 11 = 30 (000011110)
+19 + 12 = 31 (000011111)
+19 + 13 = 32 (000100000)
+19 + 14 = 33 (000100001)
+19 + 15 = 34 (000100010)
+19 + 16 = 35 (000100011)
+19 + 17 = 36 (000100100)
+19 + 18 = 37 (000100101)
+19 + 19 = 38 (000100110)
+19 + 20 = 39 (000100111)
+19 + 21 = 40 (000101000)
+19 + 22 = 41 (000101001)
+19 + 23 = 42 (000101010)
+19 + 24 = 43 (000101011)
+19 + 25 = 44 (000101100)
+19 + 26 = 45 (000101101)
+19 + 27 = 46 (000101110)
+19 + 28 = 47 (000101111)
+19 + 29 = 48 (000110000)
+19 + 30 = 49 (000110001)
+19 + 31 = 50 (000110010)
+19 + -32 = -13 (111110011)
+19 + -31 = -12 (111110100)
+19 + -30 = -11 (111110101)
+19 + -29 = -10 (111110110)
+19 + -28 = -9 (111110111)
+19 + -27 = -8 (111111000)
+19 + -26 = -7 (111111001)
+19 + -25 = -6 (111111010)
+19 + -24 = -5 (111111011)
+19 + -23 = -4 (111111100)
+19 + -22 = -3 (111111101)
+19 + -21 = -2 (111111110)
+19 + -20 = -1 (111111111)
+19 + -19 = 0 (000000000)
+19 + -18 = 1 (000000001)
+19 + -17 = 2 (000000010)
+19 + -16 = 3 (000000011)
+19 + -15 = 4 (000000100)
+19 + -14 = 5 (000000101)
+19 + -13 = 6 (000000110)
+19 + -12 = 7 (000000111)
+19 + -11 = 8 (000001000)
+19 + -10 = 9 (000001001)
+19 + -9 = 10 (000001010)
+19 + -8 = 11 (000001011)
+19 + -7 = 12 (000001100)
+19 + -6 = 13 (000001101)
+19 + -5 = 14 (000001110)
+19 + -4 = 15 (000001111)
+19 + -3 = 16 (000010000)
+19 + -2 = 17 (000010001)
+19 + -1 = 18 (000010010)
+20 + 0 = 20 (000010100)
+20 + 1 = 21 (000010101)
+20 + 2 = 22 (000010110)
+20 + 3 = 23 (000010111)
+20 + 4 = 24 (000011000)
+20 + 5 = 25 (000011001)
+20 + 6 = 26 (000011010)
+20 + 7 = 27 (000011011)
+20 + 8 = 28 (000011100)
+20 + 9 = 29 (000011101)
+20 + 10 = 30 (000011110)
+20 + 11 = 31 (000011111)
+20 + 12 = 32 (000100000)
+20 + 13 = 33 (000100001)
+20 + 14 = 34 (000100010)
+20 + 15 = 35 (000100011)
+20 + 16 = 36 (000100100)
+20 + 17 = 37 (000100101)
+20 + 18 = 38 (000100110)
+20 + 19 = 39 (000100111)
+20 + 20 = 40 (000101000)
+20 + 21 = 41 (000101001)
+20 + 22 = 42 (000101010)
+20 + 23 = 43 (000101011)
+20 + 24 = 44 (000101100)
+20 + 25 = 45 (000101101)
+20 + 26 = 46 (000101110)
+20 + 27 = 47 (000101111)
+20 + 28 = 48 (000110000)
+20 + 29 = 49 (000110001)
+20 + 30 = 50 (000110010)
+20 + 31 = 51 (000110011)
+20 + -32 = -12 (111110100)
+20 + -31 = -11 (111110101)
+20 + -30 = -10 (111110110)
+20 + -29 = -9 (111110111)
+20 + -28 = -8 (111111000)
+20 + -27 = -7 (111111001)
+20 + -26 = -6 (111111010)
+20 + -25 = -5 (111111011)
+20 + -24 = -4 (111111100)
+20 + -23 = -3 (111111101)
+20 + -22 = -2 (111111110)
+20 + -21 = -1 (111111111)
+20 + -20 = 0 (000000000)
+20 + -19 = 1 (000000001)
+20 + -18 = 2 (000000010)
+20 + -17 = 3 (000000011)
+20 + -16 = 4 (000000100)
+20 + -15 = 5 (000000101)
+20 + -14 = 6 (000000110)
+20 + -13 = 7 (000000111)
+20 + -12 = 8 (000001000)
+20 + -11 = 9 (000001001)
+20 + -10 = 10 (000001010)
+20 + -9 = 11 (000001011)
+20 + -8 = 12 (000001100)
+20 + -7 = 13 (000001101)
+20 + -6 = 14 (000001110)
+20 + -5 = 15 (000001111)
+20 + -4 = 16 (000010000)
+20 + -3 = 17 (000010001)
+20 + -2 = 18 (000010010)
+20 + -1 = 19 (000010011)
+21 + 0 = 21 (000010101)
+21 + 1 = 22 (000010110)
+21 + 2 = 23 (000010111)
+21 + 3 = 24 (000011000)
+21 + 4 = 25 (000011001)
+21 + 5 = 26 (000011010)
+21 + 6 = 27 (000011011)
+21 + 7 = 28 (000011100)
+21 + 8 = 29 (000011101)
+21 + 9 = 30 (000011110)
+21 + 10 = 31 (000011111)
+21 + 11 = 32 (000100000)
+21 + 12 = 33 (000100001)
+21 + 13 = 34 (000100010)
+21 + 14 = 35 (000100011)
+21 + 15 = 36 (000100100)
+21 + 16 = 37 (000100101)
+21 + 17 = 38 (000100110)
+21 + 18 = 39 (000100111)
+21 + 19 = 40 (000101000)
+21 + 20 = 41 (000101001)
+21 + 21 = 42 (000101010)
+21 + 22 = 43 (000101011)
+21 + 23 = 44 (000101100)
+21 + 24 = 45 (000101101)
+21 + 25 = 46 (000101110)
+21 + 26 = 47 (000101111)
+21 + 27 = 48 (000110000)
+21 + 28 = 49 (000110001)
+21 + 29 = 50 (000110010)
+21 + 30 = 51 (000110011)
+21 + 31 = 52 (000110100)
+21 + -32 = -11 (111110101)
+21 + -31 = -10 (111110110)
+21 + -30 = -9 (111110111)
+21 + -29 = -8 (111111000)
+21 + -28 = -7 (111111001)
+21 + -27 = -6 (111111010)
+21 + -26 = -5 (111111011)
+21 + -25 = -4 (111111100)
+21 + -24 = -3 (111111101)
+21 + -23 = -2 (111111110)
+21 + -22 = -1 (111111111)
+21 + -21 = 0 (000000000)
+21 + -20 = 1 (000000001)
+21 + -19 = 2 (000000010)
+21 + -18 = 3 (000000011)
+21 + -17 = 4 (000000100)
+21 + -16 = 5 (000000101)
+21 + -15 = 6 (000000110)
+21 + -14 = 7 (000000111)
+21 + -13 = 8 (000001000)
+21 + -12 = 9 (000001001)
+21 + -11 = 10 (000001010)
+21 + -10 = 11 (000001011)
+21 + -9 = 12 (000001100)
+21 + -8 = 13 (000001101)
+21 + -7 = 14 (000001110)
+21 + -6 = 15 (000001111)
+21 + -5 = 16 (000010000)
+21 + -4 = 17 (000010001)
+21 + -3 = 18 (000010010)
+21 + -2 = 19 (000010011)
+21 + -1 = 20 (000010100)
+22 + 0 = 22 (000010110)
+22 + 1 = 23 (000010111)
+22 + 2 = 24 (000011000)
+22 + 3 = 25 (000011001)
+22 + 4 = 26 (000011010)
+22 + 5 = 27 (000011011)
+22 + 6 = 28 (000011100)
+22 + 7 = 29 (000011101)
+22 + 8 = 30 (000011110)
+22 + 9 = 31 (000011111)
+22 + 10 = 32 (000100000)
+22 + 11 = 33 (000100001)
+22 + 12 = 34 (000100010)
+22 + 13 = 35 (000100011)
+22 + 14 = 36 (000100100)
+22 + 15 = 37 (000100101)
+22 + 16 = 38 (000100110)
+22 + 17 = 39 (000100111)
+22 + 18 = 40 (000101000)
+22 + 19 = 41 (000101001)
+22 + 20 = 42 (000101010)
+22 + 21 = 43 (000101011)
+22 + 22 = 44 (000101100)
+22 + 23 = 45 (000101101)
+22 + 24 = 46 (000101110)
+22 + 25 = 47 (000101111)
+22 + 26 = 48 (000110000)
+22 + 27 = 49 (000110001)
+22 + 28 = 50 (000110010)
+22 + 29 = 51 (000110011)
+22 + 30 = 52 (000110100)
+22 + 31 = 53 (000110101)
+22 + -32 = -10 (111110110)
+22 + -31 = -9 (111110111)
+22 + -30 = -8 (111111000)
+22 + -29 = -7 (111111001)
+22 + -28 = -6 (111111010)
+22 + -27 = -5 (111111011)
+22 + -26 = -4 (111111100)
+22 + -25 = -3 (111111101)
+22 + -24 = -2 (111111110)
+22 + -23 = -1 (111111111)
+22 + -22 = 0 (000000000)
+22 + -21 = 1 (000000001)
+22 + -20 = 2 (000000010)
+22 + -19 = 3 (000000011)
+22 + -18 = 4 (000000100)
+22 + -17 = 5 (000000101)
+22 + -16 = 6 (000000110)
+22 + -15 = 7 (000000111)
+22 + -14 = 8 (000001000)
+22 + -13 = 9 (000001001)
+22 + -12 = 10 (000001010)
+22 + -11 = 11 (000001011)
+22 + -10 = 12 (000001100)
+22 + -9 = 13 (000001101)
+22 + -8 = 14 (000001110)
+22 + -7 = 15 (000001111)
+22 + -6 = 16 (000010000)
+22 + -5 = 17 (000010001)
+22 + -4 = 18 (000010010)
+22 + -3 = 19 (000010011)
+22 + -2 = 20 (000010100)
+22 + -1 = 21 (000010101)
+23 + 0 = 23 (000010111)
+23 + 1 = 24 (000011000)
+23 + 2 = 25 (000011001)
+23 + 3 = 26 (000011010)
+23 + 4 = 27 (000011011)
+23 + 5 = 28 (000011100)
+23 + 6 = 29 (000011101)
+23 + 7 = 30 (000011110)
+23 + 8 = 31 (000011111)
+23 + 9 = 32 (000100000)
+23 + 10 = 33 (000100001)
+23 + 11 = 34 (000100010)
+23 + 12 = 35 (000100011)
+23 + 13 = 36 (000100100)
+23 + 14 = 37 (000100101)
+23 + 15 = 38 (000100110)
+23 + 16 = 39 (000100111)
+23 + 17 = 40 (000101000)
+23 + 18 = 41 (000101001)
+23 + 19 = 42 (000101010)
+23 + 20 = 43 (000101011)
+23 + 21 = 44 (000101100)
+23 + 22 = 45 (000101101)
+23 + 23 = 46 (000101110)
+23 + 24 = 47 (000101111)
+23 + 25 = 48 (000110000)
+23 + 26 = 49 (000110001)
+23 + 27 = 50 (000110010)
+23 + 28 = 51 (000110011)
+23 + 29 = 52 (000110100)
+23 + 30 = 53 (000110101)
+23 + 31 = 54 (000110110)
+23 + -32 = -9 (111110111)
+23 + -31 = -8 (111111000)
+23 + -30 = -7 (111111001)
+23 + -29 = -6 (111111010)
+23 + -28 = -5 (111111011)
+23 + -27 = -4 (111111100)
+23 + -26 = -3 (111111101)
+23 + -25 = -2 (111111110)
+23 + -24 = -1 (111111111)
+23 + -23 = 0 (000000000)
+23 + -22 = 1 (000000001)
+23 + -21 = 2 (000000010)
+23 + -20 = 3 (000000011)
+23 + -19 = 4 (000000100)
+23 + -18 = 5 (000000101)
+23 + -17 = 6 (000000110)
+23 + -16 = 7 (000000111)
+23 + -15 = 8 (000001000)
+23 + -14 = 9 (000001001)
+23 + -13 = 10 (000001010)
+23 + -12 = 11 (000001011)
+23 + -11 = 12 (000001100)
+23 + -10 = 13 (000001101)
+23 + -9 = 14 (000001110)
+23 + -8 = 15 (000001111)
+23 + -7 = 16 (000010000)
+23 + -6 = 17 (000010001)
+23 + -5 = 18 (000010010)
+23 + -4 = 19 (000010011)
+23 + -3 = 20 (000010100)
+23 + -2 = 21 (000010101)
+23 + -1 = 22 (000010110)
+24 + 0 = 24 (000011000)
+24 + 1 = 25 (000011001)
+24 + 2 = 26 (000011010)
+24 + 3 = 27 (000011011)
+24 + 4 = 28 (000011100)
+24 + 5 = 29 (000011101)
+24 + 6 = 30 (000011110)
+24 + 7 = 31 (000011111)
+24 + 8 = 32 (000100000)
+24 + 9 = 33 (000100001)
+24 + 10 = 34 (000100010)
+24 + 11 = 35 (000100011)
+24 + 12 = 36 (000100100)
+24 + 13 = 37 (000100101)
+24 + 14 = 38 (000100110)
+24 + 15 = 39 (000100111)
+24 + 16 = 40 (000101000)
+24 + 17 = 41 (000101001)
+24 + 18 = 42 (000101010)
+24 + 19 = 43 (000101011)
+24 + 20 = 44 (000101100)
+24 + 21 = 45 (000101101)
+24 + 22 = 46 (000101110)
+24 + 23 = 47 (000101111)
+24 + 24 = 48 (000110000)
+24 + 25 = 49 (000110001)
+24 + 26 = 50 (000110010)
+24 + 27 = 51 (000110011)
+24 + 28 = 52 (000110100)
+24 + 29 = 53 (000110101)
+24 + 30 = 54 (000110110)
+24 + 31 = 55 (000110111)
+24 + -32 = -8 (111111000)
+24 + -31 = -7 (111111001)
+24 + -30 = -6 (111111010)
+24 + -29 = -5 (111111011)
+24 + -28 = -4 (111111100)
+24 + -27 = -3 (111111101)
+24 + -26 = -2 (111111110)
+24 + -25 = -1 (111111111)
+24 + -24 = 0 (000000000)
+24 + -23 = 1 (000000001)
+24 + -22 = 2 (000000010)
+24 + -21 = 3 (000000011)
+24 + -20 = 4 (000000100)
+24 + -19 = 5 (000000101)
+24 + -18 = 6 (000000110)
+24 + -17 = 7 (000000111)
+24 + -16 = 8 (000001000)
+24 + -15 = 9 (000001001)
+24 + -14 = 10 (000001010)
+24 + -13 = 11 (000001011)
+24 + -12 = 12 (000001100)
+24 + -11 = 13 (000001101)
+24 + -10 = 14 (000001110)
+24 + -9 = 15 (000001111)
+24 + -8 = 16 (000010000)
+24 + -7 = 17 (000010001)
+24 + -6 = 18 (000010010)
+24 + -5 = 19 (000010011)
+24 + -4 = 20 (000010100)
+24 + -3 = 21 (000010101)
+24 + -2 = 22 (000010110)
+24 + -1 = 23 (000010111)
+25 + 0 = 25 (000011001)
+25 + 1 = 26 (000011010)
+25 + 2 = 27 (000011011)
+25 + 3 = 28 (000011100)
+25 + 4 = 29 (000011101)
+25 + 5 = 30 (000011110)
+25 + 6 = 31 (000011111)
+25 + 7 = 32 (000100000)
+25 + 8 = 33 (000100001)
+25 + 9 = 34 (000100010)
+25 + 10 = 35 (000100011)
+25 + 11 = 36 (000100100)
+25 + 12 = 37 (000100101)
+25 + 13 = 38 (000100110)
+25 + 14 = 39 (000100111)
+25 + 15 = 40 (000101000)
+25 + 16 = 41 (000101001)
+25 + 17 = 42 (000101010)
+25 + 18 = 43 (000101011)
+25 + 19 = 44 (000101100)
+25 + 20 = 45 (000101101)
+25 + 21 = 46 (000101110)
+25 + 22 = 47 (000101111)
+25 + 23 = 48 (000110000)
+25 + 24 = 49 (000110001)
+25 + 25 = 50 (000110010)
+25 + 26 = 51 (000110011)
+25 + 27 = 52 (000110100)
+25 + 28 = 53 (000110101)
+25 + 29 = 54 (000110110)
+25 + 30 = 55 (000110111)
+25 + 31 = 56 (000111000)
+25 + -32 = -7 (111111001)
+25 + -31 = -6 (111111010)
+25 + -30 = -5 (111111011)
+25 + -29 = -4 (111111100)
+25 + -28 = -3 (111111101)
+25 + -27 = -2 (111111110)
+25 + -26 = -1 (111111111)
+25 + -25 = 0 (000000000)
+25 + -24 = 1 (000000001)
+25 + -23 = 2 (000000010)
+25 + -22 = 3 (000000011)
+25 + -21 = 4 (000000100)
+25 + -20 = 5 (000000101)
+25 + -19 = 6 (000000110)
+25 + -18 = 7 (000000111)
+25 + -17 = 8 (000001000)
+25 + -16 = 9 (000001001)
+25 + -15 = 10 (000001010)
+25 + -14 = 11 (000001011)
+25 + -13 = 12 (000001100)
+25 + -12 = 13 (000001101)
+25 + -11 = 14 (000001110)
+25 + -10 = 15 (000001111)
+25 + -9 = 16 (000010000)
+25 + -8 = 17 (000010001)
+25 + -7 = 18 (000010010)
+25 + -6 = 19 (000010011)
+25 + -5 = 20 (000010100)
+25 + -4 = 21 (000010101)
+25 + -3 = 22 (000010110)
+25 + -2 = 23 (000010111)
+25 + -1 = 24 (000011000)
+26 + 0 = 26 (000011010)
+26 + 1 = 27 (000011011)
+26 + 2 = 28 (000011100)
+26 + 3 = 29 (000011101)
+26 + 4 = 30 (000011110)
+26 + 5 = 31 (000011111)
+26 + 6 = 32 (000100000)
+26 + 7 = 33 (000100001)
+26 + 8 = 34 (000100010)
+26 + 9 = 35 (000100011)
+26 + 10 = 36 (000100100)
+26 + 11 = 37 (000100101)
+26 + 12 = 38 (000100110)
+26 + 13 = 39 (000100111)
+26 + 14 = 40 (000101000)
+26 + 15 = 41 (000101001)
+26 + 16 = 42 (000101010)
+26 + 17 = 43 (000101011)
+26 + 18 = 44 (000101100)
+26 + 19 = 45 (000101101)
+26 + 20 = 46 (000101110)
+26 + 21 = 47 (000101111)
+26 + 22 = 48 (000110000)
+26 + 23 = 49 (000110001)
+26 + 24 = 50 (000110010)
+26 + 25 = 51 (000110011)
+26 + 26 = 52 (000110100)
+26 + 27 = 53 (000110101)
+26 + 28 = 54 (000110110)
+26 + 29 = 55 (000110111)
+26 + 30 = 56 (000111000)
+26 + 31 = 57 (000111001)
+26 + -32 = -6 (111111010)
+26 + -31 = -5 (111111011)
+26 + -30 = -4 (111111100)
+26 + -29 = -3 (111111101)
+26 + -28 = -2 (111111110)
+26 + -27 = -1 (111111111)
+26 + -26 = 0 (000000000)
+26 + -25 = 1 (000000001)
+26 + -24 = 2 (000000010)
+26 + -23 = 3 (000000011)
+26 + -22 = 4 (000000100)
+26 + -21 = 5 (000000101)
+26 + -20 = 6 (000000110)
+26 + -19 = 7 (000000111)
+26 + -18 = 8 (000001000)
+26 + -17 = 9 (000001001)
+26 + -16 = 10 (000001010)
+26 + -15 = 11 (000001011)
+26 + -14 = 12 (000001100)
+26 + -13 = 13 (000001101)
+26 + -12 = 14 (000001110)
+26 + -11 = 15 (000001111)
+26 + -10 = 16 (000010000)
+26 + -9 = 17 (000010001)
+26 + -8 = 18 (000010010)
+26 + -7 = 19 (000010011)
+26 + -6 = 20 (000010100)
+26 + -5 = 21 (000010101)
+26 + -4 = 22 (000010110)
+26 + -3 = 23 (000010111)
+26 + -2 = 24 (000011000)
+26 + -1 = 25 (000011001)
+27 + 0 = 27 (000011011)
+27 + 1 = 28 (000011100)
+27 + 2 = 29 (000011101)
+27 + 3 = 30 (000011110)
+27 + 4 = 31 (000011111)
+27 + 5 = 32 (000100000)
+27 + 6 = 33 (000100001)
+27 + 7 = 34 (000100010)
+27 + 8 = 35 (000100011)
+27 + 9 = 36 (000100100)
+27 + 10 = 37 (000100101)
+27 + 11 = 38 (000100110)
+27 + 12 = 39 (000100111)
+27 + 13 = 40 (000101000)
+27 + 14 = 41 (000101001)
+27 + 15 = 42 (000101010)
+27 + 16 = 43 (000101011)
+27 + 17 = 44 (000101100)
+27 + 18 = 45 (000101101)
+27 + 19 = 46 (000101110)
+27 + 20 = 47 (000101111)
+27 + 21 = 48 (000110000)
+27 + 22 = 49 (000110001)
+27 + 23 = 50 (000110010)
+27 + 24 = 51 (000110011)
+27 + 25 = 52 (000110100)
+27 + 26 = 53 (000110101)
+27 + 27 = 54 (000110110)
+27 + 28 = 55 (000110111)
+27 + 29 = 56 (000111000)
+27 + 30 = 57 (000111001)
+27 + 31 = 58 (000111010)
+27 + -32 = -5 (111111011)
+27 + -31 = -4 (111111100)
+27 + -30 = -3 (111111101)
+27 + -29 = -2 (111111110)
+27 + -28 = -1 (111111111)
+27 + -27 = 0 (000000000)
+27 + -26 = 1 (000000001)
+27 + -25 = 2 (000000010)
+27 + -24 = 3 (000000011)
+27 + -23 = 4 (000000100)
+27 + -22 = 5 (000000101)
+27 + -21 = 6 (000000110)
+27 + -20 = 7 (000000111)
+27 + -19 = 8 (000001000)
+27 + -18 = 9 (000001001)
+27 + -17 = 10 (000001010)
+27 + -16 = 11 (000001011)
+27 + -15 = 12 (000001100)
+27 + -14 = 13 (000001101)
+27 + -13 = 14 (000001110)
+27 + -12 = 15 (000001111)
+27 + -11 = 16 (000010000)
+27 + -10 = 17 (000010001)
+27 + -9 = 18 (000010010)
+27 + -8 = 19 (000010011)
+27 + -7 = 20 (000010100)
+27 + -6 = 21 (000010101)
+27 + -5 = 22 (000010110)
+27 + -4 = 23 (000010111)
+27 + -3 = 24 (000011000)
+27 + -2 = 25 (000011001)
+27 + -1 = 26 (000011010)
+28 + 0 = 28 (000011100)
+28 + 1 = 29 (000011101)
+28 + 2 = 30 (000011110)
+28 + 3 = 31 (000011111)
+28 + 4 = 32 (000100000)
+28 + 5 = 33 (000100001)
+28 + 6 = 34 (000100010)
+28 + 7 = 35 (000100011)
+28 + 8 = 36 (000100100)
+28 + 9 = 37 (000100101)
+28 + 10 = 38 (000100110)
+28 + 11 = 39 (000100111)
+28 + 12 = 40 (000101000)
+28 + 13 = 41 (000101001)
+28 + 14 = 42 (000101010)
+28 + 15 = 43 (000101011)
+28 + 16 = 44 (000101100)
+28 + 17 = 45 (000101101)
+28 + 18 = 46 (000101110)
+28 + 19 = 47 (000101111)
+28 + 20 = 48 (000110000)
+28 + 21 = 49 (000110001)
+28 + 22 = 50 (000110010)
+28 + 23 = 51 (000110011)
+28 + 24 = 52 (000110100)
+28 + 25 = 53 (000110101)
+28 + 26 = 54 (000110110)
+28 + 27 = 55 (000110111)
+28 + 28 = 56 (000111000)
+28 + 29 = 57 (000111001)
+28 + 30 = 58 (000111010)
+28 + 31 = 59 (000111011)
+28 + -32 = -4 (111111100)
+28 + -31 = -3 (111111101)
+28 + -30 = -2 (111111110)
+28 + -29 = -1 (111111111)
+28 + -28 = 0 (000000000)
+28 + -27 = 1 (000000001)
+28 + -26 = 2 (000000010)
+28 + -25 = 3 (000000011)
+28 + -24 = 4 (000000100)
+28 + -23 = 5 (000000101)
+28 + -22 = 6 (000000110)
+28 + -21 = 7 (000000111)
+28 + -20 = 8 (000001000)
+28 + -19 = 9 (000001001)
+28 + -18 = 10 (000001010)
+28 + -17 = 11 (000001011)
+28 + -16 = 12 (000001100)
+28 + -15 = 13 (000001101)
+28 + -14 = 14 (000001110)
+28 + -13 = 15 (000001111)
+28 + -12 = 16 (000010000)
+28 + -11 = 17 (000010001)
+28 + -10 = 18 (000010010)
+28 + -9 = 19 (000010011)
+28 + -8 = 20 (000010100)
+28 + -7 = 21 (000010101)
+28 + -6 = 22 (000010110)
+28 + -5 = 23 (000010111)
+28 + -4 = 24 (000011000)
+28 + -3 = 25 (000011001)
+28 + -2 = 26 (000011010)
+28 + -1 = 27 (000011011)
+29 + 0 = 29 (000011101)
+29 + 1 = 30 (000011110)
+29 + 2 = 31 (000011111)
+29 + 3 = 32 (000100000)
+29 + 4 = 33 (000100001)
+29 + 5 = 34 (000100010)
+29 + 6 = 35 (000100011)
+29 + 7 = 36 (000100100)
+29 + 8 = 37 (000100101)
+29 + 9 = 38 (000100110)
+29 + 10 = 39 (000100111)
+29 + 11 = 40 (000101000)
+29 + 12 = 41 (000101001)
+29 + 13 = 42 (000101010)
+29 + 14 = 43 (000101011)
+29 + 15 = 44 (000101100)
+29 + 16 = 45 (000101101)
+29 + 17 = 46 (000101110)
+29 + 18 = 47 (000101111)
+29 + 19 = 48 (000110000)
+29 + 20 = 49 (000110001)
+29 + 21 = 50 (000110010)
+29 + 22 = 51 (000110011)
+29 + 23 = 52 (000110100)
+29 + 24 = 53 (000110101)
+29 + 25 = 54 (000110110)
+29 + 26 = 55 (000110111)
+29 + 27 = 56 (000111000)
+29 + 28 = 57 (000111001)
+29 + 29 = 58 (000111010)
+29 + 30 = 59 (000111011)
+29 + 31 = 60 (000111100)
+29 + -32 = -3 (111111101)
+29 + -31 = -2 (111111110)
+29 + -30 = -1 (111111111)
+29 + -29 = 0 (000000000)
+29 + -28 = 1 (000000001)
+29 + -27 = 2 (000000010)
+29 + -26 = 3 (000000011)
+29 + -25 = 4 (000000100)
+29 + -24 = 5 (000000101)
+29 + -23 = 6 (000000110)
+29 + -22 = 7 (000000111)
+29 + -21 = 8 (000001000)
+29 + -20 = 9 (000001001)
+29 + -19 = 10 (000001010)
+29 + -18 = 11 (000001011)
+29 + -17 = 12 (000001100)
+29 + -16 = 13 (000001101)
+29 + -15 = 14 (000001110)
+29 + -14 = 15 (000001111)
+29 + -13 = 16 (000010000)
+29 + -12 = 17 (000010001)
+29 + -11 = 18 (000010010)
+29 + -10 = 19 (000010011)
+29 + -9 = 20 (000010100)
+29 + -8 = 21 (000010101)
+29 + -7 = 22 (000010110)
+29 + -6 = 23 (000010111)
+29 + -5 = 24 (000011000)
+29 + -4 = 25 (000011001)
+29 + -3 = 26 (000011010)
+29 + -2 = 27 (000011011)
+29 + -1 = 28 (000011100)
+30 + 0 = 30 (000011110)
+30 + 1 = 31 (000011111)
+30 + 2 = 32 (000100000)
+30 + 3 = 33 (000100001)
+30 + 4 = 34 (000100010)
+30 + 5 = 35 (000100011)
+30 + 6 = 36 (000100100)
+30 + 7 = 37 (000100101)
+30 + 8 = 38 (000100110)
+30 + 9 = 39 (000100111)
+30 + 10 = 40 (000101000)
+30 + 11 = 41 (000101001)
+30 + 12 = 42 (000101010)
+30 + 13 = 43 (000101011)
+30 + 14 = 44 (000101100)
+30 + 15 = 45 (000101101)
+30 + 16 = 46 (000101110)
+30 + 17 = 47 (000101111)
+30 + 18 = 48 (000110000)
+30 + 19 = 49 (000110001)
+30 + 20 = 50 (000110010)
+30 + 21 = 51 (000110011)
+30 + 22 = 52 (000110100)
+30 + 23 = 53 (000110101)
+30 + 24 = 54 (000110110)
+30 + 25 = 55 (000110111)
+30 + 26 = 56 (000111000)
+30 + 27 = 57 (000111001)
+30 + 28 = 58 (000111010)
+30 + 29 = 59 (000111011)
+30 + 30 = 60 (000111100)
+30 + 31 = 61 (000111101)
+30 + -32 = -2 (111111110)
+30 + -31 = -1 (111111111)
+30 + -30 = 0 (000000000)
+30 + -29 = 1 (000000001)
+30 + -28 = 2 (000000010)
+30 + -27 = 3 (000000011)
+30 + -26 = 4 (000000100)
+30 + -25 = 5 (000000101)
+30 + -24 = 6 (000000110)
+30 + -23 = 7 (000000111)
+30 + -22 = 8 (000001000)
+30 + -21 = 9 (000001001)
+30 + -20 = 10 (000001010)
+30 + -19 = 11 (000001011)
+30 + -18 = 12 (000001100)
+30 + -17 = 13 (000001101)
+30 + -16 = 14 (000001110)
+30 + -15 = 15 (000001111)
+30 + -14 = 16 (000010000)
+30 + -13 = 17 (000010001)
+30 + -12 = 18 (000010010)
+30 + -11 = 19 (000010011)
+30 + -10 = 20 (000010100)
+30 + -9 = 21 (000010101)
+30 + -8 = 22 (000010110)
+30 + -7 = 23 (000010111)
+30 + -6 = 24 (000011000)
+30 + -5 = 25 (000011001)
+30 + -4 = 26 (000011010)
+30 + -3 = 27 (000011011)
+30 + -2 = 28 (000011100)
+30 + -1 = 29 (000011101)
+31 + 0 = 31 (000011111)
+31 + 1 = 32 (000100000)
+31 + 2 = 33 (000100001)
+31 + 3 = 34 (000100010)
+31 + 4 = 35 (000100011)
+31 + 5 = 36 (000100100)
+31 + 6 = 37 (000100101)
+31 + 7 = 38 (000100110)
+31 + 8 = 39 (000100111)
+31 + 9 = 40 (000101000)
+31 + 10 = 41 (000101001)
+31 + 11 = 42 (000101010)
+31 + 12 = 43 (000101011)
+31 + 13 = 44 (000101100)
+31 + 14 = 45 (000101101)
+31 + 15 = 46 (000101110)
+31 + 16 = 47 (000101111)
+31 + 17 = 48 (000110000)
+31 + 18 = 49 (000110001)
+31 + 19 = 50 (000110010)
+31 + 20 = 51 (000110011)
+31 + 21 = 52 (000110100)
+31 + 22 = 53 (000110101)
+31 + 23 = 54 (000110110)
+31 + 24 = 55 (000110111)
+31 + 25 = 56 (000111000)
+31 + 26 = 57 (000111001)
+31 + 27 = 58 (000111010)
+31 + 28 = 59 (000111011)
+31 + 29 = 60 (000111100)
+31 + 30 = 61 (000111101)
+31 + 31 = 62 (000111110)
+31 + -32 = -1 (111111111)
+31 + -31 = 0 (000000000)
+31 + -30 = 1 (000000001)
+31 + -29 = 2 (000000010)
+31 + -28 = 3 (000000011)
+31 + -27 = 4 (000000100)
+31 + -26 = 5 (000000101)
+31 + -25 = 6 (000000110)
+31 + -24 = 7 (000000111)
+31 + -23 = 8 (000001000)
+31 + -22 = 9 (000001001)
+31 + -21 = 10 (000001010)
+31 + -20 = 11 (000001011)
+31 + -19 = 12 (000001100)
+31 + -18 = 13 (000001101)
+31 + -17 = 14 (000001110)
+31 + -16 = 15 (000001111)
+31 + -15 = 16 (000010000)
+31 + -14 = 17 (000010001)
+31 + -13 = 18 (000010010)
+31 + -12 = 19 (000010011)
+31 + -11 = 20 (000010100)
+31 + -10 = 21 (000010101)
+31 + -9 = 22 (000010110)
+31 + -8 = 23 (000010111)
+31 + -7 = 24 (000011000)
+31 + -6 = 25 (000011001)
+31 + -5 = 26 (000011010)
+31 + -4 = 27 (000011011)
+31 + -3 = 28 (000011100)
+31 + -2 = 29 (000011101)
+31 + -1 = 30 (000011110)
+-32 + 0 = -32 (111100000)
+-32 + 1 = -31 (111100001)
+-32 + 2 = -30 (111100010)
+-32 + 3 = -29 (111100011)
+-32 + 4 = -28 (111100100)
+-32 + 5 = -27 (111100101)
+-32 + 6 = -26 (111100110)
+-32 + 7 = -25 (111100111)
+-32 + 8 = -24 (111101000)
+-32 + 9 = -23 (111101001)
+-32 + 10 = -22 (111101010)
+-32 + 11 = -21 (111101011)
+-32 + 12 = -20 (111101100)
+-32 + 13 = -19 (111101101)
+-32 + 14 = -18 (111101110)
+-32 + 15 = -17 (111101111)
+-32 + 16 = -16 (111110000)
+-32 + 17 = -15 (111110001)
+-32 + 18 = -14 (111110010)
+-32 + 19 = -13 (111110011)
+-32 + 20 = -12 (111110100)
+-32 + 21 = -11 (111110101)
+-32 + 22 = -10 (111110110)
+-32 + 23 = -9 (111110111)
+-32 + 24 = -8 (111111000)
+-32 + 25 = -7 (111111001)
+-32 + 26 = -6 (111111010)
+-32 + 27 = -5 (111111011)
+-32 + 28 = -4 (111111100)
+-32 + 29 = -3 (111111101)
+-32 + 30 = -2 (111111110)
+-32 + 31 = -1 (111111111)
+-32 + -32 = -64 (111000000)
+-32 + -31 = -63 (111000001)
+-32 + -30 = -62 (111000010)
+-32 + -29 = -61 (111000011)
+-32 + -28 = -60 (111000100)
+-32 + -27 = -59 (111000101)
+-32 + -26 = -58 (111000110)
+-32 + -25 = -57 (111000111)
+-32 + -24 = -56 (111001000)
+-32 + -23 = -55 (111001001)
+-32 + -22 = -54 (111001010)
+-32 + -21 = -53 (111001011)
+-32 + -20 = -52 (111001100)
+-32 + -19 = -51 (111001101)
+-32 + -18 = -50 (111001110)
+-32 + -17 = -49 (111001111)
+-32 + -16 = -48 (111010000)
+-32 + -15 = -47 (111010001)
+-32 + -14 = -46 (111010010)
+-32 + -13 = -45 (111010011)
+-32 + -12 = -44 (111010100)
+-32 + -11 = -43 (111010101)
+-32 + -10 = -42 (111010110)
+-32 + -9 = -41 (111010111)
+-32 + -8 = -40 (111011000)
+-32 + -7 = -39 (111011001)
+-32 + -6 = -38 (111011010)
+-32 + -5 = -37 (111011011)
+-32 + -4 = -36 (111011100)
+-32 + -3 = -35 (111011101)
+-32 + -2 = -34 (111011110)
+-32 + -1 = -33 (111011111)
+-31 + 0 = -31 (111100001)
+-31 + 1 = -30 (111100010)
+-31 + 2 = -29 (111100011)
+-31 + 3 = -28 (111100100)
+-31 + 4 = -27 (111100101)
+-31 + 5 = -26 (111100110)
+-31 + 6 = -25 (111100111)
+-31 + 7 = -24 (111101000)
+-31 + 8 = -23 (111101001)
+-31 + 9 = -22 (111101010)
+-31 + 10 = -21 (111101011)
+-31 + 11 = -20 (111101100)
+-31 + 12 = -19 (111101101)
+-31 + 13 = -18 (111101110)
+-31 + 14 = -17 (111101111)
+-31 + 15 = -16 (111110000)
+-31 + 16 = -15 (111110001)
+-31 + 17 = -14 (111110010)
+-31 + 18 = -13 (111110011)
+-31 + 19 = -12 (111110100)
+-31 + 20 = -11 (111110101)
+-31 + 21 = -10 (111110110)
+-31 + 22 = -9 (111110111)
+-31 + 23 = -8 (111111000)
+-31 + 24 = -7 (111111001)
+-31 + 25 = -6 (111111010)
+-31 + 26 = -5 (111111011)
+-31 + 27 = -4 (111111100)
+-31 + 28 = -3 (111111101)
+-31 + 29 = -2 (111111110)
+-31 + 30 = -1 (111111111)
+-31 + 31 = 0 (000000000)
+-31 + -32 = -63 (111000001)
+-31 + -31 = -62 (111000010)
+-31 + -30 = -61 (111000011)
+-31 + -29 = -60 (111000100)
+-31 + -28 = -59 (111000101)
+-31 + -27 = -58 (111000110)
+-31 + -26 = -57 (111000111)
+-31 + -25 = -56 (111001000)
+-31 + -24 = -55 (111001001)
+-31 + -23 = -54 (111001010)
+-31 + -22 = -53 (111001011)
+-31 + -21 = -52 (111001100)
+-31 + -20 = -51 (111001101)
+-31 + -19 = -50 (111001110)
+-31 + -18 = -49 (111001111)
+-31 + -17 = -48 (111010000)
+-31 + -16 = -47 (111010001)
+-31 + -15 = -46 (111010010)
+-31 + -14 = -45 (111010011)
+-31 + -13 = -44 (111010100)
+-31 + -12 = -43 (111010101)
+-31 + -11 = -42 (111010110)
+-31 + -10 = -41 (111010111)
+-31 + -9 = -40 (111011000)
+-31 + -8 = -39 (111011001)
+-31 + -7 = -38 (111011010)
+-31 + -6 = -37 (111011011)
+-31 + -5 = -36 (111011100)
+-31 + -4 = -35 (111011101)
+-31 + -3 = -34 (111011110)
+-31 + -2 = -33 (111011111)
+-31 + -1 = -32 (111100000)
+-30 + 0 = -30 (111100010)
+-30 + 1 = -29 (111100011)
+-30 + 2 = -28 (111100100)
+-30 + 3 = -27 (111100101)
+-30 + 4 = -26 (111100110)
+-30 + 5 = -25 (111100111)
+-30 + 6 = -24 (111101000)
+-30 + 7 = -23 (111101001)
+-30 + 8 = -22 (111101010)
+-30 + 9 = -21 (111101011)
+-30 + 10 = -20 (111101100)
+-30 + 11 = -19 (111101101)
+-30 + 12 = -18 (111101110)
+-30 + 13 = -17 (111101111)
+-30 + 14 = -16 (111110000)
+-30 + 15 = -15 (111110001)
+-30 + 16 = -14 (111110010)
+-30 + 17 = -13 (111110011)
+-30 + 18 = -12 (111110100)
+-30 + 19 = -11 (111110101)
+-30 + 20 = -10 (111110110)
+-30 + 21 = -9 (111110111)
+-30 + 22 = -8 (111111000)
+-30 + 23 = -7 (111111001)
+-30 + 24 = -6 (111111010)
+-30 + 25 = -5 (111111011)
+-30 + 26 = -4 (111111100)
+-30 + 27 = -3 (111111101)
+-30 + 28 = -2 (111111110)
+-30 + 29 = -1 (111111111)
+-30 + 30 = 0 (000000000)
+-30 + 31 = 1 (000000001)
+-30 + -32 = -62 (111000010)
+-30 + -31 = -61 (111000011)
+-30 + -30 = -60 (111000100)
+-30 + -29 = -59 (111000101)
+-30 + -28 = -58 (111000110)
+-30 + -27 = -57 (111000111)
+-30 + -26 = -56 (111001000)
+-30 + -25 = -55 (111001001)
+-30 + -24 = -54 (111001010)
+-30 + -23 = -53 (111001011)
+-30 + -22 = -52 (111001100)
+-30 + -21 = -51 (111001101)
+-30 + -20 = -50 (111001110)
+-30 + -19 = -49 (111001111)
+-30 + -18 = -48 (111010000)
+-30 + -17 = -47 (111010001)
+-30 + -16 = -46 (111010010)
+-30 + -15 = -45 (111010011)
+-30 + -14 = -44 (111010100)
+-30 + -13 = -43 (111010101)
+-30 + -12 = -42 (111010110)
+-30 + -11 = -41 (111010111)
+-30 + -10 = -40 (111011000)
+-30 + -9 = -39 (111011001)
+-30 + -8 = -38 (111011010)
+-30 + -7 = -37 (111011011)
+-30 + -6 = -36 (111011100)
+-30 + -5 = -35 (111011101)
+-30 + -4 = -34 (111011110)
+-30 + -3 = -33 (111011111)
+-30 + -2 = -32 (111100000)
+-30 + -1 = -31 (111100001)
+-29 + 0 = -29 (111100011)
+-29 + 1 = -28 (111100100)
+-29 + 2 = -27 (111100101)
+-29 + 3 = -26 (111100110)
+-29 + 4 = -25 (111100111)
+-29 + 5 = -24 (111101000)
+-29 + 6 = -23 (111101001)
+-29 + 7 = -22 (111101010)
+-29 + 8 = -21 (111101011)
+-29 + 9 = -20 (111101100)
+-29 + 10 = -19 (111101101)
+-29 + 11 = -18 (111101110)
+-29 + 12 = -17 (111101111)
+-29 + 13 = -16 (111110000)
+-29 + 14 = -15 (111110001)
+-29 + 15 = -14 (111110010)
+-29 + 16 = -13 (111110011)
+-29 + 17 = -12 (111110100)
+-29 + 18 = -11 (111110101)
+-29 + 19 = -10 (111110110)
+-29 + 20 = -9 (111110111)
+-29 + 21 = -8 (111111000)
+-29 + 22 = -7 (111111001)
+-29 + 23 = -6 (111111010)
+-29 + 24 = -5 (111111011)
+-29 + 25 = -4 (111111100)
+-29 + 26 = -3 (111111101)
+-29 + 27 = -2 (111111110)
+-29 + 28 = -1 (111111111)
+-29 + 29 = 0 (000000000)
+-29 + 30 = 1 (000000001)
+-29 + 31 = 2 (000000010)
+-29 + -32 = -61 (111000011)
+-29 + -31 = -60 (111000100)
+-29 + -30 = -59 (111000101)
+-29 + -29 = -58 (111000110)
+-29 + -28 = -57 (111000111)
+-29 + -27 = -56 (111001000)
+-29 + -26 = -55 (111001001)
+-29 + -25 = -54 (111001010)
+-29 + -24 = -53 (111001011)
+-29 + -23 = -52 (111001100)
+-29 + -22 = -51 (111001101)
+-29 + -21 = -50 (111001110)
+-29 + -20 = -49 (111001111)
+-29 + -19 = -48 (111010000)
+-29 + -18 = -47 (111010001)
+-29 + -17 = -46 (111010010)
+-29 + -16 = -45 (111010011)
+-29 + -15 = -44 (111010100)
+-29 + -14 = -43 (111010101)
+-29 + -13 = -42 (111010110)
+-29 + -12 = -41 (111010111)
+-29 + -11 = -40 (111011000)
+-29 + -10 = -39 (111011001)
+-29 + -9 = -38 (111011010)
+-29 + -8 = -37 (111011011)
+-29 + -7 = -36 (111011100)
+-29 + -6 = -35 (111011101)
+-29 + -5 = -34 (111011110)
+-29 + -4 = -33 (111011111)
+-29 + -3 = -32 (111100000)
+-29 + -2 = -31 (111100001)
+-29 + -1 = -30 (111100010)
+-28 + 0 = -28 (111100100)
+-28 + 1 = -27 (111100101)
+-28 + 2 = -26 (111100110)
+-28 + 3 = -25 (111100111)
+-28 + 4 = -24 (111101000)
+-28 + 5 = -23 (111101001)
+-28 + 6 = -22 (111101010)
+-28 + 7 = -21 (111101011)
+-28 + 8 = -20 (111101100)
+-28 + 9 = -19 (111101101)
+-28 + 10 = -18 (111101110)
+-28 + 11 = -17 (111101111)
+-28 + 12 = -16 (111110000)
+-28 + 13 = -15 (111110001)
+-28 + 14 = -14 (111110010)
+-28 + 15 = -13 (111110011)
+-28 + 16 = -12 (111110100)
+-28 + 17 = -11 (111110101)
+-28 + 18 = -10 (111110110)
+-28 + 19 = -9 (111110111)
+-28 + 20 = -8 (111111000)
+-28 + 21 = -7 (111111001)
+-28 + 22 = -6 (111111010)
+-28 + 23 = -5 (111111011)
+-28 + 24 = -4 (111111100)
+-28 + 25 = -3 (111111101)
+-28 + 26 = -2 (111111110)
+-28 + 27 = -1 (111111111)
+-28 + 28 = 0 (000000000)
+-28 + 29 = 1 (000000001)
+-28 + 30 = 2 (000000010)
+-28 + 31 = 3 (000000011)
+-28 + -32 = -60 (111000100)
+-28 + -31 = -59 (111000101)
+-28 + -30 = -58 (111000110)
+-28 + -29 = -57 (111000111)
+-28 + -28 = -56 (111001000)
+-28 + -27 = -55 (111001001)
+-28 + -26 = -54 (111001010)
+-28 + -25 = -53 (111001011)
+-28 + -24 = -52 (111001100)
+-28 + -23 = -51 (111001101)
+-28 + -22 = -50 (111001110)
+-28 + -21 = -49 (111001111)
+-28 + -20 = -48 (111010000)
+-28 + -19 = -47 (111010001)
+-28 + -18 = -46 (111010010)
+-28 + -17 = -45 (111010011)
+-28 + -16 = -44 (111010100)
+-28 + -15 = -43 (111010101)
+-28 + -14 = -42 (111010110)
+-28 + -13 = -41 (111010111)
+-28 + -12 = -40 (111011000)
+-28 + -11 = -39 (111011001)
+-28 + -10 = -38 (111011010)
+-28 + -9 = -37 (111011011)
+-28 + -8 = -36 (111011100)
+-28 + -7 = -35 (111011101)
+-28 + -6 = -34 (111011110)
+-28 + -5 = -33 (111011111)
+-28 + -4 = -32 (111100000)
+-28 + -3 = -31 (111100001)
+-28 + -2 = -30 (111100010)
+-28 + -1 = -29 (111100011)
+-27 + 0 = -27 (111100101)
+-27 + 1 = -26 (111100110)
+-27 + 2 = -25 (111100111)
+-27 + 3 = -24 (111101000)
+-27 + 4 = -23 (111101001)
+-27 + 5 = -22 (111101010)
+-27 + 6 = -21 (111101011)
+-27 + 7 = -20 (111101100)
+-27 + 8 = -19 (111101101)
+-27 + 9 = -18 (111101110)
+-27 + 10 = -17 (111101111)
+-27 + 11 = -16 (111110000)
+-27 + 12 = -15 (111110001)
+-27 + 13 = -14 (111110010)
+-27 + 14 = -13 (111110011)
+-27 + 15 = -12 (111110100)
+-27 + 16 = -11 (111110101)
+-27 + 17 = -10 (111110110)
+-27 + 18 = -9 (111110111)
+-27 + 19 = -8 (111111000)
+-27 + 20 = -7 (111111001)
+-27 + 21 = -6 (111111010)
+-27 + 22 = -5 (111111011)
+-27 + 23 = -4 (111111100)
+-27 + 24 = -3 (111111101)
+-27 + 25 = -2 (111111110)
+-27 + 26 = -1 (111111111)
+-27 + 27 = 0 (000000000)
+-27 + 28 = 1 (000000001)
+-27 + 29 = 2 (000000010)
+-27 + 30 = 3 (000000011)
+-27 + 31 = 4 (000000100)
+-27 + -32 = -59 (111000101)
+-27 + -31 = -58 (111000110)
+-27 + -30 = -57 (111000111)
+-27 + -29 = -56 (111001000)
+-27 + -28 = -55 (111001001)
+-27 + -27 = -54 (111001010)
+-27 + -26 = -53 (111001011)
+-27 + -25 = -52 (111001100)
+-27 + -24 = -51 (111001101)
+-27 + -23 = -50 (111001110)
+-27 + -22 = -49 (111001111)
+-27 + -21 = -48 (111010000)
+-27 + -20 = -47 (111010001)
+-27 + -19 = -46 (111010010)
+-27 + -18 = -45 (111010011)
+-27 + -17 = -44 (111010100)
+-27 + -16 = -43 (111010101)
+-27 + -15 = -42 (111010110)
+-27 + -14 = -41 (111010111)
+-27 + -13 = -40 (111011000)
+-27 + -12 = -39 (111011001)
+-27 + -11 = -38 (111011010)
+-27 + -10 = -37 (111011011)
+-27 + -9 = -36 (111011100)
+-27 + -8 = -35 (111011101)
+-27 + -7 = -34 (111011110)
+-27 + -6 = -33 (111011111)
+-27 + -5 = -32 (111100000)
+-27 + -4 = -31 (111100001)
+-27 + -3 = -30 (111100010)
+-27 + -2 = -29 (111100011)
+-27 + -1 = -28 (111100100)
+-26 + 0 = -26 (111100110)
+-26 + 1 = -25 (111100111)
+-26 + 2 = -24 (111101000)
+-26 + 3 = -23 (111101001)
+-26 + 4 = -22 (111101010)
+-26 + 5 = -21 (111101011)
+-26 + 6 = -20 (111101100)
+-26 + 7 = -19 (111101101)
+-26 + 8 = -18 (111101110)
+-26 + 9 = -17 (111101111)
+-26 + 10 = -16 (111110000)
+-26 + 11 = -15 (111110001)
+-26 + 12 = -14 (111110010)
+-26 + 13 = -13 (111110011)
+-26 + 14 = -12 (111110100)
+-26 + 15 = -11 (111110101)
+-26 + 16 = -10 (111110110)
+-26 + 17 = -9 (111110111)
+-26 + 18 = -8 (111111000)
+-26 + 19 = -7 (111111001)
+-26 + 20 = -6 (111111010)
+-26 + 21 = -5 (111111011)
+-26 + 22 = -4 (111111100)
+-26 + 23 = -3 (111111101)
+-26 + 24 = -2 (111111110)
+-26 + 25 = -1 (111111111)
+-26 + 26 = 0 (000000000)
+-26 + 27 = 1 (000000001)
+-26 + 28 = 2 (000000010)
+-26 + 29 = 3 (000000011)
+-26 + 30 = 4 (000000100)
+-26 + 31 = 5 (000000101)
+-26 + -32 = -58 (111000110)
+-26 + -31 = -57 (111000111)
+-26 + -30 = -56 (111001000)
+-26 + -29 = -55 (111001001)
+-26 + -28 = -54 (111001010)
+-26 + -27 = -53 (111001011)
+-26 + -26 = -52 (111001100)
+-26 + -25 = -51 (111001101)
+-26 + -24 = -50 (111001110)
+-26 + -23 = -49 (111001111)
+-26 + -22 = -48 (111010000)
+-26 + -21 = -47 (111010001)
+-26 + -20 = -46 (111010010)
+-26 + -19 = -45 (111010011)
+-26 + -18 = -44 (111010100)
+-26 + -17 = -43 (111010101)
+-26 + -16 = -42 (111010110)
+-26 + -15 = -41 (111010111)
+-26 + -14 = -40 (111011000)
+-26 + -13 = -39 (111011001)
+-26 + -12 = -38 (111011010)
+-26 + -11 = -37 (111011011)
+-26 + -10 = -36 (111011100)
+-26 + -9 = -35 (111011101)
+-26 + -8 = -34 (111011110)
+-26 + -7 = -33 (111011111)
+-26 + -6 = -32 (111100000)
+-26 + -5 = -31 (111100001)
+-26 + -4 = -30 (111100010)
+-26 + -3 = -29 (111100011)
+-26 + -2 = -28 (111100100)
+-26 + -1 = -27 (111100101)
+-25 + 0 = -25 (111100111)
+-25 + 1 = -24 (111101000)
+-25 + 2 = -23 (111101001)
+-25 + 3 = -22 (111101010)
+-25 + 4 = -21 (111101011)
+-25 + 5 = -20 (111101100)
+-25 + 6 = -19 (111101101)
+-25 + 7 = -18 (111101110)
+-25 + 8 = -17 (111101111)
+-25 + 9 = -16 (111110000)
+-25 + 10 = -15 (111110001)
+-25 + 11 = -14 (111110010)
+-25 + 12 = -13 (111110011)
+-25 + 13 = -12 (111110100)
+-25 + 14 = -11 (111110101)
+-25 + 15 = -10 (111110110)
+-25 + 16 = -9 (111110111)
+-25 + 17 = -8 (111111000)
+-25 + 18 = -7 (111111001)
+-25 + 19 = -6 (111111010)
+-25 + 20 = -5 (111111011)
+-25 + 21 = -4 (111111100)
+-25 + 22 = -3 (111111101)
+-25 + 23 = -2 (111111110)
+-25 + 24 = -1 (111111111)
+-25 + 25 = 0 (000000000)
+-25 + 26 = 1 (000000001)
+-25 + 27 = 2 (000000010)
+-25 + 28 = 3 (000000011)
+-25 + 29 = 4 (000000100)
+-25 + 30 = 5 (000000101)
+-25 + 31 = 6 (000000110)
+-25 + -32 = -57 (111000111)
+-25 + -31 = -56 (111001000)
+-25 + -30 = -55 (111001001)
+-25 + -29 = -54 (111001010)
+-25 + -28 = -53 (111001011)
+-25 + -27 = -52 (111001100)
+-25 + -26 = -51 (111001101)
+-25 + -25 = -50 (111001110)
+-25 + -24 = -49 (111001111)
+-25 + -23 = -48 (111010000)
+-25 + -22 = -47 (111010001)
+-25 + -21 = -46 (111010010)
+-25 + -20 = -45 (111010011)
+-25 + -19 = -44 (111010100)
+-25 + -18 = -43 (111010101)
+-25 + -17 = -42 (111010110)
+-25 + -16 = -41 (111010111)
+-25 + -15 = -40 (111011000)
+-25 + -14 = -39 (111011001)
+-25 + -13 = -38 (111011010)
+-25 + -12 = -37 (111011011)
+-25 + -11 = -36 (111011100)
+-25 + -10 = -35 (111011101)
+-25 + -9 = -34 (111011110)
+-25 + -8 = -33 (111011111)
+-25 + -7 = -32 (111100000)
+-25 + -6 = -31 (111100001)
+-25 + -5 = -30 (111100010)
+-25 + -4 = -29 (111100011)
+-25 + -3 = -28 (111100100)
+-25 + -2 = -27 (111100101)
+-25 + -1 = -26 (111100110)
+-24 + 0 = -24 (111101000)
+-24 + 1 = -23 (111101001)
+-24 + 2 = -22 (111101010)
+-24 + 3 = -21 (111101011)
+-24 + 4 = -20 (111101100)
+-24 + 5 = -19 (111101101)
+-24 + 6 = -18 (111101110)
+-24 + 7 = -17 (111101111)
+-24 + 8 = -16 (111110000)
+-24 + 9 = -15 (111110001)
+-24 + 10 = -14 (111110010)
+-24 + 11 = -13 (111110011)
+-24 + 12 = -12 (111110100)
+-24 + 13 = -11 (111110101)
+-24 + 14 = -10 (111110110)
+-24 + 15 = -9 (111110111)
+-24 + 16 = -8 (111111000)
+-24 + 17 = -7 (111111001)
+-24 + 18 = -6 (111111010)
+-24 + 19 = -5 (111111011)
+-24 + 20 = -4 (111111100)
+-24 + 21 = -3 (111111101)
+-24 + 22 = -2 (111111110)
+-24 + 23 = -1 (111111111)
+-24 + 24 = 0 (000000000)
+-24 + 25 = 1 (000000001)
+-24 + 26 = 2 (000000010)
+-24 + 27 = 3 (000000011)
+-24 + 28 = 4 (000000100)
+-24 + 29 = 5 (000000101)
+-24 + 30 = 6 (000000110)
+-24 + 31 = 7 (000000111)
+-24 + -32 = -56 (111001000)
+-24 + -31 = -55 (111001001)
+-24 + -30 = -54 (111001010)
+-24 + -29 = -53 (111001011)
+-24 + -28 = -52 (111001100)
+-24 + -27 = -51 (111001101)
+-24 + -26 = -50 (111001110)
+-24 + -25 = -49 (111001111)
+-24 + -24 = -48 (111010000)
+-24 + -23 = -47 (111010001)
+-24 + -22 = -46 (111010010)
+-24 + -21 = -45 (111010011)
+-24 + -20 = -44 (111010100)
+-24 + -19 = -43 (111010101)
+-24 + -18 = -42 (111010110)
+-24 + -17 = -41 (111010111)
+-24 + -16 = -40 (111011000)
+-24 + -15 = -39 (111011001)
+-24 + -14 = -38 (111011010)
+-24 + -13 = -37 (111011011)
+-24 + -12 = -36 (111011100)
+-24 + -11 = -35 (111011101)
+-24 + -10 = -34 (111011110)
+-24 + -9 = -33 (111011111)
+-24 + -8 = -32 (111100000)
+-24 + -7 = -31 (111100001)
+-24 + -6 = -30 (111100010)
+-24 + -5 = -29 (111100011)
+-24 + -4 = -28 (111100100)
+-24 + -3 = -27 (111100101)
+-24 + -2 = -26 (111100110)
+-24 + -1 = -25 (111100111)
+-23 + 0 = -23 (111101001)
+-23 + 1 = -22 (111101010)
+-23 + 2 = -21 (111101011)
+-23 + 3 = -20 (111101100)
+-23 + 4 = -19 (111101101)
+-23 + 5 = -18 (111101110)
+-23 + 6 = -17 (111101111)
+-23 + 7 = -16 (111110000)
+-23 + 8 = -15 (111110001)
+-23 + 9 = -14 (111110010)
+-23 + 10 = -13 (111110011)
+-23 + 11 = -12 (111110100)
+-23 + 12 = -11 (111110101)
+-23 + 13 = -10 (111110110)
+-23 + 14 = -9 (111110111)
+-23 + 15 = -8 (111111000)
+-23 + 16 = -7 (111111001)
+-23 + 17 = -6 (111111010)
+-23 + 18 = -5 (111111011)
+-23 + 19 = -4 (111111100)
+-23 + 20 = -3 (111111101)
+-23 + 21 = -2 (111111110)
+-23 + 22 = -1 (111111111)
+-23 + 23 = 0 (000000000)
+-23 + 24 = 1 (000000001)
+-23 + 25 = 2 (000000010)
+-23 + 26 = 3 (000000011)
+-23 + 27 = 4 (000000100)
+-23 + 28 = 5 (000000101)
+-23 + 29 = 6 (000000110)
+-23 + 30 = 7 (000000111)
+-23 + 31 = 8 (000001000)
+-23 + -32 = -55 (111001001)
+-23 + -31 = -54 (111001010)
+-23 + -30 = -53 (111001011)
+-23 + -29 = -52 (111001100)
+-23 + -28 = -51 (111001101)
+-23 + -27 = -50 (111001110)
+-23 + -26 = -49 (111001111)
+-23 + -25 = -48 (111010000)
+-23 + -24 = -47 (111010001)
+-23 + -23 = -46 (111010010)
+-23 + -22 = -45 (111010011)
+-23 + -21 = -44 (111010100)
+-23 + -20 = -43 (111010101)
+-23 + -19 = -42 (111010110)
+-23 + -18 = -41 (111010111)
+-23 + -17 = -40 (111011000)
+-23 + -16 = -39 (111011001)
+-23 + -15 = -38 (111011010)
+-23 + -14 = -37 (111011011)
+-23 + -13 = -36 (111011100)
+-23 + -12 = -35 (111011101)
+-23 + -11 = -34 (111011110)
+-23 + -10 = -33 (111011111)
+-23 + -9 = -32 (111100000)
+-23 + -8 = -31 (111100001)
+-23 + -7 = -30 (111100010)
+-23 + -6 = -29 (111100011)
+-23 + -5 = -28 (111100100)
+-23 + -4 = -27 (111100101)
+-23 + -3 = -26 (111100110)
+-23 + -2 = -25 (111100111)
+-23 + -1 = -24 (111101000)
+-22 + 0 = -22 (111101010)
+-22 + 1 = -21 (111101011)
+-22 + 2 = -20 (111101100)
+-22 + 3 = -19 (111101101)
+-22 + 4 = -18 (111101110)
+-22 + 5 = -17 (111101111)
+-22 + 6 = -16 (111110000)
+-22 + 7 = -15 (111110001)
+-22 + 8 = -14 (111110010)
+-22 + 9 = -13 (111110011)
+-22 + 10 = -12 (111110100)
+-22 + 11 = -11 (111110101)
+-22 + 12 = -10 (111110110)
+-22 + 13 = -9 (111110111)
+-22 + 14 = -8 (111111000)
+-22 + 15 = -7 (111111001)
+-22 + 16 = -6 (111111010)
+-22 + 17 = -5 (111111011)
+-22 + 18 = -4 (111111100)
+-22 + 19 = -3 (111111101)
+-22 + 20 = -2 (111111110)
+-22 + 21 = -1 (111111111)
+-22 + 22 = 0 (000000000)
+-22 + 23 = 1 (000000001)
+-22 + 24 = 2 (000000010)
+-22 + 25 = 3 (000000011)
+-22 + 26 = 4 (000000100)
+-22 + 27 = 5 (000000101)
+-22 + 28 = 6 (000000110)
+-22 + 29 = 7 (000000111)
+-22 + 30 = 8 (000001000)
+-22 + 31 = 9 (000001001)
+-22 + -32 = -54 (111001010)
+-22 + -31 = -53 (111001011)
+-22 + -30 = -52 (111001100)
+-22 + -29 = -51 (111001101)
+-22 + -28 = -50 (111001110)
+-22 + -27 = -49 (111001111)
+-22 + -26 = -48 (111010000)
+-22 + -25 = -47 (111010001)
+-22 + -24 = -46 (111010010)
+-22 + -23 = -45 (111010011)
+-22 + -22 = -44 (111010100)
+-22 + -21 = -43 (111010101)
+-22 + -20 = -42 (111010110)
+-22 + -19 = -41 (111010111)
+-22 + -18 = -40 (111011000)
+-22 + -17 = -39 (111011001)
+-22 + -16 = -38 (111011010)
+-22 + -15 = -37 (111011011)
+-22 + -14 = -36 (111011100)
+-22 + -13 = -35 (111011101)
+-22 + -12 = -34 (111011110)
+-22 + -11 = -33 (111011111)
+-22 + -10 = -32 (111100000)
+-22 + -9 = -31 (111100001)
+-22 + -8 = -30 (111100010)
+-22 + -7 = -29 (111100011)
+-22 + -6 = -28 (111100100)
+-22 + -5 = -27 (111100101)
+-22 + -4 = -26 (111100110)
+-22 + -3 = -25 (111100111)
+-22 + -2 = -24 (111101000)
+-22 + -1 = -23 (111101001)
+-21 + 0 = -21 (111101011)
+-21 + 1 = -20 (111101100)
+-21 + 2 = -19 (111101101)
+-21 + 3 = -18 (111101110)
+-21 + 4 = -17 (111101111)
+-21 + 5 = -16 (111110000)
+-21 + 6 = -15 (111110001)
+-21 + 7 = -14 (111110010)
+-21 + 8 = -13 (111110011)
+-21 + 9 = -12 (111110100)
+-21 + 10 = -11 (111110101)
+-21 + 11 = -10 (111110110)
+-21 + 12 = -9 (111110111)
+-21 + 13 = -8 (111111000)
+-21 + 14 = -7 (111111001)
+-21 + 15 = -6 (111111010)
+-21 + 16 = -5 (111111011)
+-21 + 17 = -4 (111111100)
+-21 + 18 = -3 (111111101)
+-21 + 19 = -2 (111111110)
+-21 + 20 = -1 (111111111)
+-21 + 21 = 0 (000000000)
+-21 + 22 = 1 (000000001)
+-21 + 23 = 2 (000000010)
+-21 + 24 = 3 (000000011)
+-21 + 25 = 4 (000000100)
+-21 + 26 = 5 (000000101)
+-21 + 27 = 6 (000000110)
+-21 + 28 = 7 (000000111)
+-21 + 29 = 8 (000001000)
+-21 + 30 = 9 (000001001)
+-21 + 31 = 10 (000001010)
+-21 + -32 = -53 (111001011)
+-21 + -31 = -52 (111001100)
+-21 + -30 = -51 (111001101)
+-21 + -29 = -50 (111001110)
+-21 + -28 = -49 (111001111)
+-21 + -27 = -48 (111010000)
+-21 + -26 = -47 (111010001)
+-21 + -25 = -46 (111010010)
+-21 + -24 = -45 (111010011)
+-21 + -23 = -44 (111010100)
+-21 + -22 = -43 (111010101)
+-21 + -21 = -42 (111010110)
+-21 + -20 = -41 (111010111)
+-21 + -19 = -40 (111011000)
+-21 + -18 = -39 (111011001)
+-21 + -17 = -38 (111011010)
+-21 + -16 = -37 (111011011)
+-21 + -15 = -36 (111011100)
+-21 + -14 = -35 (111011101)
+-21 + -13 = -34 (111011110)
+-21 + -12 = -33 (111011111)
+-21 + -11 = -32 (111100000)
+-21 + -10 = -31 (111100001)
+-21 + -9 = -30 (111100010)
+-21 + -8 = -29 (111100011)
+-21 + -7 = -28 (111100100)
+-21 + -6 = -27 (111100101)
+-21 + -5 = -26 (111100110)
+-21 + -4 = -25 (111100111)
+-21 + -3 = -24 (111101000)
+-21 + -2 = -23 (111101001)
+-21 + -1 = -22 (111101010)
+-20 + 0 = -20 (111101100)
+-20 + 1 = -19 (111101101)
+-20 + 2 = -18 (111101110)
+-20 + 3 = -17 (111101111)
+-20 + 4 = -16 (111110000)
+-20 + 5 = -15 (111110001)
+-20 + 6 = -14 (111110010)
+-20 + 7 = -13 (111110011)
+-20 + 8 = -12 (111110100)
+-20 + 9 = -11 (111110101)
+-20 + 10 = -10 (111110110)
+-20 + 11 = -9 (111110111)
+-20 + 12 = -8 (111111000)
+-20 + 13 = -7 (111111001)
+-20 + 14 = -6 (111111010)
+-20 + 15 = -5 (111111011)
+-20 + 16 = -4 (111111100)
+-20 + 17 = -3 (111111101)
+-20 + 18 = -2 (111111110)
+-20 + 19 = -1 (111111111)
+-20 + 20 = 0 (000000000)
+-20 + 21 = 1 (000000001)
+-20 + 22 = 2 (000000010)
+-20 + 23 = 3 (000000011)
+-20 + 24 = 4 (000000100)
+-20 + 25 = 5 (000000101)
+-20 + 26 = 6 (000000110)
+-20 + 27 = 7 (000000111)
+-20 + 28 = 8 (000001000)
+-20 + 29 = 9 (000001001)
+-20 + 30 = 10 (000001010)
+-20 + 31 = 11 (000001011)
+-20 + -32 = -52 (111001100)
+-20 + -31 = -51 (111001101)
+-20 + -30 = -50 (111001110)
+-20 + -29 = -49 (111001111)
+-20 + -28 = -48 (111010000)
+-20 + -27 = -47 (111010001)
+-20 + -26 = -46 (111010010)
+-20 + -25 = -45 (111010011)
+-20 + -24 = -44 (111010100)
+-20 + -23 = -43 (111010101)
+-20 + -22 = -42 (111010110)
+-20 + -21 = -41 (111010111)
+-20 + -20 = -40 (111011000)
+-20 + -19 = -39 (111011001)
+-20 + -18 = -38 (111011010)
+-20 + -17 = -37 (111011011)
+-20 + -16 = -36 (111011100)
+-20 + -15 = -35 (111011101)
+-20 + -14 = -34 (111011110)
+-20 + -13 = -33 (111011111)
+-20 + -12 = -32 (111100000)
+-20 + -11 = -31 (111100001)
+-20 + -10 = -30 (111100010)
+-20 + -9 = -29 (111100011)
+-20 + -8 = -28 (111100100)
+-20 + -7 = -27 (111100101)
+-20 + -6 = -26 (111100110)
+-20 + -5 = -25 (111100111)
+-20 + -4 = -24 (111101000)
+-20 + -3 = -23 (111101001)
+-20 + -2 = -22 (111101010)
+-20 + -1 = -21 (111101011)
+-19 + 0 = -19 (111101101)
+-19 + 1 = -18 (111101110)
+-19 + 2 = -17 (111101111)
+-19 + 3 = -16 (111110000)
+-19 + 4 = -15 (111110001)
+-19 + 5 = -14 (111110010)
+-19 + 6 = -13 (111110011)
+-19 + 7 = -12 (111110100)
+-19 + 8 = -11 (111110101)
+-19 + 9 = -10 (111110110)
+-19 + 10 = -9 (111110111)
+-19 + 11 = -8 (111111000)
+-19 + 12 = -7 (111111001)
+-19 + 13 = -6 (111111010)
+-19 + 14 = -5 (111111011)
+-19 + 15 = -4 (111111100)
+-19 + 16 = -3 (111111101)
+-19 + 17 = -2 (111111110)
+-19 + 18 = -1 (111111111)
+-19 + 19 = 0 (000000000)
+-19 + 20 = 1 (000000001)
+-19 + 21 = 2 (000000010)
+-19 + 22 = 3 (000000011)
+-19 + 23 = 4 (000000100)
+-19 + 24 = 5 (000000101)
+-19 + 25 = 6 (000000110)
+-19 + 26 = 7 (000000111)
+-19 + 27 = 8 (000001000)
+-19 + 28 = 9 (000001001)
+-19 + 29 = 10 (000001010)
+-19 + 30 = 11 (000001011)
+-19 + 31 = 12 (000001100)
+-19 + -32 = -51 (111001101)
+-19 + -31 = -50 (111001110)
+-19 + -30 = -49 (111001111)
+-19 + -29 = -48 (111010000)
+-19 + -28 = -47 (111010001)
+-19 + -27 = -46 (111010010)
+-19 + -26 = -45 (111010011)
+-19 + -25 = -44 (111010100)
+-19 + -24 = -43 (111010101)
+-19 + -23 = -42 (111010110)
+-19 + -22 = -41 (111010111)
+-19 + -21 = -40 (111011000)
+-19 + -20 = -39 (111011001)
+-19 + -19 = -38 (111011010)
+-19 + -18 = -37 (111011011)
+-19 + -17 = -36 (111011100)
+-19 + -16 = -35 (111011101)
+-19 + -15 = -34 (111011110)
+-19 + -14 = -33 (111011111)
+-19 + -13 = -32 (111100000)
+-19 + -12 = -31 (111100001)
+-19 + -11 = -30 (111100010)
+-19 + -10 = -29 (111100011)
+-19 + -9 = -28 (111100100)
+-19 + -8 = -27 (111100101)
+-19 + -7 = -26 (111100110)
+-19 + -6 = -25 (111100111)
+-19 + -5 = -24 (111101000)
+-19 + -4 = -23 (111101001)
+-19 + -3 = -22 (111101010)
+-19 + -2 = -21 (111101011)
+-19 + -1 = -20 (111101100)
+-18 + 0 = -18 (111101110)
+-18 + 1 = -17 (111101111)
+-18 + 2 = -16 (111110000)
+-18 + 3 = -15 (111110001)
+-18 + 4 = -14 (111110010)
+-18 + 5 = -13 (111110011)
+-18 + 6 = -12 (111110100)
+-18 + 7 = -11 (111110101)
+-18 + 8 = -10 (111110110)
+-18 + 9 = -9 (111110111)
+-18 + 10 = -8 (111111000)
+-18 + 11 = -7 (111111001)
+-18 + 12 = -6 (111111010)
+-18 + 13 = -5 (111111011)
+-18 + 14 = -4 (111111100)
+-18 + 15 = -3 (111111101)
+-18 + 16 = -2 (111111110)
+-18 + 17 = -1 (111111111)
+-18 + 18 = 0 (000000000)
+-18 + 19 = 1 (000000001)
+-18 + 20 = 2 (000000010)
+-18 + 21 = 3 (000000011)
+-18 + 22 = 4 (000000100)
+-18 + 23 = 5 (000000101)
+-18 + 24 = 6 (000000110)
+-18 + 25 = 7 (000000111)
+-18 + 26 = 8 (000001000)
+-18 + 27 = 9 (000001001)
+-18 + 28 = 10 (000001010)
+-18 + 29 = 11 (000001011)
+-18 + 30 = 12 (000001100)
+-18 + 31 = 13 (000001101)
+-18 + -32 = -50 (111001110)
+-18 + -31 = -49 (111001111)
+-18 + -30 = -48 (111010000)
+-18 + -29 = -47 (111010001)
+-18 + -28 = -46 (111010010)
+-18 + -27 = -45 (111010011)
+-18 + -26 = -44 (111010100)
+-18 + -25 = -43 (111010101)
+-18 + -24 = -42 (111010110)
+-18 + -23 = -41 (111010111)
+-18 + -22 = -40 (111011000)
+-18 + -21 = -39 (111011001)
+-18 + -20 = -38 (111011010)
+-18 + -19 = -37 (111011011)
+-18 + -18 = -36 (111011100)
+-18 + -17 = -35 (111011101)
+-18 + -16 = -34 (111011110)
+-18 + -15 = -33 (111011111)
+-18 + -14 = -32 (111100000)
+-18 + -13 = -31 (111100001)
+-18 + -12 = -30 (111100010)
+-18 + -11 = -29 (111100011)
+-18 + -10 = -28 (111100100)
+-18 + -9 = -27 (111100101)
+-18 + -8 = -26 (111100110)
+-18 + -7 = -25 (111100111)
+-18 + -6 = -24 (111101000)
+-18 + -5 = -23 (111101001)
+-18 + -4 = -22 (111101010)
+-18 + -3 = -21 (111101011)
+-18 + -2 = -20 (111101100)
+-18 + -1 = -19 (111101101)
+-17 + 0 = -17 (111101111)
+-17 + 1 = -16 (111110000)
+-17 + 2 = -15 (111110001)
+-17 + 3 = -14 (111110010)
+-17 + 4 = -13 (111110011)
+-17 + 5 = -12 (111110100)
+-17 + 6 = -11 (111110101)
+-17 + 7 = -10 (111110110)
+-17 + 8 = -9 (111110111)
+-17 + 9 = -8 (111111000)
+-17 + 10 = -7 (111111001)
+-17 + 11 = -6 (111111010)
+-17 + 12 = -5 (111111011)
+-17 + 13 = -4 (111111100)
+-17 + 14 = -3 (111111101)
+-17 + 15 = -2 (111111110)
+-17 + 16 = -1 (111111111)
+-17 + 17 = 0 (000000000)
+-17 + 18 = 1 (000000001)
+-17 + 19 = 2 (000000010)
+-17 + 20 = 3 (000000011)
+-17 + 21 = 4 (000000100)
+-17 + 22 = 5 (000000101)
+-17 + 23 = 6 (000000110)
+-17 + 24 = 7 (000000111)
+-17 + 25 = 8 (000001000)
+-17 + 26 = 9 (000001001)
+-17 + 27 = 10 (000001010)
+-17 + 28 = 11 (000001011)
+-17 + 29 = 12 (000001100)
+-17 + 30 = 13 (000001101)
+-17 + 31 = 14 (000001110)
+-17 + -32 = -49 (111001111)
+-17 + -31 = -48 (111010000)
+-17 + -30 = -47 (111010001)
+-17 + -29 = -46 (111010010)
+-17 + -28 = -45 (111010011)
+-17 + -27 = -44 (111010100)
+-17 + -26 = -43 (111010101)
+-17 + -25 = -42 (111010110)
+-17 + -24 = -41 (111010111)
+-17 + -23 = -40 (111011000)
+-17 + -22 = -39 (111011001)
+-17 + -21 = -38 (111011010)
+-17 + -20 = -37 (111011011)
+-17 + -19 = -36 (111011100)
+-17 + -18 = -35 (111011101)
+-17 + -17 = -34 (111011110)
+-17 + -16 = -33 (111011111)
+-17 + -15 = -32 (111100000)
+-17 + -14 = -31 (111100001)
+-17 + -13 = -30 (111100010)
+-17 + -12 = -29 (111100011)
+-17 + -11 = -28 (111100100)
+-17 + -10 = -27 (111100101)
+-17 + -9 = -26 (111100110)
+-17 + -8 = -25 (111100111)
+-17 + -7 = -24 (111101000)
+-17 + -6 = -23 (111101001)
+-17 + -5 = -22 (111101010)
+-17 + -4 = -21 (111101011)
+-17 + -3 = -20 (111101100)
+-17 + -2 = -19 (111101101)
+-17 + -1 = -18 (111101110)
+-16 + 0 = -16 (111110000)
+-16 + 1 = -15 (111110001)
+-16 + 2 = -14 (111110010)
+-16 + 3 = -13 (111110011)
+-16 + 4 = -12 (111110100)
+-16 + 5 = -11 (111110101)
+-16 + 6 = -10 (111110110)
+-16 + 7 = -9 (111110111)
+-16 + 8 = -8 (111111000)
+-16 + 9 = -7 (111111001)
+-16 + 10 = -6 (111111010)
+-16 + 11 = -5 (111111011)
+-16 + 12 = -4 (111111100)
+-16 + 13 = -3 (111111101)
+-16 + 14 = -2 (111111110)
+-16 + 15 = -1 (111111111)
+-16 + 16 = 0 (000000000)
+-16 + 17 = 1 (000000001)
+-16 + 18 = 2 (000000010)
+-16 + 19 = 3 (000000011)
+-16 + 20 = 4 (000000100)
+-16 + 21 = 5 (000000101)
+-16 + 22 = 6 (000000110)
+-16 + 23 = 7 (000000111)
+-16 + 24 = 8 (000001000)
+-16 + 25 = 9 (000001001)
+-16 + 26 = 10 (000001010)
+-16 + 27 = 11 (000001011)
+-16 + 28 = 12 (000001100)
+-16 + 29 = 13 (000001101)
+-16 + 30 = 14 (000001110)
+-16 + 31 = 15 (000001111)
+-16 + -32 = -48 (111010000)
+-16 + -31 = -47 (111010001)
+-16 + -30 = -46 (111010010)
+-16 + -29 = -45 (111010011)
+-16 + -28 = -44 (111010100)
+-16 + -27 = -43 (111010101)
+-16 + -26 = -42 (111010110)
+-16 + -25 = -41 (111010111)
+-16 + -24 = -40 (111011000)
+-16 + -23 = -39 (111011001)
+-16 + -22 = -38 (111011010)
+-16 + -21 = -37 (111011011)
+-16 + -20 = -36 (111011100)
+-16 + -19 = -35 (111011101)
+-16 + -18 = -34 (111011110)
+-16 + -17 = -33 (111011111)
+-16 + -16 = -32 (111100000)
+-16 + -15 = -31 (111100001)
+-16 + -14 = -30 (111100010)
+-16 + -13 = -29 (111100011)
+-16 + -12 = -28 (111100100)
+-16 + -11 = -27 (111100101)
+-16 + -10 = -26 (111100110)
+-16 + -9 = -25 (111100111)
+-16 + -8 = -24 (111101000)
+-16 + -7 = -23 (111101001)
+-16 + -6 = -22 (111101010)
+-16 + -5 = -21 (111101011)
+-16 + -4 = -20 (111101100)
+-16 + -3 = -19 (111101101)
+-16 + -2 = -18 (111101110)
+-16 + -1 = -17 (111101111)
+-15 + 0 = -15 (111110001)
+-15 + 1 = -14 (111110010)
+-15 + 2 = -13 (111110011)
+-15 + 3 = -12 (111110100)
+-15 + 4 = -11 (111110101)
+-15 + 5 = -10 (111110110)
+-15 + 6 = -9 (111110111)
+-15 + 7 = -8 (111111000)
+-15 + 8 = -7 (111111001)
+-15 + 9 = -6 (111111010)
+-15 + 10 = -5 (111111011)
+-15 + 11 = -4 (111111100)
+-15 + 12 = -3 (111111101)
+-15 + 13 = -2 (111111110)
+-15 + 14 = -1 (111111111)
+-15 + 15 = 0 (000000000)
+-15 + 16 = 1 (000000001)
+-15 + 17 = 2 (000000010)
+-15 + 18 = 3 (000000011)
+-15 + 19 = 4 (000000100)
+-15 + 20 = 5 (000000101)
+-15 + 21 = 6 (000000110)
+-15 + 22 = 7 (000000111)
+-15 + 23 = 8 (000001000)
+-15 + 24 = 9 (000001001)
+-15 + 25 = 10 (000001010)
+-15 + 26 = 11 (000001011)
+-15 + 27 = 12 (000001100)
+-15 + 28 = 13 (000001101)
+-15 + 29 = 14 (000001110)
+-15 + 30 = 15 (000001111)
+-15 + 31 = 16 (000010000)
+-15 + -32 = -47 (111010001)
+-15 + -31 = -46 (111010010)
+-15 + -30 = -45 (111010011)
+-15 + -29 = -44 (111010100)
+-15 + -28 = -43 (111010101)
+-15 + -27 = -42 (111010110)
+-15 + -26 = -41 (111010111)
+-15 + -25 = -40 (111011000)
+-15 + -24 = -39 (111011001)
+-15 + -23 = -38 (111011010)
+-15 + -22 = -37 (111011011)
+-15 + -21 = -36 (111011100)
+-15 + -20 = -35 (111011101)
+-15 + -19 = -34 (111011110)
+-15 + -18 = -33 (111011111)
+-15 + -17 = -32 (111100000)
+-15 + -16 = -31 (111100001)
+-15 + -15 = -30 (111100010)
+-15 + -14 = -29 (111100011)
+-15 + -13 = -28 (111100100)
+-15 + -12 = -27 (111100101)
+-15 + -11 = -26 (111100110)
+-15 + -10 = -25 (111100111)
+-15 + -9 = -24 (111101000)
+-15 + -8 = -23 (111101001)
+-15 + -7 = -22 (111101010)
+-15 + -6 = -21 (111101011)
+-15 + -5 = -20 (111101100)
+-15 + -4 = -19 (111101101)
+-15 + -3 = -18 (111101110)
+-15 + -2 = -17 (111101111)
+-15 + -1 = -16 (111110000)
+-14 + 0 = -14 (111110010)
+-14 + 1 = -13 (111110011)
+-14 + 2 = -12 (111110100)
+-14 + 3 = -11 (111110101)
+-14 + 4 = -10 (111110110)
+-14 + 5 = -9 (111110111)
+-14 + 6 = -8 (111111000)
+-14 + 7 = -7 (111111001)
+-14 + 8 = -6 (111111010)
+-14 + 9 = -5 (111111011)
+-14 + 10 = -4 (111111100)
+-14 + 11 = -3 (111111101)
+-14 + 12 = -2 (111111110)
+-14 + 13 = -1 (111111111)
+-14 + 14 = 0 (000000000)
+-14 + 15 = 1 (000000001)
+-14 + 16 = 2 (000000010)
+-14 + 17 = 3 (000000011)
+-14 + 18 = 4 (000000100)
+-14 + 19 = 5 (000000101)
+-14 + 20 = 6 (000000110)
+-14 + 21 = 7 (000000111)
+-14 + 22 = 8 (000001000)
+-14 + 23 = 9 (000001001)
+-14 + 24 = 10 (000001010)
+-14 + 25 = 11 (000001011)
+-14 + 26 = 12 (000001100)
+-14 + 27 = 13 (000001101)
+-14 + 28 = 14 (000001110)
+-14 + 29 = 15 (000001111)
+-14 + 30 = 16 (000010000)
+-14 + 31 = 17 (000010001)
+-14 + -32 = -46 (111010010)
+-14 + -31 = -45 (111010011)
+-14 + -30 = -44 (111010100)
+-14 + -29 = -43 (111010101)
+-14 + -28 = -42 (111010110)
+-14 + -27 = -41 (111010111)
+-14 + -26 = -40 (111011000)
+-14 + -25 = -39 (111011001)
+-14 + -24 = -38 (111011010)
+-14 + -23 = -37 (111011011)
+-14 + -22 = -36 (111011100)
+-14 + -21 = -35 (111011101)
+-14 + -20 = -34 (111011110)
+-14 + -19 = -33 (111011111)
+-14 + -18 = -32 (111100000)
+-14 + -17 = -31 (111100001)
+-14 + -16 = -30 (111100010)
+-14 + -15 = -29 (111100011)
+-14 + -14 = -28 (111100100)
+-14 + -13 = -27 (111100101)
+-14 + -12 = -26 (111100110)
+-14 + -11 = -25 (111100111)
+-14 + -10 = -24 (111101000)
+-14 + -9 = -23 (111101001)
+-14 + -8 = -22 (111101010)
+-14 + -7 = -21 (111101011)
+-14 + -6 = -20 (111101100)
+-14 + -5 = -19 (111101101)
+-14 + -4 = -18 (111101110)
+-14 + -3 = -17 (111101111)
+-14 + -2 = -16 (111110000)
+-14 + -1 = -15 (111110001)
+-13 + 0 = -13 (111110011)
+-13 + 1 = -12 (111110100)
+-13 + 2 = -11 (111110101)
+-13 + 3 = -10 (111110110)
+-13 + 4 = -9 (111110111)
+-13 + 5 = -8 (111111000)
+-13 + 6 = -7 (111111001)
+-13 + 7 = -6 (111111010)
+-13 + 8 = -5 (111111011)
+-13 + 9 = -4 (111111100)
+-13 + 10 = -3 (111111101)
+-13 + 11 = -2 (111111110)
+-13 + 12 = -1 (111111111)
+-13 + 13 = 0 (000000000)
+-13 + 14 = 1 (000000001)
+-13 + 15 = 2 (000000010)
+-13 + 16 = 3 (000000011)
+-13 + 17 = 4 (000000100)
+-13 + 18 = 5 (000000101)
+-13 + 19 = 6 (000000110)
+-13 + 20 = 7 (000000111)
+-13 + 21 = 8 (000001000)
+-13 + 22 = 9 (000001001)
+-13 + 23 = 10 (000001010)
+-13 + 24 = 11 (000001011)
+-13 + 25 = 12 (000001100)
+-13 + 26 = 13 (000001101)
+-13 + 27 = 14 (000001110)
+-13 + 28 = 15 (000001111)
+-13 + 29 = 16 (000010000)
+-13 + 30 = 17 (000010001)
+-13 + 31 = 18 (000010010)
+-13 + -32 = -45 (111010011)
+-13 + -31 = -44 (111010100)
+-13 + -30 = -43 (111010101)
+-13 + -29 = -42 (111010110)
+-13 + -28 = -41 (111010111)
+-13 + -27 = -40 (111011000)
+-13 + -26 = -39 (111011001)
+-13 + -25 = -38 (111011010)
+-13 + -24 = -37 (111011011)
+-13 + -23 = -36 (111011100)
+-13 + -22 = -35 (111011101)
+-13 + -21 = -34 (111011110)
+-13 + -20 = -33 (111011111)
+-13 + -19 = -32 (111100000)
+-13 + -18 = -31 (111100001)
+-13 + -17 = -30 (111100010)
+-13 + -16 = -29 (111100011)
+-13 + -15 = -28 (111100100)
+-13 + -14 = -27 (111100101)
+-13 + -13 = -26 (111100110)
+-13 + -12 = -25 (111100111)
+-13 + -11 = -24 (111101000)
+-13 + -10 = -23 (111101001)
+-13 + -9 = -22 (111101010)
+-13 + -8 = -21 (111101011)
+-13 + -7 = -20 (111101100)
+-13 + -6 = -19 (111101101)
+-13 + -5 = -18 (111101110)
+-13 + -4 = -17 (111101111)
+-13 + -3 = -16 (111110000)
+-13 + -2 = -15 (111110001)
+-13 + -1 = -14 (111110010)
+-12 + 0 = -12 (111110100)
+-12 + 1 = -11 (111110101)
+-12 + 2 = -10 (111110110)
+-12 + 3 = -9 (111110111)
+-12 + 4 = -8 (111111000)
+-12 + 5 = -7 (111111001)
+-12 + 6 = -6 (111111010)
+-12 + 7 = -5 (111111011)
+-12 + 8 = -4 (111111100)
+-12 + 9 = -3 (111111101)
+-12 + 10 = -2 (111111110)
+-12 + 11 = -1 (111111111)
+-12 + 12 = 0 (000000000)
+-12 + 13 = 1 (000000001)
+-12 + 14 = 2 (000000010)
+-12 + 15 = 3 (000000011)
+-12 + 16 = 4 (000000100)
+-12 + 17 = 5 (000000101)
+-12 + 18 = 6 (000000110)
+-12 + 19 = 7 (000000111)
+-12 + 20 = 8 (000001000)
+-12 + 21 = 9 (000001001)
+-12 + 22 = 10 (000001010)
+-12 + 23 = 11 (000001011)
+-12 + 24 = 12 (000001100)
+-12 + 25 = 13 (000001101)
+-12 + 26 = 14 (000001110)
+-12 + 27 = 15 (000001111)
+-12 + 28 = 16 (000010000)
+-12 + 29 = 17 (000010001)
+-12 + 30 = 18 (000010010)
+-12 + 31 = 19 (000010011)
+-12 + -32 = -44 (111010100)
+-12 + -31 = -43 (111010101)
+-12 + -30 = -42 (111010110)
+-12 + -29 = -41 (111010111)
+-12 + -28 = -40 (111011000)
+-12 + -27 = -39 (111011001)
+-12 + -26 = -38 (111011010)
+-12 + -25 = -37 (111011011)
+-12 + -24 = -36 (111011100)
+-12 + -23 = -35 (111011101)
+-12 + -22 = -34 (111011110)
+-12 + -21 = -33 (111011111)
+-12 + -20 = -32 (111100000)
+-12 + -19 = -31 (111100001)
+-12 + -18 = -30 (111100010)
+-12 + -17 = -29 (111100011)
+-12 + -16 = -28 (111100100)
+-12 + -15 = -27 (111100101)
+-12 + -14 = -26 (111100110)
+-12 + -13 = -25 (111100111)
+-12 + -12 = -24 (111101000)
+-12 + -11 = -23 (111101001)
+-12 + -10 = -22 (111101010)
+-12 + -9 = -21 (111101011)
+-12 + -8 = -20 (111101100)
+-12 + -7 = -19 (111101101)
+-12 + -6 = -18 (111101110)
+-12 + -5 = -17 (111101111)
+-12 + -4 = -16 (111110000)
+-12 + -3 = -15 (111110001)
+-12 + -2 = -14 (111110010)
+-12 + -1 = -13 (111110011)
+-11 + 0 = -11 (111110101)
+-11 + 1 = -10 (111110110)
+-11 + 2 = -9 (111110111)
+-11 + 3 = -8 (111111000)
+-11 + 4 = -7 (111111001)
+-11 + 5 = -6 (111111010)
+-11 + 6 = -5 (111111011)
+-11 + 7 = -4 (111111100)
+-11 + 8 = -3 (111111101)
+-11 + 9 = -2 (111111110)
+-11 + 10 = -1 (111111111)
+-11 + 11 = 0 (000000000)
+-11 + 12 = 1 (000000001)
+-11 + 13 = 2 (000000010)
+-11 + 14 = 3 (000000011)
+-11 + 15 = 4 (000000100)
+-11 + 16 = 5 (000000101)
+-11 + 17 = 6 (000000110)
+-11 + 18 = 7 (000000111)
+-11 + 19 = 8 (000001000)
+-11 + 20 = 9 (000001001)
+-11 + 21 = 10 (000001010)
+-11 + 22 = 11 (000001011)
+-11 + 23 = 12 (000001100)
+-11 + 24 = 13 (000001101)
+-11 + 25 = 14 (000001110)
+-11 + 26 = 15 (000001111)
+-11 + 27 = 16 (000010000)
+-11 + 28 = 17 (000010001)
+-11 + 29 = 18 (000010010)
+-11 + 30 = 19 (000010011)
+-11 + 31 = 20 (000010100)
+-11 + -32 = -43 (111010101)
+-11 + -31 = -42 (111010110)
+-11 + -30 = -41 (111010111)
+-11 + -29 = -40 (111011000)
+-11 + -28 = -39 (111011001)
+-11 + -27 = -38 (111011010)
+-11 + -26 = -37 (111011011)
+-11 + -25 = -36 (111011100)
+-11 + -24 = -35 (111011101)
+-11 + -23 = -34 (111011110)
+-11 + -22 = -33 (111011111)
+-11 + -21 = -32 (111100000)
+-11 + -20 = -31 (111100001)
+-11 + -19 = -30 (111100010)
+-11 + -18 = -29 (111100011)
+-11 + -17 = -28 (111100100)
+-11 + -16 = -27 (111100101)
+-11 + -15 = -26 (111100110)
+-11 + -14 = -25 (111100111)
+-11 + -13 = -24 (111101000)
+-11 + -12 = -23 (111101001)
+-11 + -11 = -22 (111101010)
+-11 + -10 = -21 (111101011)
+-11 + -9 = -20 (111101100)
+-11 + -8 = -19 (111101101)
+-11 + -7 = -18 (111101110)
+-11 + -6 = -17 (111101111)
+-11 + -5 = -16 (111110000)
+-11 + -4 = -15 (111110001)
+-11 + -3 = -14 (111110010)
+-11 + -2 = -13 (111110011)
+-11 + -1 = -12 (111110100)
+-10 + 0 = -10 (111110110)
+-10 + 1 = -9 (111110111)
+-10 + 2 = -8 (111111000)
+-10 + 3 = -7 (111111001)
+-10 + 4 = -6 (111111010)
+-10 + 5 = -5 (111111011)
+-10 + 6 = -4 (111111100)
+-10 + 7 = -3 (111111101)
+-10 + 8 = -2 (111111110)
+-10 + 9 = -1 (111111111)
+-10 + 10 = 0 (000000000)
+-10 + 11 = 1 (000000001)
+-10 + 12 = 2 (000000010)
+-10 + 13 = 3 (000000011)
+-10 + 14 = 4 (000000100)
+-10 + 15 = 5 (000000101)
+-10 + 16 = 6 (000000110)
+-10 + 17 = 7 (000000111)
+-10 + 18 = 8 (000001000)
+-10 + 19 = 9 (000001001)
+-10 + 20 = 10 (000001010)
+-10 + 21 = 11 (000001011)
+-10 + 22 = 12 (000001100)
+-10 + 23 = 13 (000001101)
+-10 + 24 = 14 (000001110)
+-10 + 25 = 15 (000001111)
+-10 + 26 = 16 (000010000)
+-10 + 27 = 17 (000010001)
+-10 + 28 = 18 (000010010)
+-10 + 29 = 19 (000010011)
+-10 + 30 = 20 (000010100)
+-10 + 31 = 21 (000010101)
+-10 + -32 = -42 (111010110)
+-10 + -31 = -41 (111010111)
+-10 + -30 = -40 (111011000)
+-10 + -29 = -39 (111011001)
+-10 + -28 = -38 (111011010)
+-10 + -27 = -37 (111011011)
+-10 + -26 = -36 (111011100)
+-10 + -25 = -35 (111011101)
+-10 + -24 = -34 (111011110)
+-10 + -23 = -33 (111011111)
+-10 + -22 = -32 (111100000)
+-10 + -21 = -31 (111100001)
+-10 + -20 = -30 (111100010)
+-10 + -19 = -29 (111100011)
+-10 + -18 = -28 (111100100)
+-10 + -17 = -27 (111100101)
+-10 + -16 = -26 (111100110)
+-10 + -15 = -25 (111100111)
+-10 + -14 = -24 (111101000)
+-10 + -13 = -23 (111101001)
+-10 + -12 = -22 (111101010)
+-10 + -11 = -21 (111101011)
+-10 + -10 = -20 (111101100)
+-10 + -9 = -19 (111101101)
+-10 + -8 = -18 (111101110)
+-10 + -7 = -17 (111101111)
+-10 + -6 = -16 (111110000)
+-10 + -5 = -15 (111110001)
+-10 + -4 = -14 (111110010)
+-10 + -3 = -13 (111110011)
+-10 + -2 = -12 (111110100)
+-10 + -1 = -11 (111110101)
+-9 + 0 = -9 (111110111)
+-9 + 1 = -8 (111111000)
+-9 + 2 = -7 (111111001)
+-9 + 3 = -6 (111111010)
+-9 + 4 = -5 (111111011)
+-9 + 5 = -4 (111111100)
+-9 + 6 = -3 (111111101)
+-9 + 7 = -2 (111111110)
+-9 + 8 = -1 (111111111)
+-9 + 9 = 0 (000000000)
+-9 + 10 = 1 (000000001)
+-9 + 11 = 2 (000000010)
+-9 + 12 = 3 (000000011)
+-9 + 13 = 4 (000000100)
+-9 + 14 = 5 (000000101)
+-9 + 15 = 6 (000000110)
+-9 + 16 = 7 (000000111)
+-9 + 17 = 8 (000001000)
+-9 + 18 = 9 (000001001)
+-9 + 19 = 10 (000001010)
+-9 + 20 = 11 (000001011)
+-9 + 21 = 12 (000001100)
+-9 + 22 = 13 (000001101)
+-9 + 23 = 14 (000001110)
+-9 + 24 = 15 (000001111)
+-9 + 25 = 16 (000010000)
+-9 + 26 = 17 (000010001)
+-9 + 27 = 18 (000010010)
+-9 + 28 = 19 (000010011)
+-9 + 29 = 20 (000010100)
+-9 + 30 = 21 (000010101)
+-9 + 31 = 22 (000010110)
+-9 + -32 = -41 (111010111)
+-9 + -31 = -40 (111011000)
+-9 + -30 = -39 (111011001)
+-9 + -29 = -38 (111011010)
+-9 + -28 = -37 (111011011)
+-9 + -27 = -36 (111011100)
+-9 + -26 = -35 (111011101)
+-9 + -25 = -34 (111011110)
+-9 + -24 = -33 (111011111)
+-9 + -23 = -32 (111100000)
+-9 + -22 = -31 (111100001)
+-9 + -21 = -30 (111100010)
+-9 + -20 = -29 (111100011)
+-9 + -19 = -28 (111100100)
+-9 + -18 = -27 (111100101)
+-9 + -17 = -26 (111100110)
+-9 + -16 = -25 (111100111)
+-9 + -15 = -24 (111101000)
+-9 + -14 = -23 (111101001)
+-9 + -13 = -22 (111101010)
+-9 + -12 = -21 (111101011)
+-9 + -11 = -20 (111101100)
+-9 + -10 = -19 (111101101)
+-9 + -9 = -18 (111101110)
+-9 + -8 = -17 (111101111)
+-9 + -7 = -16 (111110000)
+-9 + -6 = -15 (111110001)
+-9 + -5 = -14 (111110010)
+-9 + -4 = -13 (111110011)
+-9 + -3 = -12 (111110100)
+-9 + -2 = -11 (111110101)
+-9 + -1 = -10 (111110110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/main.cpp
new file mode 100644
index 000000000..ccfbe280b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/main.cpp
@@ -0,0 +1,79 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 9-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 9;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector9 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/stimgen.h
new file mode 100644
index 000000000..3988984dd
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/extension/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector9& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector9& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/common.h
new file mode 100644
index 000000000..390c0c407
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<6> bool_vector;
+typedef sc_signal<bool_vector> signal_bool_vector;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/datawidth.cpp
new file mode 100644
index 000000000..e07285cbf
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector tmp_a;
+ bool_vector tmp_b;
+ bool_vector tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_int() + tmp_b.to_int();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/datawidth.h
new file mode 100644
index 000000000..a8aaf9061
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector& in1;
+ const signal_bool_vector& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector& IN1,
+ const signal_bool_vector& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/golden/lost_carry.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/golden/lost_carry.log
new file mode 100644
index 000000000..f36976512
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/golden/lost_carry.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = -32 (100000)
+8 + 25 = -31 (100001)
+8 + 26 = -30 (100010)
+8 + 27 = -29 (100011)
+8 + 28 = -28 (100100)
+8 + 29 = -27 (100101)
+8 + 30 = -26 (100110)
+8 + 31 = -25 (100111)
+8 + -32 = -24 (101000)
+8 + -31 = -23 (101001)
+8 + -30 = -22 (101010)
+8 + -29 = -21 (101011)
+8 + -28 = -20 (101100)
+8 + -27 = -19 (101101)
+8 + -26 = -18 (101110)
+8 + -25 = -17 (101111)
+8 + -24 = -16 (110000)
+8 + -23 = -15 (110001)
+8 + -22 = -14 (110010)
+8 + -21 = -13 (110011)
+8 + -20 = -12 (110100)
+8 + -19 = -11 (110101)
+8 + -18 = -10 (110110)
+8 + -17 = -9 (110111)
+8 + -16 = -8 (111000)
+8 + -15 = -7 (111001)
+8 + -14 = -6 (111010)
+8 + -13 = -5 (111011)
+8 + -12 = -4 (111100)
+8 + -11 = -3 (111101)
+8 + -10 = -2 (111110)
+8 + -9 = -1 (111111)
+8 + -8 = 0 (000000)
+8 + -7 = 1 (000001)
+8 + -6 = 2 (000010)
+8 + -5 = 3 (000011)
+8 + -4 = 4 (000100)
+8 + -3 = 5 (000101)
+8 + -2 = 6 (000110)
+8 + -1 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = -32 (100000)
+9 + 24 = -31 (100001)
+9 + 25 = -30 (100010)
+9 + 26 = -29 (100011)
+9 + 27 = -28 (100100)
+9 + 28 = -27 (100101)
+9 + 29 = -26 (100110)
+9 + 30 = -25 (100111)
+9 + 31 = -24 (101000)
+9 + -32 = -23 (101001)
+9 + -31 = -22 (101010)
+9 + -30 = -21 (101011)
+9 + -29 = -20 (101100)
+9 + -28 = -19 (101101)
+9 + -27 = -18 (101110)
+9 + -26 = -17 (101111)
+9 + -25 = -16 (110000)
+9 + -24 = -15 (110001)
+9 + -23 = -14 (110010)
+9 + -22 = -13 (110011)
+9 + -21 = -12 (110100)
+9 + -20 = -11 (110101)
+9 + -19 = -10 (110110)
+9 + -18 = -9 (110111)
+9 + -17 = -8 (111000)
+9 + -16 = -7 (111001)
+9 + -15 = -6 (111010)
+9 + -14 = -5 (111011)
+9 + -13 = -4 (111100)
+9 + -12 = -3 (111101)
+9 + -11 = -2 (111110)
+9 + -10 = -1 (111111)
+9 + -9 = 0 (000000)
+9 + -8 = 1 (000001)
+9 + -7 = 2 (000010)
+9 + -6 = 3 (000011)
+9 + -5 = 4 (000100)
+9 + -4 = 5 (000101)
+9 + -3 = 6 (000110)
+9 + -2 = 7 (000111)
+9 + -1 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = -32 (100000)
+10 + 23 = -31 (100001)
+10 + 24 = -30 (100010)
+10 + 25 = -29 (100011)
+10 + 26 = -28 (100100)
+10 + 27 = -27 (100101)
+10 + 28 = -26 (100110)
+10 + 29 = -25 (100111)
+10 + 30 = -24 (101000)
+10 + 31 = -23 (101001)
+10 + -32 = -22 (101010)
+10 + -31 = -21 (101011)
+10 + -30 = -20 (101100)
+10 + -29 = -19 (101101)
+10 + -28 = -18 (101110)
+10 + -27 = -17 (101111)
+10 + -26 = -16 (110000)
+10 + -25 = -15 (110001)
+10 + -24 = -14 (110010)
+10 + -23 = -13 (110011)
+10 + -22 = -12 (110100)
+10 + -21 = -11 (110101)
+10 + -20 = -10 (110110)
+10 + -19 = -9 (110111)
+10 + -18 = -8 (111000)
+10 + -17 = -7 (111001)
+10 + -16 = -6 (111010)
+10 + -15 = -5 (111011)
+10 + -14 = -4 (111100)
+10 + -13 = -3 (111101)
+10 + -12 = -2 (111110)
+10 + -11 = -1 (111111)
+10 + -10 = 0 (000000)
+10 + -9 = 1 (000001)
+10 + -8 = 2 (000010)
+10 + -7 = 3 (000011)
+10 + -6 = 4 (000100)
+10 + -5 = 5 (000101)
+10 + -4 = 6 (000110)
+10 + -3 = 7 (000111)
+10 + -2 = 8 (001000)
+10 + -1 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = -32 (100000)
+11 + 22 = -31 (100001)
+11 + 23 = -30 (100010)
+11 + 24 = -29 (100011)
+11 + 25 = -28 (100100)
+11 + 26 = -27 (100101)
+11 + 27 = -26 (100110)
+11 + 28 = -25 (100111)
+11 + 29 = -24 (101000)
+11 + 30 = -23 (101001)
+11 + 31 = -22 (101010)
+11 + -32 = -21 (101011)
+11 + -31 = -20 (101100)
+11 + -30 = -19 (101101)
+11 + -29 = -18 (101110)
+11 + -28 = -17 (101111)
+11 + -27 = -16 (110000)
+11 + -26 = -15 (110001)
+11 + -25 = -14 (110010)
+11 + -24 = -13 (110011)
+11 + -23 = -12 (110100)
+11 + -22 = -11 (110101)
+11 + -21 = -10 (110110)
+11 + -20 = -9 (110111)
+11 + -19 = -8 (111000)
+11 + -18 = -7 (111001)
+11 + -17 = -6 (111010)
+11 + -16 = -5 (111011)
+11 + -15 = -4 (111100)
+11 + -14 = -3 (111101)
+11 + -13 = -2 (111110)
+11 + -12 = -1 (111111)
+11 + -11 = 0 (000000)
+11 + -10 = 1 (000001)
+11 + -9 = 2 (000010)
+11 + -8 = 3 (000011)
+11 + -7 = 4 (000100)
+11 + -6 = 5 (000101)
+11 + -5 = 6 (000110)
+11 + -4 = 7 (000111)
+11 + -3 = 8 (001000)
+11 + -2 = 9 (001001)
+11 + -1 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = -32 (100000)
+12 + 21 = -31 (100001)
+12 + 22 = -30 (100010)
+12 + 23 = -29 (100011)
+12 + 24 = -28 (100100)
+12 + 25 = -27 (100101)
+12 + 26 = -26 (100110)
+12 + 27 = -25 (100111)
+12 + 28 = -24 (101000)
+12 + 29 = -23 (101001)
+12 + 30 = -22 (101010)
+12 + 31 = -21 (101011)
+12 + -32 = -20 (101100)
+12 + -31 = -19 (101101)
+12 + -30 = -18 (101110)
+12 + -29 = -17 (101111)
+12 + -28 = -16 (110000)
+12 + -27 = -15 (110001)
+12 + -26 = -14 (110010)
+12 + -25 = -13 (110011)
+12 + -24 = -12 (110100)
+12 + -23 = -11 (110101)
+12 + -22 = -10 (110110)
+12 + -21 = -9 (110111)
+12 + -20 = -8 (111000)
+12 + -19 = -7 (111001)
+12 + -18 = -6 (111010)
+12 + -17 = -5 (111011)
+12 + -16 = -4 (111100)
+12 + -15 = -3 (111101)
+12 + -14 = -2 (111110)
+12 + -13 = -1 (111111)
+12 + -12 = 0 (000000)
+12 + -11 = 1 (000001)
+12 + -10 = 2 (000010)
+12 + -9 = 3 (000011)
+12 + -8 = 4 (000100)
+12 + -7 = 5 (000101)
+12 + -6 = 6 (000110)
+12 + -5 = 7 (000111)
+12 + -4 = 8 (001000)
+12 + -3 = 9 (001001)
+12 + -2 = 10 (001010)
+12 + -1 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = -32 (100000)
+13 + 20 = -31 (100001)
+13 + 21 = -30 (100010)
+13 + 22 = -29 (100011)
+13 + 23 = -28 (100100)
+13 + 24 = -27 (100101)
+13 + 25 = -26 (100110)
+13 + 26 = -25 (100111)
+13 + 27 = -24 (101000)
+13 + 28 = -23 (101001)
+13 + 29 = -22 (101010)
+13 + 30 = -21 (101011)
+13 + 31 = -20 (101100)
+13 + -32 = -19 (101101)
+13 + -31 = -18 (101110)
+13 + -30 = -17 (101111)
+13 + -29 = -16 (110000)
+13 + -28 = -15 (110001)
+13 + -27 = -14 (110010)
+13 + -26 = -13 (110011)
+13 + -25 = -12 (110100)
+13 + -24 = -11 (110101)
+13 + -23 = -10 (110110)
+13 + -22 = -9 (110111)
+13 + -21 = -8 (111000)
+13 + -20 = -7 (111001)
+13 + -19 = -6 (111010)
+13 + -18 = -5 (111011)
+13 + -17 = -4 (111100)
+13 + -16 = -3 (111101)
+13 + -15 = -2 (111110)
+13 + -14 = -1 (111111)
+13 + -13 = 0 (000000)
+13 + -12 = 1 (000001)
+13 + -11 = 2 (000010)
+13 + -10 = 3 (000011)
+13 + -9 = 4 (000100)
+13 + -8 = 5 (000101)
+13 + -7 = 6 (000110)
+13 + -6 = 7 (000111)
+13 + -5 = 8 (001000)
+13 + -4 = 9 (001001)
+13 + -3 = 10 (001010)
+13 + -2 = 11 (001011)
+13 + -1 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = -32 (100000)
+14 + 19 = -31 (100001)
+14 + 20 = -30 (100010)
+14 + 21 = -29 (100011)
+14 + 22 = -28 (100100)
+14 + 23 = -27 (100101)
+14 + 24 = -26 (100110)
+14 + 25 = -25 (100111)
+14 + 26 = -24 (101000)
+14 + 27 = -23 (101001)
+14 + 28 = -22 (101010)
+14 + 29 = -21 (101011)
+14 + 30 = -20 (101100)
+14 + 31 = -19 (101101)
+14 + -32 = -18 (101110)
+14 + -31 = -17 (101111)
+14 + -30 = -16 (110000)
+14 + -29 = -15 (110001)
+14 + -28 = -14 (110010)
+14 + -27 = -13 (110011)
+14 + -26 = -12 (110100)
+14 + -25 = -11 (110101)
+14 + -24 = -10 (110110)
+14 + -23 = -9 (110111)
+14 + -22 = -8 (111000)
+14 + -21 = -7 (111001)
+14 + -20 = -6 (111010)
+14 + -19 = -5 (111011)
+14 + -18 = -4 (111100)
+14 + -17 = -3 (111101)
+14 + -16 = -2 (111110)
+14 + -15 = -1 (111111)
+14 + -14 = 0 (000000)
+14 + -13 = 1 (000001)
+14 + -12 = 2 (000010)
+14 + -11 = 3 (000011)
+14 + -10 = 4 (000100)
+14 + -9 = 5 (000101)
+14 + -8 = 6 (000110)
+14 + -7 = 7 (000111)
+14 + -6 = 8 (001000)
+14 + -5 = 9 (001001)
+14 + -4 = 10 (001010)
+14 + -3 = 11 (001011)
+14 + -2 = 12 (001100)
+14 + -1 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = -32 (100000)
+15 + 18 = -31 (100001)
+15 + 19 = -30 (100010)
+15 + 20 = -29 (100011)
+15 + 21 = -28 (100100)
+15 + 22 = -27 (100101)
+15 + 23 = -26 (100110)
+15 + 24 = -25 (100111)
+15 + 25 = -24 (101000)
+15 + 26 = -23 (101001)
+15 + 27 = -22 (101010)
+15 + 28 = -21 (101011)
+15 + 29 = -20 (101100)
+15 + 30 = -19 (101101)
+15 + 31 = -18 (101110)
+15 + -32 = -17 (101111)
+15 + -31 = -16 (110000)
+15 + -30 = -15 (110001)
+15 + -29 = -14 (110010)
+15 + -28 = -13 (110011)
+15 + -27 = -12 (110100)
+15 + -26 = -11 (110101)
+15 + -25 = -10 (110110)
+15 + -24 = -9 (110111)
+15 + -23 = -8 (111000)
+15 + -22 = -7 (111001)
+15 + -21 = -6 (111010)
+15 + -20 = -5 (111011)
+15 + -19 = -4 (111100)
+15 + -18 = -3 (111101)
+15 + -17 = -2 (111110)
+15 + -16 = -1 (111111)
+15 + -15 = 0 (000000)
+15 + -14 = 1 (000001)
+15 + -13 = 2 (000010)
+15 + -12 = 3 (000011)
+15 + -11 = 4 (000100)
+15 + -10 = 5 (000101)
+15 + -9 = 6 (000110)
+15 + -8 = 7 (000111)
+15 + -7 = 8 (001000)
+15 + -6 = 9 (001001)
+15 + -5 = 10 (001010)
+15 + -4 = 11 (001011)
+15 + -3 = 12 (001100)
+15 + -2 = 13 (001101)
+15 + -1 = 14 (001110)
+16 + 0 = 16 (010000)
+16 + 1 = 17 (010001)
+16 + 2 = 18 (010010)
+16 + 3 = 19 (010011)
+16 + 4 = 20 (010100)
+16 + 5 = 21 (010101)
+16 + 6 = 22 (010110)
+16 + 7 = 23 (010111)
+16 + 8 = 24 (011000)
+16 + 9 = 25 (011001)
+16 + 10 = 26 (011010)
+16 + 11 = 27 (011011)
+16 + 12 = 28 (011100)
+16 + 13 = 29 (011101)
+16 + 14 = 30 (011110)
+16 + 15 = 31 (011111)
+16 + 16 = -32 (100000)
+16 + 17 = -31 (100001)
+16 + 18 = -30 (100010)
+16 + 19 = -29 (100011)
+16 + 20 = -28 (100100)
+16 + 21 = -27 (100101)
+16 + 22 = -26 (100110)
+16 + 23 = -25 (100111)
+16 + 24 = -24 (101000)
+16 + 25 = -23 (101001)
+16 + 26 = -22 (101010)
+16 + 27 = -21 (101011)
+16 + 28 = -20 (101100)
+16 + 29 = -19 (101101)
+16 + 30 = -18 (101110)
+16 + 31 = -17 (101111)
+16 + -32 = -16 (110000)
+16 + -31 = -15 (110001)
+16 + -30 = -14 (110010)
+16 + -29 = -13 (110011)
+16 + -28 = -12 (110100)
+16 + -27 = -11 (110101)
+16 + -26 = -10 (110110)
+16 + -25 = -9 (110111)
+16 + -24 = -8 (111000)
+16 + -23 = -7 (111001)
+16 + -22 = -6 (111010)
+16 + -21 = -5 (111011)
+16 + -20 = -4 (111100)
+16 + -19 = -3 (111101)
+16 + -18 = -2 (111110)
+16 + -17 = -1 (111111)
+16 + -16 = 0 (000000)
+16 + -15 = 1 (000001)
+16 + -14 = 2 (000010)
+16 + -13 = 3 (000011)
+16 + -12 = 4 (000100)
+16 + -11 = 5 (000101)
+16 + -10 = 6 (000110)
+16 + -9 = 7 (000111)
+16 + -8 = 8 (001000)
+16 + -7 = 9 (001001)
+16 + -6 = 10 (001010)
+16 + -5 = 11 (001011)
+16 + -4 = 12 (001100)
+16 + -3 = 13 (001101)
+16 + -2 = 14 (001110)
+16 + -1 = 15 (001111)
+17 + 0 = 17 (010001)
+17 + 1 = 18 (010010)
+17 + 2 = 19 (010011)
+17 + 3 = 20 (010100)
+17 + 4 = 21 (010101)
+17 + 5 = 22 (010110)
+17 + 6 = 23 (010111)
+17 + 7 = 24 (011000)
+17 + 8 = 25 (011001)
+17 + 9 = 26 (011010)
+17 + 10 = 27 (011011)
+17 + 11 = 28 (011100)
+17 + 12 = 29 (011101)
+17 + 13 = 30 (011110)
+17 + 14 = 31 (011111)
+17 + 15 = -32 (100000)
+17 + 16 = -31 (100001)
+17 + 17 = -30 (100010)
+17 + 18 = -29 (100011)
+17 + 19 = -28 (100100)
+17 + 20 = -27 (100101)
+17 + 21 = -26 (100110)
+17 + 22 = -25 (100111)
+17 + 23 = -24 (101000)
+17 + 24 = -23 (101001)
+17 + 25 = -22 (101010)
+17 + 26 = -21 (101011)
+17 + 27 = -20 (101100)
+17 + 28 = -19 (101101)
+17 + 29 = -18 (101110)
+17 + 30 = -17 (101111)
+17 + 31 = -16 (110000)
+17 + -32 = -15 (110001)
+17 + -31 = -14 (110010)
+17 + -30 = -13 (110011)
+17 + -29 = -12 (110100)
+17 + -28 = -11 (110101)
+17 + -27 = -10 (110110)
+17 + -26 = -9 (110111)
+17 + -25 = -8 (111000)
+17 + -24 = -7 (111001)
+17 + -23 = -6 (111010)
+17 + -22 = -5 (111011)
+17 + -21 = -4 (111100)
+17 + -20 = -3 (111101)
+17 + -19 = -2 (111110)
+17 + -18 = -1 (111111)
+17 + -17 = 0 (000000)
+17 + -16 = 1 (000001)
+17 + -15 = 2 (000010)
+17 + -14 = 3 (000011)
+17 + -13 = 4 (000100)
+17 + -12 = 5 (000101)
+17 + -11 = 6 (000110)
+17 + -10 = 7 (000111)
+17 + -9 = 8 (001000)
+17 + -8 = 9 (001001)
+17 + -7 = 10 (001010)
+17 + -6 = 11 (001011)
+17 + -5 = 12 (001100)
+17 + -4 = 13 (001101)
+17 + -3 = 14 (001110)
+17 + -2 = 15 (001111)
+17 + -1 = 16 (010000)
+18 + 0 = 18 (010010)
+18 + 1 = 19 (010011)
+18 + 2 = 20 (010100)
+18 + 3 = 21 (010101)
+18 + 4 = 22 (010110)
+18 + 5 = 23 (010111)
+18 + 6 = 24 (011000)
+18 + 7 = 25 (011001)
+18 + 8 = 26 (011010)
+18 + 9 = 27 (011011)
+18 + 10 = 28 (011100)
+18 + 11 = 29 (011101)
+18 + 12 = 30 (011110)
+18 + 13 = 31 (011111)
+18 + 14 = -32 (100000)
+18 + 15 = -31 (100001)
+18 + 16 = -30 (100010)
+18 + 17 = -29 (100011)
+18 + 18 = -28 (100100)
+18 + 19 = -27 (100101)
+18 + 20 = -26 (100110)
+18 + 21 = -25 (100111)
+18 + 22 = -24 (101000)
+18 + 23 = -23 (101001)
+18 + 24 = -22 (101010)
+18 + 25 = -21 (101011)
+18 + 26 = -20 (101100)
+18 + 27 = -19 (101101)
+18 + 28 = -18 (101110)
+18 + 29 = -17 (101111)
+18 + 30 = -16 (110000)
+18 + 31 = -15 (110001)
+18 + -32 = -14 (110010)
+18 + -31 = -13 (110011)
+18 + -30 = -12 (110100)
+18 + -29 = -11 (110101)
+18 + -28 = -10 (110110)
+18 + -27 = -9 (110111)
+18 + -26 = -8 (111000)
+18 + -25 = -7 (111001)
+18 + -24 = -6 (111010)
+18 + -23 = -5 (111011)
+18 + -22 = -4 (111100)
+18 + -21 = -3 (111101)
+18 + -20 = -2 (111110)
+18 + -19 = -1 (111111)
+18 + -18 = 0 (000000)
+18 + -17 = 1 (000001)
+18 + -16 = 2 (000010)
+18 + -15 = 3 (000011)
+18 + -14 = 4 (000100)
+18 + -13 = 5 (000101)
+18 + -12 = 6 (000110)
+18 + -11 = 7 (000111)
+18 + -10 = 8 (001000)
+18 + -9 = 9 (001001)
+18 + -8 = 10 (001010)
+18 + -7 = 11 (001011)
+18 + -6 = 12 (001100)
+18 + -5 = 13 (001101)
+18 + -4 = 14 (001110)
+18 + -3 = 15 (001111)
+18 + -2 = 16 (010000)
+18 + -1 = 17 (010001)
+19 + 0 = 19 (010011)
+19 + 1 = 20 (010100)
+19 + 2 = 21 (010101)
+19 + 3 = 22 (010110)
+19 + 4 = 23 (010111)
+19 + 5 = 24 (011000)
+19 + 6 = 25 (011001)
+19 + 7 = 26 (011010)
+19 + 8 = 27 (011011)
+19 + 9 = 28 (011100)
+19 + 10 = 29 (011101)
+19 + 11 = 30 (011110)
+19 + 12 = 31 (011111)
+19 + 13 = -32 (100000)
+19 + 14 = -31 (100001)
+19 + 15 = -30 (100010)
+19 + 16 = -29 (100011)
+19 + 17 = -28 (100100)
+19 + 18 = -27 (100101)
+19 + 19 = -26 (100110)
+19 + 20 = -25 (100111)
+19 + 21 = -24 (101000)
+19 + 22 = -23 (101001)
+19 + 23 = -22 (101010)
+19 + 24 = -21 (101011)
+19 + 25 = -20 (101100)
+19 + 26 = -19 (101101)
+19 + 27 = -18 (101110)
+19 + 28 = -17 (101111)
+19 + 29 = -16 (110000)
+19 + 30 = -15 (110001)
+19 + 31 = -14 (110010)
+19 + -32 = -13 (110011)
+19 + -31 = -12 (110100)
+19 + -30 = -11 (110101)
+19 + -29 = -10 (110110)
+19 + -28 = -9 (110111)
+19 + -27 = -8 (111000)
+19 + -26 = -7 (111001)
+19 + -25 = -6 (111010)
+19 + -24 = -5 (111011)
+19 + -23 = -4 (111100)
+19 + -22 = -3 (111101)
+19 + -21 = -2 (111110)
+19 + -20 = -1 (111111)
+19 + -19 = 0 (000000)
+19 + -18 = 1 (000001)
+19 + -17 = 2 (000010)
+19 + -16 = 3 (000011)
+19 + -15 = 4 (000100)
+19 + -14 = 5 (000101)
+19 + -13 = 6 (000110)
+19 + -12 = 7 (000111)
+19 + -11 = 8 (001000)
+19 + -10 = 9 (001001)
+19 + -9 = 10 (001010)
+19 + -8 = 11 (001011)
+19 + -7 = 12 (001100)
+19 + -6 = 13 (001101)
+19 + -5 = 14 (001110)
+19 + -4 = 15 (001111)
+19 + -3 = 16 (010000)
+19 + -2 = 17 (010001)
+19 + -1 = 18 (010010)
+20 + 0 = 20 (010100)
+20 + 1 = 21 (010101)
+20 + 2 = 22 (010110)
+20 + 3 = 23 (010111)
+20 + 4 = 24 (011000)
+20 + 5 = 25 (011001)
+20 + 6 = 26 (011010)
+20 + 7 = 27 (011011)
+20 + 8 = 28 (011100)
+20 + 9 = 29 (011101)
+20 + 10 = 30 (011110)
+20 + 11 = 31 (011111)
+20 + 12 = -32 (100000)
+20 + 13 = -31 (100001)
+20 + 14 = -30 (100010)
+20 + 15 = -29 (100011)
+20 + 16 = -28 (100100)
+20 + 17 = -27 (100101)
+20 + 18 = -26 (100110)
+20 + 19 = -25 (100111)
+20 + 20 = -24 (101000)
+20 + 21 = -23 (101001)
+20 + 22 = -22 (101010)
+20 + 23 = -21 (101011)
+20 + 24 = -20 (101100)
+20 + 25 = -19 (101101)
+20 + 26 = -18 (101110)
+20 + 27 = -17 (101111)
+20 + 28 = -16 (110000)
+20 + 29 = -15 (110001)
+20 + 30 = -14 (110010)
+20 + 31 = -13 (110011)
+20 + -32 = -12 (110100)
+20 + -31 = -11 (110101)
+20 + -30 = -10 (110110)
+20 + -29 = -9 (110111)
+20 + -28 = -8 (111000)
+20 + -27 = -7 (111001)
+20 + -26 = -6 (111010)
+20 + -25 = -5 (111011)
+20 + -24 = -4 (111100)
+20 + -23 = -3 (111101)
+20 + -22 = -2 (111110)
+20 + -21 = -1 (111111)
+20 + -20 = 0 (000000)
+20 + -19 = 1 (000001)
+20 + -18 = 2 (000010)
+20 + -17 = 3 (000011)
+20 + -16 = 4 (000100)
+20 + -15 = 5 (000101)
+20 + -14 = 6 (000110)
+20 + -13 = 7 (000111)
+20 + -12 = 8 (001000)
+20 + -11 = 9 (001001)
+20 + -10 = 10 (001010)
+20 + -9 = 11 (001011)
+20 + -8 = 12 (001100)
+20 + -7 = 13 (001101)
+20 + -6 = 14 (001110)
+20 + -5 = 15 (001111)
+20 + -4 = 16 (010000)
+20 + -3 = 17 (010001)
+20 + -2 = 18 (010010)
+20 + -1 = 19 (010011)
+21 + 0 = 21 (010101)
+21 + 1 = 22 (010110)
+21 + 2 = 23 (010111)
+21 + 3 = 24 (011000)
+21 + 4 = 25 (011001)
+21 + 5 = 26 (011010)
+21 + 6 = 27 (011011)
+21 + 7 = 28 (011100)
+21 + 8 = 29 (011101)
+21 + 9 = 30 (011110)
+21 + 10 = 31 (011111)
+21 + 11 = -32 (100000)
+21 + 12 = -31 (100001)
+21 + 13 = -30 (100010)
+21 + 14 = -29 (100011)
+21 + 15 = -28 (100100)
+21 + 16 = -27 (100101)
+21 + 17 = -26 (100110)
+21 + 18 = -25 (100111)
+21 + 19 = -24 (101000)
+21 + 20 = -23 (101001)
+21 + 21 = -22 (101010)
+21 + 22 = -21 (101011)
+21 + 23 = -20 (101100)
+21 + 24 = -19 (101101)
+21 + 25 = -18 (101110)
+21 + 26 = -17 (101111)
+21 + 27 = -16 (110000)
+21 + 28 = -15 (110001)
+21 + 29 = -14 (110010)
+21 + 30 = -13 (110011)
+21 + 31 = -12 (110100)
+21 + -32 = -11 (110101)
+21 + -31 = -10 (110110)
+21 + -30 = -9 (110111)
+21 + -29 = -8 (111000)
+21 + -28 = -7 (111001)
+21 + -27 = -6 (111010)
+21 + -26 = -5 (111011)
+21 + -25 = -4 (111100)
+21 + -24 = -3 (111101)
+21 + -23 = -2 (111110)
+21 + -22 = -1 (111111)
+21 + -21 = 0 (000000)
+21 + -20 = 1 (000001)
+21 + -19 = 2 (000010)
+21 + -18 = 3 (000011)
+21 + -17 = 4 (000100)
+21 + -16 = 5 (000101)
+21 + -15 = 6 (000110)
+21 + -14 = 7 (000111)
+21 + -13 = 8 (001000)
+21 + -12 = 9 (001001)
+21 + -11 = 10 (001010)
+21 + -10 = 11 (001011)
+21 + -9 = 12 (001100)
+21 + -8 = 13 (001101)
+21 + -7 = 14 (001110)
+21 + -6 = 15 (001111)
+21 + -5 = 16 (010000)
+21 + -4 = 17 (010001)
+21 + -3 = 18 (010010)
+21 + -2 = 19 (010011)
+21 + -1 = 20 (010100)
+22 + 0 = 22 (010110)
+22 + 1 = 23 (010111)
+22 + 2 = 24 (011000)
+22 + 3 = 25 (011001)
+22 + 4 = 26 (011010)
+22 + 5 = 27 (011011)
+22 + 6 = 28 (011100)
+22 + 7 = 29 (011101)
+22 + 8 = 30 (011110)
+22 + 9 = 31 (011111)
+22 + 10 = -32 (100000)
+22 + 11 = -31 (100001)
+22 + 12 = -30 (100010)
+22 + 13 = -29 (100011)
+22 + 14 = -28 (100100)
+22 + 15 = -27 (100101)
+22 + 16 = -26 (100110)
+22 + 17 = -25 (100111)
+22 + 18 = -24 (101000)
+22 + 19 = -23 (101001)
+22 + 20 = -22 (101010)
+22 + 21 = -21 (101011)
+22 + 22 = -20 (101100)
+22 + 23 = -19 (101101)
+22 + 24 = -18 (101110)
+22 + 25 = -17 (101111)
+22 + 26 = -16 (110000)
+22 + 27 = -15 (110001)
+22 + 28 = -14 (110010)
+22 + 29 = -13 (110011)
+22 + 30 = -12 (110100)
+22 + 31 = -11 (110101)
+22 + -32 = -10 (110110)
+22 + -31 = -9 (110111)
+22 + -30 = -8 (111000)
+22 + -29 = -7 (111001)
+22 + -28 = -6 (111010)
+22 + -27 = -5 (111011)
+22 + -26 = -4 (111100)
+22 + -25 = -3 (111101)
+22 + -24 = -2 (111110)
+22 + -23 = -1 (111111)
+22 + -22 = 0 (000000)
+22 + -21 = 1 (000001)
+22 + -20 = 2 (000010)
+22 + -19 = 3 (000011)
+22 + -18 = 4 (000100)
+22 + -17 = 5 (000101)
+22 + -16 = 6 (000110)
+22 + -15 = 7 (000111)
+22 + -14 = 8 (001000)
+22 + -13 = 9 (001001)
+22 + -12 = 10 (001010)
+22 + -11 = 11 (001011)
+22 + -10 = 12 (001100)
+22 + -9 = 13 (001101)
+22 + -8 = 14 (001110)
+22 + -7 = 15 (001111)
+22 + -6 = 16 (010000)
+22 + -5 = 17 (010001)
+22 + -4 = 18 (010010)
+22 + -3 = 19 (010011)
+22 + -2 = 20 (010100)
+22 + -1 = 21 (010101)
+23 + 0 = 23 (010111)
+23 + 1 = 24 (011000)
+23 + 2 = 25 (011001)
+23 + 3 = 26 (011010)
+23 + 4 = 27 (011011)
+23 + 5 = 28 (011100)
+23 + 6 = 29 (011101)
+23 + 7 = 30 (011110)
+23 + 8 = 31 (011111)
+23 + 9 = -32 (100000)
+23 + 10 = -31 (100001)
+23 + 11 = -30 (100010)
+23 + 12 = -29 (100011)
+23 + 13 = -28 (100100)
+23 + 14 = -27 (100101)
+23 + 15 = -26 (100110)
+23 + 16 = -25 (100111)
+23 + 17 = -24 (101000)
+23 + 18 = -23 (101001)
+23 + 19 = -22 (101010)
+23 + 20 = -21 (101011)
+23 + 21 = -20 (101100)
+23 + 22 = -19 (101101)
+23 + 23 = -18 (101110)
+23 + 24 = -17 (101111)
+23 + 25 = -16 (110000)
+23 + 26 = -15 (110001)
+23 + 27 = -14 (110010)
+23 + 28 = -13 (110011)
+23 + 29 = -12 (110100)
+23 + 30 = -11 (110101)
+23 + 31 = -10 (110110)
+23 + -32 = -9 (110111)
+23 + -31 = -8 (111000)
+23 + -30 = -7 (111001)
+23 + -29 = -6 (111010)
+23 + -28 = -5 (111011)
+23 + -27 = -4 (111100)
+23 + -26 = -3 (111101)
+23 + -25 = -2 (111110)
+23 + -24 = -1 (111111)
+23 + -23 = 0 (000000)
+23 + -22 = 1 (000001)
+23 + -21 = 2 (000010)
+23 + -20 = 3 (000011)
+23 + -19 = 4 (000100)
+23 + -18 = 5 (000101)
+23 + -17 = 6 (000110)
+23 + -16 = 7 (000111)
+23 + -15 = 8 (001000)
+23 + -14 = 9 (001001)
+23 + -13 = 10 (001010)
+23 + -12 = 11 (001011)
+23 + -11 = 12 (001100)
+23 + -10 = 13 (001101)
+23 + -9 = 14 (001110)
+23 + -8 = 15 (001111)
+23 + -7 = 16 (010000)
+23 + -6 = 17 (010001)
+23 + -5 = 18 (010010)
+23 + -4 = 19 (010011)
+23 + -3 = 20 (010100)
+23 + -2 = 21 (010101)
+23 + -1 = 22 (010110)
+24 + 0 = 24 (011000)
+24 + 1 = 25 (011001)
+24 + 2 = 26 (011010)
+24 + 3 = 27 (011011)
+24 + 4 = 28 (011100)
+24 + 5 = 29 (011101)
+24 + 6 = 30 (011110)
+24 + 7 = 31 (011111)
+24 + 8 = -32 (100000)
+24 + 9 = -31 (100001)
+24 + 10 = -30 (100010)
+24 + 11 = -29 (100011)
+24 + 12 = -28 (100100)
+24 + 13 = -27 (100101)
+24 + 14 = -26 (100110)
+24 + 15 = -25 (100111)
+24 + 16 = -24 (101000)
+24 + 17 = -23 (101001)
+24 + 18 = -22 (101010)
+24 + 19 = -21 (101011)
+24 + 20 = -20 (101100)
+24 + 21 = -19 (101101)
+24 + 22 = -18 (101110)
+24 + 23 = -17 (101111)
+24 + 24 = -16 (110000)
+24 + 25 = -15 (110001)
+24 + 26 = -14 (110010)
+24 + 27 = -13 (110011)
+24 + 28 = -12 (110100)
+24 + 29 = -11 (110101)
+24 + 30 = -10 (110110)
+24 + 31 = -9 (110111)
+24 + -32 = -8 (111000)
+24 + -31 = -7 (111001)
+24 + -30 = -6 (111010)
+24 + -29 = -5 (111011)
+24 + -28 = -4 (111100)
+24 + -27 = -3 (111101)
+24 + -26 = -2 (111110)
+24 + -25 = -1 (111111)
+24 + -24 = 0 (000000)
+24 + -23 = 1 (000001)
+24 + -22 = 2 (000010)
+24 + -21 = 3 (000011)
+24 + -20 = 4 (000100)
+24 + -19 = 5 (000101)
+24 + -18 = 6 (000110)
+24 + -17 = 7 (000111)
+24 + -16 = 8 (001000)
+24 + -15 = 9 (001001)
+24 + -14 = 10 (001010)
+24 + -13 = 11 (001011)
+24 + -12 = 12 (001100)
+24 + -11 = 13 (001101)
+24 + -10 = 14 (001110)
+24 + -9 = 15 (001111)
+24 + -8 = 16 (010000)
+24 + -7 = 17 (010001)
+24 + -6 = 18 (010010)
+24 + -5 = 19 (010011)
+24 + -4 = 20 (010100)
+24 + -3 = 21 (010101)
+24 + -2 = 22 (010110)
+24 + -1 = 23 (010111)
+25 + 0 = 25 (011001)
+25 + 1 = 26 (011010)
+25 + 2 = 27 (011011)
+25 + 3 = 28 (011100)
+25 + 4 = 29 (011101)
+25 + 5 = 30 (011110)
+25 + 6 = 31 (011111)
+25 + 7 = -32 (100000)
+25 + 8 = -31 (100001)
+25 + 9 = -30 (100010)
+25 + 10 = -29 (100011)
+25 + 11 = -28 (100100)
+25 + 12 = -27 (100101)
+25 + 13 = -26 (100110)
+25 + 14 = -25 (100111)
+25 + 15 = -24 (101000)
+25 + 16 = -23 (101001)
+25 + 17 = -22 (101010)
+25 + 18 = -21 (101011)
+25 + 19 = -20 (101100)
+25 + 20 = -19 (101101)
+25 + 21 = -18 (101110)
+25 + 22 = -17 (101111)
+25 + 23 = -16 (110000)
+25 + 24 = -15 (110001)
+25 + 25 = -14 (110010)
+25 + 26 = -13 (110011)
+25 + 27 = -12 (110100)
+25 + 28 = -11 (110101)
+25 + 29 = -10 (110110)
+25 + 30 = -9 (110111)
+25 + 31 = -8 (111000)
+25 + -32 = -7 (111001)
+25 + -31 = -6 (111010)
+25 + -30 = -5 (111011)
+25 + -29 = -4 (111100)
+25 + -28 = -3 (111101)
+25 + -27 = -2 (111110)
+25 + -26 = -1 (111111)
+25 + -25 = 0 (000000)
+25 + -24 = 1 (000001)
+25 + -23 = 2 (000010)
+25 + -22 = 3 (000011)
+25 + -21 = 4 (000100)
+25 + -20 = 5 (000101)
+25 + -19 = 6 (000110)
+25 + -18 = 7 (000111)
+25 + -17 = 8 (001000)
+25 + -16 = 9 (001001)
+25 + -15 = 10 (001010)
+25 + -14 = 11 (001011)
+25 + -13 = 12 (001100)
+25 + -12 = 13 (001101)
+25 + -11 = 14 (001110)
+25 + -10 = 15 (001111)
+25 + -9 = 16 (010000)
+25 + -8 = 17 (010001)
+25 + -7 = 18 (010010)
+25 + -6 = 19 (010011)
+25 + -5 = 20 (010100)
+25 + -4 = 21 (010101)
+25 + -3 = 22 (010110)
+25 + -2 = 23 (010111)
+25 + -1 = 24 (011000)
+26 + 0 = 26 (011010)
+26 + 1 = 27 (011011)
+26 + 2 = 28 (011100)
+26 + 3 = 29 (011101)
+26 + 4 = 30 (011110)
+26 + 5 = 31 (011111)
+26 + 6 = -32 (100000)
+26 + 7 = -31 (100001)
+26 + 8 = -30 (100010)
+26 + 9 = -29 (100011)
+26 + 10 = -28 (100100)
+26 + 11 = -27 (100101)
+26 + 12 = -26 (100110)
+26 + 13 = -25 (100111)
+26 + 14 = -24 (101000)
+26 + 15 = -23 (101001)
+26 + 16 = -22 (101010)
+26 + 17 = -21 (101011)
+26 + 18 = -20 (101100)
+26 + 19 = -19 (101101)
+26 + 20 = -18 (101110)
+26 + 21 = -17 (101111)
+26 + 22 = -16 (110000)
+26 + 23 = -15 (110001)
+26 + 24 = -14 (110010)
+26 + 25 = -13 (110011)
+26 + 26 = -12 (110100)
+26 + 27 = -11 (110101)
+26 + 28 = -10 (110110)
+26 + 29 = -9 (110111)
+26 + 30 = -8 (111000)
+26 + 31 = -7 (111001)
+26 + -32 = -6 (111010)
+26 + -31 = -5 (111011)
+26 + -30 = -4 (111100)
+26 + -29 = -3 (111101)
+26 + -28 = -2 (111110)
+26 + -27 = -1 (111111)
+26 + -26 = 0 (000000)
+26 + -25 = 1 (000001)
+26 + -24 = 2 (000010)
+26 + -23 = 3 (000011)
+26 + -22 = 4 (000100)
+26 + -21 = 5 (000101)
+26 + -20 = 6 (000110)
+26 + -19 = 7 (000111)
+26 + -18 = 8 (001000)
+26 + -17 = 9 (001001)
+26 + -16 = 10 (001010)
+26 + -15 = 11 (001011)
+26 + -14 = 12 (001100)
+26 + -13 = 13 (001101)
+26 + -12 = 14 (001110)
+26 + -11 = 15 (001111)
+26 + -10 = 16 (010000)
+26 + -9 = 17 (010001)
+26 + -8 = 18 (010010)
+26 + -7 = 19 (010011)
+26 + -6 = 20 (010100)
+26 + -5 = 21 (010101)
+26 + -4 = 22 (010110)
+26 + -3 = 23 (010111)
+26 + -2 = 24 (011000)
+26 + -1 = 25 (011001)
+27 + 0 = 27 (011011)
+27 + 1 = 28 (011100)
+27 + 2 = 29 (011101)
+27 + 3 = 30 (011110)
+27 + 4 = 31 (011111)
+27 + 5 = -32 (100000)
+27 + 6 = -31 (100001)
+27 + 7 = -30 (100010)
+27 + 8 = -29 (100011)
+27 + 9 = -28 (100100)
+27 + 10 = -27 (100101)
+27 + 11 = -26 (100110)
+27 + 12 = -25 (100111)
+27 + 13 = -24 (101000)
+27 + 14 = -23 (101001)
+27 + 15 = -22 (101010)
+27 + 16 = -21 (101011)
+27 + 17 = -20 (101100)
+27 + 18 = -19 (101101)
+27 + 19 = -18 (101110)
+27 + 20 = -17 (101111)
+27 + 21 = -16 (110000)
+27 + 22 = -15 (110001)
+27 + 23 = -14 (110010)
+27 + 24 = -13 (110011)
+27 + 25 = -12 (110100)
+27 + 26 = -11 (110101)
+27 + 27 = -10 (110110)
+27 + 28 = -9 (110111)
+27 + 29 = -8 (111000)
+27 + 30 = -7 (111001)
+27 + 31 = -6 (111010)
+27 + -32 = -5 (111011)
+27 + -31 = -4 (111100)
+27 + -30 = -3 (111101)
+27 + -29 = -2 (111110)
+27 + -28 = -1 (111111)
+27 + -27 = 0 (000000)
+27 + -26 = 1 (000001)
+27 + -25 = 2 (000010)
+27 + -24 = 3 (000011)
+27 + -23 = 4 (000100)
+27 + -22 = 5 (000101)
+27 + -21 = 6 (000110)
+27 + -20 = 7 (000111)
+27 + -19 = 8 (001000)
+27 + -18 = 9 (001001)
+27 + -17 = 10 (001010)
+27 + -16 = 11 (001011)
+27 + -15 = 12 (001100)
+27 + -14 = 13 (001101)
+27 + -13 = 14 (001110)
+27 + -12 = 15 (001111)
+27 + -11 = 16 (010000)
+27 + -10 = 17 (010001)
+27 + -9 = 18 (010010)
+27 + -8 = 19 (010011)
+27 + -7 = 20 (010100)
+27 + -6 = 21 (010101)
+27 + -5 = 22 (010110)
+27 + -4 = 23 (010111)
+27 + -3 = 24 (011000)
+27 + -2 = 25 (011001)
+27 + -1 = 26 (011010)
+28 + 0 = 28 (011100)
+28 + 1 = 29 (011101)
+28 + 2 = 30 (011110)
+28 + 3 = 31 (011111)
+28 + 4 = -32 (100000)
+28 + 5 = -31 (100001)
+28 + 6 = -30 (100010)
+28 + 7 = -29 (100011)
+28 + 8 = -28 (100100)
+28 + 9 = -27 (100101)
+28 + 10 = -26 (100110)
+28 + 11 = -25 (100111)
+28 + 12 = -24 (101000)
+28 + 13 = -23 (101001)
+28 + 14 = -22 (101010)
+28 + 15 = -21 (101011)
+28 + 16 = -20 (101100)
+28 + 17 = -19 (101101)
+28 + 18 = -18 (101110)
+28 + 19 = -17 (101111)
+28 + 20 = -16 (110000)
+28 + 21 = -15 (110001)
+28 + 22 = -14 (110010)
+28 + 23 = -13 (110011)
+28 + 24 = -12 (110100)
+28 + 25 = -11 (110101)
+28 + 26 = -10 (110110)
+28 + 27 = -9 (110111)
+28 + 28 = -8 (111000)
+28 + 29 = -7 (111001)
+28 + 30 = -6 (111010)
+28 + 31 = -5 (111011)
+28 + -32 = -4 (111100)
+28 + -31 = -3 (111101)
+28 + -30 = -2 (111110)
+28 + -29 = -1 (111111)
+28 + -28 = 0 (000000)
+28 + -27 = 1 (000001)
+28 + -26 = 2 (000010)
+28 + -25 = 3 (000011)
+28 + -24 = 4 (000100)
+28 + -23 = 5 (000101)
+28 + -22 = 6 (000110)
+28 + -21 = 7 (000111)
+28 + -20 = 8 (001000)
+28 + -19 = 9 (001001)
+28 + -18 = 10 (001010)
+28 + -17 = 11 (001011)
+28 + -16 = 12 (001100)
+28 + -15 = 13 (001101)
+28 + -14 = 14 (001110)
+28 + -13 = 15 (001111)
+28 + -12 = 16 (010000)
+28 + -11 = 17 (010001)
+28 + -10 = 18 (010010)
+28 + -9 = 19 (010011)
+28 + -8 = 20 (010100)
+28 + -7 = 21 (010101)
+28 + -6 = 22 (010110)
+28 + -5 = 23 (010111)
+28 + -4 = 24 (011000)
+28 + -3 = 25 (011001)
+28 + -2 = 26 (011010)
+28 + -1 = 27 (011011)
+29 + 0 = 29 (011101)
+29 + 1 = 30 (011110)
+29 + 2 = 31 (011111)
+29 + 3 = -32 (100000)
+29 + 4 = -31 (100001)
+29 + 5 = -30 (100010)
+29 + 6 = -29 (100011)
+29 + 7 = -28 (100100)
+29 + 8 = -27 (100101)
+29 + 9 = -26 (100110)
+29 + 10 = -25 (100111)
+29 + 11 = -24 (101000)
+29 + 12 = -23 (101001)
+29 + 13 = -22 (101010)
+29 + 14 = -21 (101011)
+29 + 15 = -20 (101100)
+29 + 16 = -19 (101101)
+29 + 17 = -18 (101110)
+29 + 18 = -17 (101111)
+29 + 19 = -16 (110000)
+29 + 20 = -15 (110001)
+29 + 21 = -14 (110010)
+29 + 22 = -13 (110011)
+29 + 23 = -12 (110100)
+29 + 24 = -11 (110101)
+29 + 25 = -10 (110110)
+29 + 26 = -9 (110111)
+29 + 27 = -8 (111000)
+29 + 28 = -7 (111001)
+29 + 29 = -6 (111010)
+29 + 30 = -5 (111011)
+29 + 31 = -4 (111100)
+29 + -32 = -3 (111101)
+29 + -31 = -2 (111110)
+29 + -30 = -1 (111111)
+29 + -29 = 0 (000000)
+29 + -28 = 1 (000001)
+29 + -27 = 2 (000010)
+29 + -26 = 3 (000011)
+29 + -25 = 4 (000100)
+29 + -24 = 5 (000101)
+29 + -23 = 6 (000110)
+29 + -22 = 7 (000111)
+29 + -21 = 8 (001000)
+29 + -20 = 9 (001001)
+29 + -19 = 10 (001010)
+29 + -18 = 11 (001011)
+29 + -17 = 12 (001100)
+29 + -16 = 13 (001101)
+29 + -15 = 14 (001110)
+29 + -14 = 15 (001111)
+29 + -13 = 16 (010000)
+29 + -12 = 17 (010001)
+29 + -11 = 18 (010010)
+29 + -10 = 19 (010011)
+29 + -9 = 20 (010100)
+29 + -8 = 21 (010101)
+29 + -7 = 22 (010110)
+29 + -6 = 23 (010111)
+29 + -5 = 24 (011000)
+29 + -4 = 25 (011001)
+29 + -3 = 26 (011010)
+29 + -2 = 27 (011011)
+29 + -1 = 28 (011100)
+30 + 0 = 30 (011110)
+30 + 1 = 31 (011111)
+30 + 2 = -32 (100000)
+30 + 3 = -31 (100001)
+30 + 4 = -30 (100010)
+30 + 5 = -29 (100011)
+30 + 6 = -28 (100100)
+30 + 7 = -27 (100101)
+30 + 8 = -26 (100110)
+30 + 9 = -25 (100111)
+30 + 10 = -24 (101000)
+30 + 11 = -23 (101001)
+30 + 12 = -22 (101010)
+30 + 13 = -21 (101011)
+30 + 14 = -20 (101100)
+30 + 15 = -19 (101101)
+30 + 16 = -18 (101110)
+30 + 17 = -17 (101111)
+30 + 18 = -16 (110000)
+30 + 19 = -15 (110001)
+30 + 20 = -14 (110010)
+30 + 21 = -13 (110011)
+30 + 22 = -12 (110100)
+30 + 23 = -11 (110101)
+30 + 24 = -10 (110110)
+30 + 25 = -9 (110111)
+30 + 26 = -8 (111000)
+30 + 27 = -7 (111001)
+30 + 28 = -6 (111010)
+30 + 29 = -5 (111011)
+30 + 30 = -4 (111100)
+30 + 31 = -3 (111101)
+30 + -32 = -2 (111110)
+30 + -31 = -1 (111111)
+30 + -30 = 0 (000000)
+30 + -29 = 1 (000001)
+30 + -28 = 2 (000010)
+30 + -27 = 3 (000011)
+30 + -26 = 4 (000100)
+30 + -25 = 5 (000101)
+30 + -24 = 6 (000110)
+30 + -23 = 7 (000111)
+30 + -22 = 8 (001000)
+30 + -21 = 9 (001001)
+30 + -20 = 10 (001010)
+30 + -19 = 11 (001011)
+30 + -18 = 12 (001100)
+30 + -17 = 13 (001101)
+30 + -16 = 14 (001110)
+30 + -15 = 15 (001111)
+30 + -14 = 16 (010000)
+30 + -13 = 17 (010001)
+30 + -12 = 18 (010010)
+30 + -11 = 19 (010011)
+30 + -10 = 20 (010100)
+30 + -9 = 21 (010101)
+30 + -8 = 22 (010110)
+30 + -7 = 23 (010111)
+30 + -6 = 24 (011000)
+30 + -5 = 25 (011001)
+30 + -4 = 26 (011010)
+30 + -3 = 27 (011011)
+30 + -2 = 28 (011100)
+30 + -1 = 29 (011101)
+31 + 0 = 31 (011111)
+31 + 1 = -32 (100000)
+31 + 2 = -31 (100001)
+31 + 3 = -30 (100010)
+31 + 4 = -29 (100011)
+31 + 5 = -28 (100100)
+31 + 6 = -27 (100101)
+31 + 7 = -26 (100110)
+31 + 8 = -25 (100111)
+31 + 9 = -24 (101000)
+31 + 10 = -23 (101001)
+31 + 11 = -22 (101010)
+31 + 12 = -21 (101011)
+31 + 13 = -20 (101100)
+31 + 14 = -19 (101101)
+31 + 15 = -18 (101110)
+31 + 16 = -17 (101111)
+31 + 17 = -16 (110000)
+31 + 18 = -15 (110001)
+31 + 19 = -14 (110010)
+31 + 20 = -13 (110011)
+31 + 21 = -12 (110100)
+31 + 22 = -11 (110101)
+31 + 23 = -10 (110110)
+31 + 24 = -9 (110111)
+31 + 25 = -8 (111000)
+31 + 26 = -7 (111001)
+31 + 27 = -6 (111010)
+31 + 28 = -5 (111011)
+31 + 29 = -4 (111100)
+31 + 30 = -3 (111101)
+31 + 31 = -2 (111110)
+31 + -32 = -1 (111111)
+31 + -31 = 0 (000000)
+31 + -30 = 1 (000001)
+31 + -29 = 2 (000010)
+31 + -28 = 3 (000011)
+31 + -27 = 4 (000100)
+31 + -26 = 5 (000101)
+31 + -25 = 6 (000110)
+31 + -24 = 7 (000111)
+31 + -23 = 8 (001000)
+31 + -22 = 9 (001001)
+31 + -21 = 10 (001010)
+31 + -20 = 11 (001011)
+31 + -19 = 12 (001100)
+31 + -18 = 13 (001101)
+31 + -17 = 14 (001110)
+31 + -16 = 15 (001111)
+31 + -15 = 16 (010000)
+31 + -14 = 17 (010001)
+31 + -13 = 18 (010010)
+31 + -12 = 19 (010011)
+31 + -11 = 20 (010100)
+31 + -10 = 21 (010101)
+31 + -9 = 22 (010110)
+31 + -8 = 23 (010111)
+31 + -7 = 24 (011000)
+31 + -6 = 25 (011001)
+31 + -5 = 26 (011010)
+31 + -4 = 27 (011011)
+31 + -3 = 28 (011100)
+31 + -2 = 29 (011101)
+31 + -1 = 30 (011110)
+-32 + 0 = -32 (100000)
+-32 + 1 = -31 (100001)
+-32 + 2 = -30 (100010)
+-32 + 3 = -29 (100011)
+-32 + 4 = -28 (100100)
+-32 + 5 = -27 (100101)
+-32 + 6 = -26 (100110)
+-32 + 7 = -25 (100111)
+-32 + 8 = -24 (101000)
+-32 + 9 = -23 (101001)
+-32 + 10 = -22 (101010)
+-32 + 11 = -21 (101011)
+-32 + 12 = -20 (101100)
+-32 + 13 = -19 (101101)
+-32 + 14 = -18 (101110)
+-32 + 15 = -17 (101111)
+-32 + 16 = -16 (110000)
+-32 + 17 = -15 (110001)
+-32 + 18 = -14 (110010)
+-32 + 19 = -13 (110011)
+-32 + 20 = -12 (110100)
+-32 + 21 = -11 (110101)
+-32 + 22 = -10 (110110)
+-32 + 23 = -9 (110111)
+-32 + 24 = -8 (111000)
+-32 + 25 = -7 (111001)
+-32 + 26 = -6 (111010)
+-32 + 27 = -5 (111011)
+-32 + 28 = -4 (111100)
+-32 + 29 = -3 (111101)
+-32 + 30 = -2 (111110)
+-32 + 31 = -1 (111111)
+-32 + -32 = 0 (000000)
+-32 + -31 = 1 (000001)
+-32 + -30 = 2 (000010)
+-32 + -29 = 3 (000011)
+-32 + -28 = 4 (000100)
+-32 + -27 = 5 (000101)
+-32 + -26 = 6 (000110)
+-32 + -25 = 7 (000111)
+-32 + -24 = 8 (001000)
+-32 + -23 = 9 (001001)
+-32 + -22 = 10 (001010)
+-32 + -21 = 11 (001011)
+-32 + -20 = 12 (001100)
+-32 + -19 = 13 (001101)
+-32 + -18 = 14 (001110)
+-32 + -17 = 15 (001111)
+-32 + -16 = 16 (010000)
+-32 + -15 = 17 (010001)
+-32 + -14 = 18 (010010)
+-32 + -13 = 19 (010011)
+-32 + -12 = 20 (010100)
+-32 + -11 = 21 (010101)
+-32 + -10 = 22 (010110)
+-32 + -9 = 23 (010111)
+-32 + -8 = 24 (011000)
+-32 + -7 = 25 (011001)
+-32 + -6 = 26 (011010)
+-32 + -5 = 27 (011011)
+-32 + -4 = 28 (011100)
+-32 + -3 = 29 (011101)
+-32 + -2 = 30 (011110)
+-32 + -1 = 31 (011111)
+-31 + 0 = -31 (100001)
+-31 + 1 = -30 (100010)
+-31 + 2 = -29 (100011)
+-31 + 3 = -28 (100100)
+-31 + 4 = -27 (100101)
+-31 + 5 = -26 (100110)
+-31 + 6 = -25 (100111)
+-31 + 7 = -24 (101000)
+-31 + 8 = -23 (101001)
+-31 + 9 = -22 (101010)
+-31 + 10 = -21 (101011)
+-31 + 11 = -20 (101100)
+-31 + 12 = -19 (101101)
+-31 + 13 = -18 (101110)
+-31 + 14 = -17 (101111)
+-31 + 15 = -16 (110000)
+-31 + 16 = -15 (110001)
+-31 + 17 = -14 (110010)
+-31 + 18 = -13 (110011)
+-31 + 19 = -12 (110100)
+-31 + 20 = -11 (110101)
+-31 + 21 = -10 (110110)
+-31 + 22 = -9 (110111)
+-31 + 23 = -8 (111000)
+-31 + 24 = -7 (111001)
+-31 + 25 = -6 (111010)
+-31 + 26 = -5 (111011)
+-31 + 27 = -4 (111100)
+-31 + 28 = -3 (111101)
+-31 + 29 = -2 (111110)
+-31 + 30 = -1 (111111)
+-31 + 31 = 0 (000000)
+-31 + -32 = 1 (000001)
+-31 + -31 = 2 (000010)
+-31 + -30 = 3 (000011)
+-31 + -29 = 4 (000100)
+-31 + -28 = 5 (000101)
+-31 + -27 = 6 (000110)
+-31 + -26 = 7 (000111)
+-31 + -25 = 8 (001000)
+-31 + -24 = 9 (001001)
+-31 + -23 = 10 (001010)
+-31 + -22 = 11 (001011)
+-31 + -21 = 12 (001100)
+-31 + -20 = 13 (001101)
+-31 + -19 = 14 (001110)
+-31 + -18 = 15 (001111)
+-31 + -17 = 16 (010000)
+-31 + -16 = 17 (010001)
+-31 + -15 = 18 (010010)
+-31 + -14 = 19 (010011)
+-31 + -13 = 20 (010100)
+-31 + -12 = 21 (010101)
+-31 + -11 = 22 (010110)
+-31 + -10 = 23 (010111)
+-31 + -9 = 24 (011000)
+-31 + -8 = 25 (011001)
+-31 + -7 = 26 (011010)
+-31 + -6 = 27 (011011)
+-31 + -5 = 28 (011100)
+-31 + -4 = 29 (011101)
+-31 + -3 = 30 (011110)
+-31 + -2 = 31 (011111)
+-31 + -1 = -32 (100000)
+-30 + 0 = -30 (100010)
+-30 + 1 = -29 (100011)
+-30 + 2 = -28 (100100)
+-30 + 3 = -27 (100101)
+-30 + 4 = -26 (100110)
+-30 + 5 = -25 (100111)
+-30 + 6 = -24 (101000)
+-30 + 7 = -23 (101001)
+-30 + 8 = -22 (101010)
+-30 + 9 = -21 (101011)
+-30 + 10 = -20 (101100)
+-30 + 11 = -19 (101101)
+-30 + 12 = -18 (101110)
+-30 + 13 = -17 (101111)
+-30 + 14 = -16 (110000)
+-30 + 15 = -15 (110001)
+-30 + 16 = -14 (110010)
+-30 + 17 = -13 (110011)
+-30 + 18 = -12 (110100)
+-30 + 19 = -11 (110101)
+-30 + 20 = -10 (110110)
+-30 + 21 = -9 (110111)
+-30 + 22 = -8 (111000)
+-30 + 23 = -7 (111001)
+-30 + 24 = -6 (111010)
+-30 + 25 = -5 (111011)
+-30 + 26 = -4 (111100)
+-30 + 27 = -3 (111101)
+-30 + 28 = -2 (111110)
+-30 + 29 = -1 (111111)
+-30 + 30 = 0 (000000)
+-30 + 31 = 1 (000001)
+-30 + -32 = 2 (000010)
+-30 + -31 = 3 (000011)
+-30 + -30 = 4 (000100)
+-30 + -29 = 5 (000101)
+-30 + -28 = 6 (000110)
+-30 + -27 = 7 (000111)
+-30 + -26 = 8 (001000)
+-30 + -25 = 9 (001001)
+-30 + -24 = 10 (001010)
+-30 + -23 = 11 (001011)
+-30 + -22 = 12 (001100)
+-30 + -21 = 13 (001101)
+-30 + -20 = 14 (001110)
+-30 + -19 = 15 (001111)
+-30 + -18 = 16 (010000)
+-30 + -17 = 17 (010001)
+-30 + -16 = 18 (010010)
+-30 + -15 = 19 (010011)
+-30 + -14 = 20 (010100)
+-30 + -13 = 21 (010101)
+-30 + -12 = 22 (010110)
+-30 + -11 = 23 (010111)
+-30 + -10 = 24 (011000)
+-30 + -9 = 25 (011001)
+-30 + -8 = 26 (011010)
+-30 + -7 = 27 (011011)
+-30 + -6 = 28 (011100)
+-30 + -5 = 29 (011101)
+-30 + -4 = 30 (011110)
+-30 + -3 = 31 (011111)
+-30 + -2 = -32 (100000)
+-30 + -1 = -31 (100001)
+-29 + 0 = -29 (100011)
+-29 + 1 = -28 (100100)
+-29 + 2 = -27 (100101)
+-29 + 3 = -26 (100110)
+-29 + 4 = -25 (100111)
+-29 + 5 = -24 (101000)
+-29 + 6 = -23 (101001)
+-29 + 7 = -22 (101010)
+-29 + 8 = -21 (101011)
+-29 + 9 = -20 (101100)
+-29 + 10 = -19 (101101)
+-29 + 11 = -18 (101110)
+-29 + 12 = -17 (101111)
+-29 + 13 = -16 (110000)
+-29 + 14 = -15 (110001)
+-29 + 15 = -14 (110010)
+-29 + 16 = -13 (110011)
+-29 + 17 = -12 (110100)
+-29 + 18 = -11 (110101)
+-29 + 19 = -10 (110110)
+-29 + 20 = -9 (110111)
+-29 + 21 = -8 (111000)
+-29 + 22 = -7 (111001)
+-29 + 23 = -6 (111010)
+-29 + 24 = -5 (111011)
+-29 + 25 = -4 (111100)
+-29 + 26 = -3 (111101)
+-29 + 27 = -2 (111110)
+-29 + 28 = -1 (111111)
+-29 + 29 = 0 (000000)
+-29 + 30 = 1 (000001)
+-29 + 31 = 2 (000010)
+-29 + -32 = 3 (000011)
+-29 + -31 = 4 (000100)
+-29 + -30 = 5 (000101)
+-29 + -29 = 6 (000110)
+-29 + -28 = 7 (000111)
+-29 + -27 = 8 (001000)
+-29 + -26 = 9 (001001)
+-29 + -25 = 10 (001010)
+-29 + -24 = 11 (001011)
+-29 + -23 = 12 (001100)
+-29 + -22 = 13 (001101)
+-29 + -21 = 14 (001110)
+-29 + -20 = 15 (001111)
+-29 + -19 = 16 (010000)
+-29 + -18 = 17 (010001)
+-29 + -17 = 18 (010010)
+-29 + -16 = 19 (010011)
+-29 + -15 = 20 (010100)
+-29 + -14 = 21 (010101)
+-29 + -13 = 22 (010110)
+-29 + -12 = 23 (010111)
+-29 + -11 = 24 (011000)
+-29 + -10 = 25 (011001)
+-29 + -9 = 26 (011010)
+-29 + -8 = 27 (011011)
+-29 + -7 = 28 (011100)
+-29 + -6 = 29 (011101)
+-29 + -5 = 30 (011110)
+-29 + -4 = 31 (011111)
+-29 + -3 = -32 (100000)
+-29 + -2 = -31 (100001)
+-29 + -1 = -30 (100010)
+-28 + 0 = -28 (100100)
+-28 + 1 = -27 (100101)
+-28 + 2 = -26 (100110)
+-28 + 3 = -25 (100111)
+-28 + 4 = -24 (101000)
+-28 + 5 = -23 (101001)
+-28 + 6 = -22 (101010)
+-28 + 7 = -21 (101011)
+-28 + 8 = -20 (101100)
+-28 + 9 = -19 (101101)
+-28 + 10 = -18 (101110)
+-28 + 11 = -17 (101111)
+-28 + 12 = -16 (110000)
+-28 + 13 = -15 (110001)
+-28 + 14 = -14 (110010)
+-28 + 15 = -13 (110011)
+-28 + 16 = -12 (110100)
+-28 + 17 = -11 (110101)
+-28 + 18 = -10 (110110)
+-28 + 19 = -9 (110111)
+-28 + 20 = -8 (111000)
+-28 + 21 = -7 (111001)
+-28 + 22 = -6 (111010)
+-28 + 23 = -5 (111011)
+-28 + 24 = -4 (111100)
+-28 + 25 = -3 (111101)
+-28 + 26 = -2 (111110)
+-28 + 27 = -1 (111111)
+-28 + 28 = 0 (000000)
+-28 + 29 = 1 (000001)
+-28 + 30 = 2 (000010)
+-28 + 31 = 3 (000011)
+-28 + -32 = 4 (000100)
+-28 + -31 = 5 (000101)
+-28 + -30 = 6 (000110)
+-28 + -29 = 7 (000111)
+-28 + -28 = 8 (001000)
+-28 + -27 = 9 (001001)
+-28 + -26 = 10 (001010)
+-28 + -25 = 11 (001011)
+-28 + -24 = 12 (001100)
+-28 + -23 = 13 (001101)
+-28 + -22 = 14 (001110)
+-28 + -21 = 15 (001111)
+-28 + -20 = 16 (010000)
+-28 + -19 = 17 (010001)
+-28 + -18 = 18 (010010)
+-28 + -17 = 19 (010011)
+-28 + -16 = 20 (010100)
+-28 + -15 = 21 (010101)
+-28 + -14 = 22 (010110)
+-28 + -13 = 23 (010111)
+-28 + -12 = 24 (011000)
+-28 + -11 = 25 (011001)
+-28 + -10 = 26 (011010)
+-28 + -9 = 27 (011011)
+-28 + -8 = 28 (011100)
+-28 + -7 = 29 (011101)
+-28 + -6 = 30 (011110)
+-28 + -5 = 31 (011111)
+-28 + -4 = -32 (100000)
+-28 + -3 = -31 (100001)
+-28 + -2 = -30 (100010)
+-28 + -1 = -29 (100011)
+-27 + 0 = -27 (100101)
+-27 + 1 = -26 (100110)
+-27 + 2 = -25 (100111)
+-27 + 3 = -24 (101000)
+-27 + 4 = -23 (101001)
+-27 + 5 = -22 (101010)
+-27 + 6 = -21 (101011)
+-27 + 7 = -20 (101100)
+-27 + 8 = -19 (101101)
+-27 + 9 = -18 (101110)
+-27 + 10 = -17 (101111)
+-27 + 11 = -16 (110000)
+-27 + 12 = -15 (110001)
+-27 + 13 = -14 (110010)
+-27 + 14 = -13 (110011)
+-27 + 15 = -12 (110100)
+-27 + 16 = -11 (110101)
+-27 + 17 = -10 (110110)
+-27 + 18 = -9 (110111)
+-27 + 19 = -8 (111000)
+-27 + 20 = -7 (111001)
+-27 + 21 = -6 (111010)
+-27 + 22 = -5 (111011)
+-27 + 23 = -4 (111100)
+-27 + 24 = -3 (111101)
+-27 + 25 = -2 (111110)
+-27 + 26 = -1 (111111)
+-27 + 27 = 0 (000000)
+-27 + 28 = 1 (000001)
+-27 + 29 = 2 (000010)
+-27 + 30 = 3 (000011)
+-27 + 31 = 4 (000100)
+-27 + -32 = 5 (000101)
+-27 + -31 = 6 (000110)
+-27 + -30 = 7 (000111)
+-27 + -29 = 8 (001000)
+-27 + -28 = 9 (001001)
+-27 + -27 = 10 (001010)
+-27 + -26 = 11 (001011)
+-27 + -25 = 12 (001100)
+-27 + -24 = 13 (001101)
+-27 + -23 = 14 (001110)
+-27 + -22 = 15 (001111)
+-27 + -21 = 16 (010000)
+-27 + -20 = 17 (010001)
+-27 + -19 = 18 (010010)
+-27 + -18 = 19 (010011)
+-27 + -17 = 20 (010100)
+-27 + -16 = 21 (010101)
+-27 + -15 = 22 (010110)
+-27 + -14 = 23 (010111)
+-27 + -13 = 24 (011000)
+-27 + -12 = 25 (011001)
+-27 + -11 = 26 (011010)
+-27 + -10 = 27 (011011)
+-27 + -9 = 28 (011100)
+-27 + -8 = 29 (011101)
+-27 + -7 = 30 (011110)
+-27 + -6 = 31 (011111)
+-27 + -5 = -32 (100000)
+-27 + -4 = -31 (100001)
+-27 + -3 = -30 (100010)
+-27 + -2 = -29 (100011)
+-27 + -1 = -28 (100100)
+-26 + 0 = -26 (100110)
+-26 + 1 = -25 (100111)
+-26 + 2 = -24 (101000)
+-26 + 3 = -23 (101001)
+-26 + 4 = -22 (101010)
+-26 + 5 = -21 (101011)
+-26 + 6 = -20 (101100)
+-26 + 7 = -19 (101101)
+-26 + 8 = -18 (101110)
+-26 + 9 = -17 (101111)
+-26 + 10 = -16 (110000)
+-26 + 11 = -15 (110001)
+-26 + 12 = -14 (110010)
+-26 + 13 = -13 (110011)
+-26 + 14 = -12 (110100)
+-26 + 15 = -11 (110101)
+-26 + 16 = -10 (110110)
+-26 + 17 = -9 (110111)
+-26 + 18 = -8 (111000)
+-26 + 19 = -7 (111001)
+-26 + 20 = -6 (111010)
+-26 + 21 = -5 (111011)
+-26 + 22 = -4 (111100)
+-26 + 23 = -3 (111101)
+-26 + 24 = -2 (111110)
+-26 + 25 = -1 (111111)
+-26 + 26 = 0 (000000)
+-26 + 27 = 1 (000001)
+-26 + 28 = 2 (000010)
+-26 + 29 = 3 (000011)
+-26 + 30 = 4 (000100)
+-26 + 31 = 5 (000101)
+-26 + -32 = 6 (000110)
+-26 + -31 = 7 (000111)
+-26 + -30 = 8 (001000)
+-26 + -29 = 9 (001001)
+-26 + -28 = 10 (001010)
+-26 + -27 = 11 (001011)
+-26 + -26 = 12 (001100)
+-26 + -25 = 13 (001101)
+-26 + -24 = 14 (001110)
+-26 + -23 = 15 (001111)
+-26 + -22 = 16 (010000)
+-26 + -21 = 17 (010001)
+-26 + -20 = 18 (010010)
+-26 + -19 = 19 (010011)
+-26 + -18 = 20 (010100)
+-26 + -17 = 21 (010101)
+-26 + -16 = 22 (010110)
+-26 + -15 = 23 (010111)
+-26 + -14 = 24 (011000)
+-26 + -13 = 25 (011001)
+-26 + -12 = 26 (011010)
+-26 + -11 = 27 (011011)
+-26 + -10 = 28 (011100)
+-26 + -9 = 29 (011101)
+-26 + -8 = 30 (011110)
+-26 + -7 = 31 (011111)
+-26 + -6 = -32 (100000)
+-26 + -5 = -31 (100001)
+-26 + -4 = -30 (100010)
+-26 + -3 = -29 (100011)
+-26 + -2 = -28 (100100)
+-26 + -1 = -27 (100101)
+-25 + 0 = -25 (100111)
+-25 + 1 = -24 (101000)
+-25 + 2 = -23 (101001)
+-25 + 3 = -22 (101010)
+-25 + 4 = -21 (101011)
+-25 + 5 = -20 (101100)
+-25 + 6 = -19 (101101)
+-25 + 7 = -18 (101110)
+-25 + 8 = -17 (101111)
+-25 + 9 = -16 (110000)
+-25 + 10 = -15 (110001)
+-25 + 11 = -14 (110010)
+-25 + 12 = -13 (110011)
+-25 + 13 = -12 (110100)
+-25 + 14 = -11 (110101)
+-25 + 15 = -10 (110110)
+-25 + 16 = -9 (110111)
+-25 + 17 = -8 (111000)
+-25 + 18 = -7 (111001)
+-25 + 19 = -6 (111010)
+-25 + 20 = -5 (111011)
+-25 + 21 = -4 (111100)
+-25 + 22 = -3 (111101)
+-25 + 23 = -2 (111110)
+-25 + 24 = -1 (111111)
+-25 + 25 = 0 (000000)
+-25 + 26 = 1 (000001)
+-25 + 27 = 2 (000010)
+-25 + 28 = 3 (000011)
+-25 + 29 = 4 (000100)
+-25 + 30 = 5 (000101)
+-25 + 31 = 6 (000110)
+-25 + -32 = 7 (000111)
+-25 + -31 = 8 (001000)
+-25 + -30 = 9 (001001)
+-25 + -29 = 10 (001010)
+-25 + -28 = 11 (001011)
+-25 + -27 = 12 (001100)
+-25 + -26 = 13 (001101)
+-25 + -25 = 14 (001110)
+-25 + -24 = 15 (001111)
+-25 + -23 = 16 (010000)
+-25 + -22 = 17 (010001)
+-25 + -21 = 18 (010010)
+-25 + -20 = 19 (010011)
+-25 + -19 = 20 (010100)
+-25 + -18 = 21 (010101)
+-25 + -17 = 22 (010110)
+-25 + -16 = 23 (010111)
+-25 + -15 = 24 (011000)
+-25 + -14 = 25 (011001)
+-25 + -13 = 26 (011010)
+-25 + -12 = 27 (011011)
+-25 + -11 = 28 (011100)
+-25 + -10 = 29 (011101)
+-25 + -9 = 30 (011110)
+-25 + -8 = 31 (011111)
+-25 + -7 = -32 (100000)
+-25 + -6 = -31 (100001)
+-25 + -5 = -30 (100010)
+-25 + -4 = -29 (100011)
+-25 + -3 = -28 (100100)
+-25 + -2 = -27 (100101)
+-25 + -1 = -26 (100110)
+-24 + 0 = -24 (101000)
+-24 + 1 = -23 (101001)
+-24 + 2 = -22 (101010)
+-24 + 3 = -21 (101011)
+-24 + 4 = -20 (101100)
+-24 + 5 = -19 (101101)
+-24 + 6 = -18 (101110)
+-24 + 7 = -17 (101111)
+-24 + 8 = -16 (110000)
+-24 + 9 = -15 (110001)
+-24 + 10 = -14 (110010)
+-24 + 11 = -13 (110011)
+-24 + 12 = -12 (110100)
+-24 + 13 = -11 (110101)
+-24 + 14 = -10 (110110)
+-24 + 15 = -9 (110111)
+-24 + 16 = -8 (111000)
+-24 + 17 = -7 (111001)
+-24 + 18 = -6 (111010)
+-24 + 19 = -5 (111011)
+-24 + 20 = -4 (111100)
+-24 + 21 = -3 (111101)
+-24 + 22 = -2 (111110)
+-24 + 23 = -1 (111111)
+-24 + 24 = 0 (000000)
+-24 + 25 = 1 (000001)
+-24 + 26 = 2 (000010)
+-24 + 27 = 3 (000011)
+-24 + 28 = 4 (000100)
+-24 + 29 = 5 (000101)
+-24 + 30 = 6 (000110)
+-24 + 31 = 7 (000111)
+-24 + -32 = 8 (001000)
+-24 + -31 = 9 (001001)
+-24 + -30 = 10 (001010)
+-24 + -29 = 11 (001011)
+-24 + -28 = 12 (001100)
+-24 + -27 = 13 (001101)
+-24 + -26 = 14 (001110)
+-24 + -25 = 15 (001111)
+-24 + -24 = 16 (010000)
+-24 + -23 = 17 (010001)
+-24 + -22 = 18 (010010)
+-24 + -21 = 19 (010011)
+-24 + -20 = 20 (010100)
+-24 + -19 = 21 (010101)
+-24 + -18 = 22 (010110)
+-24 + -17 = 23 (010111)
+-24 + -16 = 24 (011000)
+-24 + -15 = 25 (011001)
+-24 + -14 = 26 (011010)
+-24 + -13 = 27 (011011)
+-24 + -12 = 28 (011100)
+-24 + -11 = 29 (011101)
+-24 + -10 = 30 (011110)
+-24 + -9 = 31 (011111)
+-24 + -8 = -32 (100000)
+-24 + -7 = -31 (100001)
+-24 + -6 = -30 (100010)
+-24 + -5 = -29 (100011)
+-24 + -4 = -28 (100100)
+-24 + -3 = -27 (100101)
+-24 + -2 = -26 (100110)
+-24 + -1 = -25 (100111)
+-23 + 0 = -23 (101001)
+-23 + 1 = -22 (101010)
+-23 + 2 = -21 (101011)
+-23 + 3 = -20 (101100)
+-23 + 4 = -19 (101101)
+-23 + 5 = -18 (101110)
+-23 + 6 = -17 (101111)
+-23 + 7 = -16 (110000)
+-23 + 8 = -15 (110001)
+-23 + 9 = -14 (110010)
+-23 + 10 = -13 (110011)
+-23 + 11 = -12 (110100)
+-23 + 12 = -11 (110101)
+-23 + 13 = -10 (110110)
+-23 + 14 = -9 (110111)
+-23 + 15 = -8 (111000)
+-23 + 16 = -7 (111001)
+-23 + 17 = -6 (111010)
+-23 + 18 = -5 (111011)
+-23 + 19 = -4 (111100)
+-23 + 20 = -3 (111101)
+-23 + 21 = -2 (111110)
+-23 + 22 = -1 (111111)
+-23 + 23 = 0 (000000)
+-23 + 24 = 1 (000001)
+-23 + 25 = 2 (000010)
+-23 + 26 = 3 (000011)
+-23 + 27 = 4 (000100)
+-23 + 28 = 5 (000101)
+-23 + 29 = 6 (000110)
+-23 + 30 = 7 (000111)
+-23 + 31 = 8 (001000)
+-23 + -32 = 9 (001001)
+-23 + -31 = 10 (001010)
+-23 + -30 = 11 (001011)
+-23 + -29 = 12 (001100)
+-23 + -28 = 13 (001101)
+-23 + -27 = 14 (001110)
+-23 + -26 = 15 (001111)
+-23 + -25 = 16 (010000)
+-23 + -24 = 17 (010001)
+-23 + -23 = 18 (010010)
+-23 + -22 = 19 (010011)
+-23 + -21 = 20 (010100)
+-23 + -20 = 21 (010101)
+-23 + -19 = 22 (010110)
+-23 + -18 = 23 (010111)
+-23 + -17 = 24 (011000)
+-23 + -16 = 25 (011001)
+-23 + -15 = 26 (011010)
+-23 + -14 = 27 (011011)
+-23 + -13 = 28 (011100)
+-23 + -12 = 29 (011101)
+-23 + -11 = 30 (011110)
+-23 + -10 = 31 (011111)
+-23 + -9 = -32 (100000)
+-23 + -8 = -31 (100001)
+-23 + -7 = -30 (100010)
+-23 + -6 = -29 (100011)
+-23 + -5 = -28 (100100)
+-23 + -4 = -27 (100101)
+-23 + -3 = -26 (100110)
+-23 + -2 = -25 (100111)
+-23 + -1 = -24 (101000)
+-22 + 0 = -22 (101010)
+-22 + 1 = -21 (101011)
+-22 + 2 = -20 (101100)
+-22 + 3 = -19 (101101)
+-22 + 4 = -18 (101110)
+-22 + 5 = -17 (101111)
+-22 + 6 = -16 (110000)
+-22 + 7 = -15 (110001)
+-22 + 8 = -14 (110010)
+-22 + 9 = -13 (110011)
+-22 + 10 = -12 (110100)
+-22 + 11 = -11 (110101)
+-22 + 12 = -10 (110110)
+-22 + 13 = -9 (110111)
+-22 + 14 = -8 (111000)
+-22 + 15 = -7 (111001)
+-22 + 16 = -6 (111010)
+-22 + 17 = -5 (111011)
+-22 + 18 = -4 (111100)
+-22 + 19 = -3 (111101)
+-22 + 20 = -2 (111110)
+-22 + 21 = -1 (111111)
+-22 + 22 = 0 (000000)
+-22 + 23 = 1 (000001)
+-22 + 24 = 2 (000010)
+-22 + 25 = 3 (000011)
+-22 + 26 = 4 (000100)
+-22 + 27 = 5 (000101)
+-22 + 28 = 6 (000110)
+-22 + 29 = 7 (000111)
+-22 + 30 = 8 (001000)
+-22 + 31 = 9 (001001)
+-22 + -32 = 10 (001010)
+-22 + -31 = 11 (001011)
+-22 + -30 = 12 (001100)
+-22 + -29 = 13 (001101)
+-22 + -28 = 14 (001110)
+-22 + -27 = 15 (001111)
+-22 + -26 = 16 (010000)
+-22 + -25 = 17 (010001)
+-22 + -24 = 18 (010010)
+-22 + -23 = 19 (010011)
+-22 + -22 = 20 (010100)
+-22 + -21 = 21 (010101)
+-22 + -20 = 22 (010110)
+-22 + -19 = 23 (010111)
+-22 + -18 = 24 (011000)
+-22 + -17 = 25 (011001)
+-22 + -16 = 26 (011010)
+-22 + -15 = 27 (011011)
+-22 + -14 = 28 (011100)
+-22 + -13 = 29 (011101)
+-22 + -12 = 30 (011110)
+-22 + -11 = 31 (011111)
+-22 + -10 = -32 (100000)
+-22 + -9 = -31 (100001)
+-22 + -8 = -30 (100010)
+-22 + -7 = -29 (100011)
+-22 + -6 = -28 (100100)
+-22 + -5 = -27 (100101)
+-22 + -4 = -26 (100110)
+-22 + -3 = -25 (100111)
+-22 + -2 = -24 (101000)
+-22 + -1 = -23 (101001)
+-21 + 0 = -21 (101011)
+-21 + 1 = -20 (101100)
+-21 + 2 = -19 (101101)
+-21 + 3 = -18 (101110)
+-21 + 4 = -17 (101111)
+-21 + 5 = -16 (110000)
+-21 + 6 = -15 (110001)
+-21 + 7 = -14 (110010)
+-21 + 8 = -13 (110011)
+-21 + 9 = -12 (110100)
+-21 + 10 = -11 (110101)
+-21 + 11 = -10 (110110)
+-21 + 12 = -9 (110111)
+-21 + 13 = -8 (111000)
+-21 + 14 = -7 (111001)
+-21 + 15 = -6 (111010)
+-21 + 16 = -5 (111011)
+-21 + 17 = -4 (111100)
+-21 + 18 = -3 (111101)
+-21 + 19 = -2 (111110)
+-21 + 20 = -1 (111111)
+-21 + 21 = 0 (000000)
+-21 + 22 = 1 (000001)
+-21 + 23 = 2 (000010)
+-21 + 24 = 3 (000011)
+-21 + 25 = 4 (000100)
+-21 + 26 = 5 (000101)
+-21 + 27 = 6 (000110)
+-21 + 28 = 7 (000111)
+-21 + 29 = 8 (001000)
+-21 + 30 = 9 (001001)
+-21 + 31 = 10 (001010)
+-21 + -32 = 11 (001011)
+-21 + -31 = 12 (001100)
+-21 + -30 = 13 (001101)
+-21 + -29 = 14 (001110)
+-21 + -28 = 15 (001111)
+-21 + -27 = 16 (010000)
+-21 + -26 = 17 (010001)
+-21 + -25 = 18 (010010)
+-21 + -24 = 19 (010011)
+-21 + -23 = 20 (010100)
+-21 + -22 = 21 (010101)
+-21 + -21 = 22 (010110)
+-21 + -20 = 23 (010111)
+-21 + -19 = 24 (011000)
+-21 + -18 = 25 (011001)
+-21 + -17 = 26 (011010)
+-21 + -16 = 27 (011011)
+-21 + -15 = 28 (011100)
+-21 + -14 = 29 (011101)
+-21 + -13 = 30 (011110)
+-21 + -12 = 31 (011111)
+-21 + -11 = -32 (100000)
+-21 + -10 = -31 (100001)
+-21 + -9 = -30 (100010)
+-21 + -8 = -29 (100011)
+-21 + -7 = -28 (100100)
+-21 + -6 = -27 (100101)
+-21 + -5 = -26 (100110)
+-21 + -4 = -25 (100111)
+-21 + -3 = -24 (101000)
+-21 + -2 = -23 (101001)
+-21 + -1 = -22 (101010)
+-20 + 0 = -20 (101100)
+-20 + 1 = -19 (101101)
+-20 + 2 = -18 (101110)
+-20 + 3 = -17 (101111)
+-20 + 4 = -16 (110000)
+-20 + 5 = -15 (110001)
+-20 + 6 = -14 (110010)
+-20 + 7 = -13 (110011)
+-20 + 8 = -12 (110100)
+-20 + 9 = -11 (110101)
+-20 + 10 = -10 (110110)
+-20 + 11 = -9 (110111)
+-20 + 12 = -8 (111000)
+-20 + 13 = -7 (111001)
+-20 + 14 = -6 (111010)
+-20 + 15 = -5 (111011)
+-20 + 16 = -4 (111100)
+-20 + 17 = -3 (111101)
+-20 + 18 = -2 (111110)
+-20 + 19 = -1 (111111)
+-20 + 20 = 0 (000000)
+-20 + 21 = 1 (000001)
+-20 + 22 = 2 (000010)
+-20 + 23 = 3 (000011)
+-20 + 24 = 4 (000100)
+-20 + 25 = 5 (000101)
+-20 + 26 = 6 (000110)
+-20 + 27 = 7 (000111)
+-20 + 28 = 8 (001000)
+-20 + 29 = 9 (001001)
+-20 + 30 = 10 (001010)
+-20 + 31 = 11 (001011)
+-20 + -32 = 12 (001100)
+-20 + -31 = 13 (001101)
+-20 + -30 = 14 (001110)
+-20 + -29 = 15 (001111)
+-20 + -28 = 16 (010000)
+-20 + -27 = 17 (010001)
+-20 + -26 = 18 (010010)
+-20 + -25 = 19 (010011)
+-20 + -24 = 20 (010100)
+-20 + -23 = 21 (010101)
+-20 + -22 = 22 (010110)
+-20 + -21 = 23 (010111)
+-20 + -20 = 24 (011000)
+-20 + -19 = 25 (011001)
+-20 + -18 = 26 (011010)
+-20 + -17 = 27 (011011)
+-20 + -16 = 28 (011100)
+-20 + -15 = 29 (011101)
+-20 + -14 = 30 (011110)
+-20 + -13 = 31 (011111)
+-20 + -12 = -32 (100000)
+-20 + -11 = -31 (100001)
+-20 + -10 = -30 (100010)
+-20 + -9 = -29 (100011)
+-20 + -8 = -28 (100100)
+-20 + -7 = -27 (100101)
+-20 + -6 = -26 (100110)
+-20 + -5 = -25 (100111)
+-20 + -4 = -24 (101000)
+-20 + -3 = -23 (101001)
+-20 + -2 = -22 (101010)
+-20 + -1 = -21 (101011)
+-19 + 0 = -19 (101101)
+-19 + 1 = -18 (101110)
+-19 + 2 = -17 (101111)
+-19 + 3 = -16 (110000)
+-19 + 4 = -15 (110001)
+-19 + 5 = -14 (110010)
+-19 + 6 = -13 (110011)
+-19 + 7 = -12 (110100)
+-19 + 8 = -11 (110101)
+-19 + 9 = -10 (110110)
+-19 + 10 = -9 (110111)
+-19 + 11 = -8 (111000)
+-19 + 12 = -7 (111001)
+-19 + 13 = -6 (111010)
+-19 + 14 = -5 (111011)
+-19 + 15 = -4 (111100)
+-19 + 16 = -3 (111101)
+-19 + 17 = -2 (111110)
+-19 + 18 = -1 (111111)
+-19 + 19 = 0 (000000)
+-19 + 20 = 1 (000001)
+-19 + 21 = 2 (000010)
+-19 + 22 = 3 (000011)
+-19 + 23 = 4 (000100)
+-19 + 24 = 5 (000101)
+-19 + 25 = 6 (000110)
+-19 + 26 = 7 (000111)
+-19 + 27 = 8 (001000)
+-19 + 28 = 9 (001001)
+-19 + 29 = 10 (001010)
+-19 + 30 = 11 (001011)
+-19 + 31 = 12 (001100)
+-19 + -32 = 13 (001101)
+-19 + -31 = 14 (001110)
+-19 + -30 = 15 (001111)
+-19 + -29 = 16 (010000)
+-19 + -28 = 17 (010001)
+-19 + -27 = 18 (010010)
+-19 + -26 = 19 (010011)
+-19 + -25 = 20 (010100)
+-19 + -24 = 21 (010101)
+-19 + -23 = 22 (010110)
+-19 + -22 = 23 (010111)
+-19 + -21 = 24 (011000)
+-19 + -20 = 25 (011001)
+-19 + -19 = 26 (011010)
+-19 + -18 = 27 (011011)
+-19 + -17 = 28 (011100)
+-19 + -16 = 29 (011101)
+-19 + -15 = 30 (011110)
+-19 + -14 = 31 (011111)
+-19 + -13 = -32 (100000)
+-19 + -12 = -31 (100001)
+-19 + -11 = -30 (100010)
+-19 + -10 = -29 (100011)
+-19 + -9 = -28 (100100)
+-19 + -8 = -27 (100101)
+-19 + -7 = -26 (100110)
+-19 + -6 = -25 (100111)
+-19 + -5 = -24 (101000)
+-19 + -4 = -23 (101001)
+-19 + -3 = -22 (101010)
+-19 + -2 = -21 (101011)
+-19 + -1 = -20 (101100)
+-18 + 0 = -18 (101110)
+-18 + 1 = -17 (101111)
+-18 + 2 = -16 (110000)
+-18 + 3 = -15 (110001)
+-18 + 4 = -14 (110010)
+-18 + 5 = -13 (110011)
+-18 + 6 = -12 (110100)
+-18 + 7 = -11 (110101)
+-18 + 8 = -10 (110110)
+-18 + 9 = -9 (110111)
+-18 + 10 = -8 (111000)
+-18 + 11 = -7 (111001)
+-18 + 12 = -6 (111010)
+-18 + 13 = -5 (111011)
+-18 + 14 = -4 (111100)
+-18 + 15 = -3 (111101)
+-18 + 16 = -2 (111110)
+-18 + 17 = -1 (111111)
+-18 + 18 = 0 (000000)
+-18 + 19 = 1 (000001)
+-18 + 20 = 2 (000010)
+-18 + 21 = 3 (000011)
+-18 + 22 = 4 (000100)
+-18 + 23 = 5 (000101)
+-18 + 24 = 6 (000110)
+-18 + 25 = 7 (000111)
+-18 + 26 = 8 (001000)
+-18 + 27 = 9 (001001)
+-18 + 28 = 10 (001010)
+-18 + 29 = 11 (001011)
+-18 + 30 = 12 (001100)
+-18 + 31 = 13 (001101)
+-18 + -32 = 14 (001110)
+-18 + -31 = 15 (001111)
+-18 + -30 = 16 (010000)
+-18 + -29 = 17 (010001)
+-18 + -28 = 18 (010010)
+-18 + -27 = 19 (010011)
+-18 + -26 = 20 (010100)
+-18 + -25 = 21 (010101)
+-18 + -24 = 22 (010110)
+-18 + -23 = 23 (010111)
+-18 + -22 = 24 (011000)
+-18 + -21 = 25 (011001)
+-18 + -20 = 26 (011010)
+-18 + -19 = 27 (011011)
+-18 + -18 = 28 (011100)
+-18 + -17 = 29 (011101)
+-18 + -16 = 30 (011110)
+-18 + -15 = 31 (011111)
+-18 + -14 = -32 (100000)
+-18 + -13 = -31 (100001)
+-18 + -12 = -30 (100010)
+-18 + -11 = -29 (100011)
+-18 + -10 = -28 (100100)
+-18 + -9 = -27 (100101)
+-18 + -8 = -26 (100110)
+-18 + -7 = -25 (100111)
+-18 + -6 = -24 (101000)
+-18 + -5 = -23 (101001)
+-18 + -4 = -22 (101010)
+-18 + -3 = -21 (101011)
+-18 + -2 = -20 (101100)
+-18 + -1 = -19 (101101)
+-17 + 0 = -17 (101111)
+-17 + 1 = -16 (110000)
+-17 + 2 = -15 (110001)
+-17 + 3 = -14 (110010)
+-17 + 4 = -13 (110011)
+-17 + 5 = -12 (110100)
+-17 + 6 = -11 (110101)
+-17 + 7 = -10 (110110)
+-17 + 8 = -9 (110111)
+-17 + 9 = -8 (111000)
+-17 + 10 = -7 (111001)
+-17 + 11 = -6 (111010)
+-17 + 12 = -5 (111011)
+-17 + 13 = -4 (111100)
+-17 + 14 = -3 (111101)
+-17 + 15 = -2 (111110)
+-17 + 16 = -1 (111111)
+-17 + 17 = 0 (000000)
+-17 + 18 = 1 (000001)
+-17 + 19 = 2 (000010)
+-17 + 20 = 3 (000011)
+-17 + 21 = 4 (000100)
+-17 + 22 = 5 (000101)
+-17 + 23 = 6 (000110)
+-17 + 24 = 7 (000111)
+-17 + 25 = 8 (001000)
+-17 + 26 = 9 (001001)
+-17 + 27 = 10 (001010)
+-17 + 28 = 11 (001011)
+-17 + 29 = 12 (001100)
+-17 + 30 = 13 (001101)
+-17 + 31 = 14 (001110)
+-17 + -32 = 15 (001111)
+-17 + -31 = 16 (010000)
+-17 + -30 = 17 (010001)
+-17 + -29 = 18 (010010)
+-17 + -28 = 19 (010011)
+-17 + -27 = 20 (010100)
+-17 + -26 = 21 (010101)
+-17 + -25 = 22 (010110)
+-17 + -24 = 23 (010111)
+-17 + -23 = 24 (011000)
+-17 + -22 = 25 (011001)
+-17 + -21 = 26 (011010)
+-17 + -20 = 27 (011011)
+-17 + -19 = 28 (011100)
+-17 + -18 = 29 (011101)
+-17 + -17 = 30 (011110)
+-17 + -16 = 31 (011111)
+-17 + -15 = -32 (100000)
+-17 + -14 = -31 (100001)
+-17 + -13 = -30 (100010)
+-17 + -12 = -29 (100011)
+-17 + -11 = -28 (100100)
+-17 + -10 = -27 (100101)
+-17 + -9 = -26 (100110)
+-17 + -8 = -25 (100111)
+-17 + -7 = -24 (101000)
+-17 + -6 = -23 (101001)
+-17 + -5 = -22 (101010)
+-17 + -4 = -21 (101011)
+-17 + -3 = -20 (101100)
+-17 + -2 = -19 (101101)
+-17 + -1 = -18 (101110)
+-16 + 0 = -16 (110000)
+-16 + 1 = -15 (110001)
+-16 + 2 = -14 (110010)
+-16 + 3 = -13 (110011)
+-16 + 4 = -12 (110100)
+-16 + 5 = -11 (110101)
+-16 + 6 = -10 (110110)
+-16 + 7 = -9 (110111)
+-16 + 8 = -8 (111000)
+-16 + 9 = -7 (111001)
+-16 + 10 = -6 (111010)
+-16 + 11 = -5 (111011)
+-16 + 12 = -4 (111100)
+-16 + 13 = -3 (111101)
+-16 + 14 = -2 (111110)
+-16 + 15 = -1 (111111)
+-16 + 16 = 0 (000000)
+-16 + 17 = 1 (000001)
+-16 + 18 = 2 (000010)
+-16 + 19 = 3 (000011)
+-16 + 20 = 4 (000100)
+-16 + 21 = 5 (000101)
+-16 + 22 = 6 (000110)
+-16 + 23 = 7 (000111)
+-16 + 24 = 8 (001000)
+-16 + 25 = 9 (001001)
+-16 + 26 = 10 (001010)
+-16 + 27 = 11 (001011)
+-16 + 28 = 12 (001100)
+-16 + 29 = 13 (001101)
+-16 + 30 = 14 (001110)
+-16 + 31 = 15 (001111)
+-16 + -32 = 16 (010000)
+-16 + -31 = 17 (010001)
+-16 + -30 = 18 (010010)
+-16 + -29 = 19 (010011)
+-16 + -28 = 20 (010100)
+-16 + -27 = 21 (010101)
+-16 + -26 = 22 (010110)
+-16 + -25 = 23 (010111)
+-16 + -24 = 24 (011000)
+-16 + -23 = 25 (011001)
+-16 + -22 = 26 (011010)
+-16 + -21 = 27 (011011)
+-16 + -20 = 28 (011100)
+-16 + -19 = 29 (011101)
+-16 + -18 = 30 (011110)
+-16 + -17 = 31 (011111)
+-16 + -16 = -32 (100000)
+-16 + -15 = -31 (100001)
+-16 + -14 = -30 (100010)
+-16 + -13 = -29 (100011)
+-16 + -12 = -28 (100100)
+-16 + -11 = -27 (100101)
+-16 + -10 = -26 (100110)
+-16 + -9 = -25 (100111)
+-16 + -8 = -24 (101000)
+-16 + -7 = -23 (101001)
+-16 + -6 = -22 (101010)
+-16 + -5 = -21 (101011)
+-16 + -4 = -20 (101100)
+-16 + -3 = -19 (101101)
+-16 + -2 = -18 (101110)
+-16 + -1 = -17 (101111)
+-15 + 0 = -15 (110001)
+-15 + 1 = -14 (110010)
+-15 + 2 = -13 (110011)
+-15 + 3 = -12 (110100)
+-15 + 4 = -11 (110101)
+-15 + 5 = -10 (110110)
+-15 + 6 = -9 (110111)
+-15 + 7 = -8 (111000)
+-15 + 8 = -7 (111001)
+-15 + 9 = -6 (111010)
+-15 + 10 = -5 (111011)
+-15 + 11 = -4 (111100)
+-15 + 12 = -3 (111101)
+-15 + 13 = -2 (111110)
+-15 + 14 = -1 (111111)
+-15 + 15 = 0 (000000)
+-15 + 16 = 1 (000001)
+-15 + 17 = 2 (000010)
+-15 + 18 = 3 (000011)
+-15 + 19 = 4 (000100)
+-15 + 20 = 5 (000101)
+-15 + 21 = 6 (000110)
+-15 + 22 = 7 (000111)
+-15 + 23 = 8 (001000)
+-15 + 24 = 9 (001001)
+-15 + 25 = 10 (001010)
+-15 + 26 = 11 (001011)
+-15 + 27 = 12 (001100)
+-15 + 28 = 13 (001101)
+-15 + 29 = 14 (001110)
+-15 + 30 = 15 (001111)
+-15 + 31 = 16 (010000)
+-15 + -32 = 17 (010001)
+-15 + -31 = 18 (010010)
+-15 + -30 = 19 (010011)
+-15 + -29 = 20 (010100)
+-15 + -28 = 21 (010101)
+-15 + -27 = 22 (010110)
+-15 + -26 = 23 (010111)
+-15 + -25 = 24 (011000)
+-15 + -24 = 25 (011001)
+-15 + -23 = 26 (011010)
+-15 + -22 = 27 (011011)
+-15 + -21 = 28 (011100)
+-15 + -20 = 29 (011101)
+-15 + -19 = 30 (011110)
+-15 + -18 = 31 (011111)
+-15 + -17 = -32 (100000)
+-15 + -16 = -31 (100001)
+-15 + -15 = -30 (100010)
+-15 + -14 = -29 (100011)
+-15 + -13 = -28 (100100)
+-15 + -12 = -27 (100101)
+-15 + -11 = -26 (100110)
+-15 + -10 = -25 (100111)
+-15 + -9 = -24 (101000)
+-15 + -8 = -23 (101001)
+-15 + -7 = -22 (101010)
+-15 + -6 = -21 (101011)
+-15 + -5 = -20 (101100)
+-15 + -4 = -19 (101101)
+-15 + -3 = -18 (101110)
+-15 + -2 = -17 (101111)
+-15 + -1 = -16 (110000)
+-14 + 0 = -14 (110010)
+-14 + 1 = -13 (110011)
+-14 + 2 = -12 (110100)
+-14 + 3 = -11 (110101)
+-14 + 4 = -10 (110110)
+-14 + 5 = -9 (110111)
+-14 + 6 = -8 (111000)
+-14 + 7 = -7 (111001)
+-14 + 8 = -6 (111010)
+-14 + 9 = -5 (111011)
+-14 + 10 = -4 (111100)
+-14 + 11 = -3 (111101)
+-14 + 12 = -2 (111110)
+-14 + 13 = -1 (111111)
+-14 + 14 = 0 (000000)
+-14 + 15 = 1 (000001)
+-14 + 16 = 2 (000010)
+-14 + 17 = 3 (000011)
+-14 + 18 = 4 (000100)
+-14 + 19 = 5 (000101)
+-14 + 20 = 6 (000110)
+-14 + 21 = 7 (000111)
+-14 + 22 = 8 (001000)
+-14 + 23 = 9 (001001)
+-14 + 24 = 10 (001010)
+-14 + 25 = 11 (001011)
+-14 + 26 = 12 (001100)
+-14 + 27 = 13 (001101)
+-14 + 28 = 14 (001110)
+-14 + 29 = 15 (001111)
+-14 + 30 = 16 (010000)
+-14 + 31 = 17 (010001)
+-14 + -32 = 18 (010010)
+-14 + -31 = 19 (010011)
+-14 + -30 = 20 (010100)
+-14 + -29 = 21 (010101)
+-14 + -28 = 22 (010110)
+-14 + -27 = 23 (010111)
+-14 + -26 = 24 (011000)
+-14 + -25 = 25 (011001)
+-14 + -24 = 26 (011010)
+-14 + -23 = 27 (011011)
+-14 + -22 = 28 (011100)
+-14 + -21 = 29 (011101)
+-14 + -20 = 30 (011110)
+-14 + -19 = 31 (011111)
+-14 + -18 = -32 (100000)
+-14 + -17 = -31 (100001)
+-14 + -16 = -30 (100010)
+-14 + -15 = -29 (100011)
+-14 + -14 = -28 (100100)
+-14 + -13 = -27 (100101)
+-14 + -12 = -26 (100110)
+-14 + -11 = -25 (100111)
+-14 + -10 = -24 (101000)
+-14 + -9 = -23 (101001)
+-14 + -8 = -22 (101010)
+-14 + -7 = -21 (101011)
+-14 + -6 = -20 (101100)
+-14 + -5 = -19 (101101)
+-14 + -4 = -18 (101110)
+-14 + -3 = -17 (101111)
+-14 + -2 = -16 (110000)
+-14 + -1 = -15 (110001)
+-13 + 0 = -13 (110011)
+-13 + 1 = -12 (110100)
+-13 + 2 = -11 (110101)
+-13 + 3 = -10 (110110)
+-13 + 4 = -9 (110111)
+-13 + 5 = -8 (111000)
+-13 + 6 = -7 (111001)
+-13 + 7 = -6 (111010)
+-13 + 8 = -5 (111011)
+-13 + 9 = -4 (111100)
+-13 + 10 = -3 (111101)
+-13 + 11 = -2 (111110)
+-13 + 12 = -1 (111111)
+-13 + 13 = 0 (000000)
+-13 + 14 = 1 (000001)
+-13 + 15 = 2 (000010)
+-13 + 16 = 3 (000011)
+-13 + 17 = 4 (000100)
+-13 + 18 = 5 (000101)
+-13 + 19 = 6 (000110)
+-13 + 20 = 7 (000111)
+-13 + 21 = 8 (001000)
+-13 + 22 = 9 (001001)
+-13 + 23 = 10 (001010)
+-13 + 24 = 11 (001011)
+-13 + 25 = 12 (001100)
+-13 + 26 = 13 (001101)
+-13 + 27 = 14 (001110)
+-13 + 28 = 15 (001111)
+-13 + 29 = 16 (010000)
+-13 + 30 = 17 (010001)
+-13 + 31 = 18 (010010)
+-13 + -32 = 19 (010011)
+-13 + -31 = 20 (010100)
+-13 + -30 = 21 (010101)
+-13 + -29 = 22 (010110)
+-13 + -28 = 23 (010111)
+-13 + -27 = 24 (011000)
+-13 + -26 = 25 (011001)
+-13 + -25 = 26 (011010)
+-13 + -24 = 27 (011011)
+-13 + -23 = 28 (011100)
+-13 + -22 = 29 (011101)
+-13 + -21 = 30 (011110)
+-13 + -20 = 31 (011111)
+-13 + -19 = -32 (100000)
+-13 + -18 = -31 (100001)
+-13 + -17 = -30 (100010)
+-13 + -16 = -29 (100011)
+-13 + -15 = -28 (100100)
+-13 + -14 = -27 (100101)
+-13 + -13 = -26 (100110)
+-13 + -12 = -25 (100111)
+-13 + -11 = -24 (101000)
+-13 + -10 = -23 (101001)
+-13 + -9 = -22 (101010)
+-13 + -8 = -21 (101011)
+-13 + -7 = -20 (101100)
+-13 + -6 = -19 (101101)
+-13 + -5 = -18 (101110)
+-13 + -4 = -17 (101111)
+-13 + -3 = -16 (110000)
+-13 + -2 = -15 (110001)
+-13 + -1 = -14 (110010)
+-12 + 0 = -12 (110100)
+-12 + 1 = -11 (110101)
+-12 + 2 = -10 (110110)
+-12 + 3 = -9 (110111)
+-12 + 4 = -8 (111000)
+-12 + 5 = -7 (111001)
+-12 + 6 = -6 (111010)
+-12 + 7 = -5 (111011)
+-12 + 8 = -4 (111100)
+-12 + 9 = -3 (111101)
+-12 + 10 = -2 (111110)
+-12 + 11 = -1 (111111)
+-12 + 12 = 0 (000000)
+-12 + 13 = 1 (000001)
+-12 + 14 = 2 (000010)
+-12 + 15 = 3 (000011)
+-12 + 16 = 4 (000100)
+-12 + 17 = 5 (000101)
+-12 + 18 = 6 (000110)
+-12 + 19 = 7 (000111)
+-12 + 20 = 8 (001000)
+-12 + 21 = 9 (001001)
+-12 + 22 = 10 (001010)
+-12 + 23 = 11 (001011)
+-12 + 24 = 12 (001100)
+-12 + 25 = 13 (001101)
+-12 + 26 = 14 (001110)
+-12 + 27 = 15 (001111)
+-12 + 28 = 16 (010000)
+-12 + 29 = 17 (010001)
+-12 + 30 = 18 (010010)
+-12 + 31 = 19 (010011)
+-12 + -32 = 20 (010100)
+-12 + -31 = 21 (010101)
+-12 + -30 = 22 (010110)
+-12 + -29 = 23 (010111)
+-12 + -28 = 24 (011000)
+-12 + -27 = 25 (011001)
+-12 + -26 = 26 (011010)
+-12 + -25 = 27 (011011)
+-12 + -24 = 28 (011100)
+-12 + -23 = 29 (011101)
+-12 + -22 = 30 (011110)
+-12 + -21 = 31 (011111)
+-12 + -20 = -32 (100000)
+-12 + -19 = -31 (100001)
+-12 + -18 = -30 (100010)
+-12 + -17 = -29 (100011)
+-12 + -16 = -28 (100100)
+-12 + -15 = -27 (100101)
+-12 + -14 = -26 (100110)
+-12 + -13 = -25 (100111)
+-12 + -12 = -24 (101000)
+-12 + -11 = -23 (101001)
+-12 + -10 = -22 (101010)
+-12 + -9 = -21 (101011)
+-12 + -8 = -20 (101100)
+-12 + -7 = -19 (101101)
+-12 + -6 = -18 (101110)
+-12 + -5 = -17 (101111)
+-12 + -4 = -16 (110000)
+-12 + -3 = -15 (110001)
+-12 + -2 = -14 (110010)
+-12 + -1 = -13 (110011)
+-11 + 0 = -11 (110101)
+-11 + 1 = -10 (110110)
+-11 + 2 = -9 (110111)
+-11 + 3 = -8 (111000)
+-11 + 4 = -7 (111001)
+-11 + 5 = -6 (111010)
+-11 + 6 = -5 (111011)
+-11 + 7 = -4 (111100)
+-11 + 8 = -3 (111101)
+-11 + 9 = -2 (111110)
+-11 + 10 = -1 (111111)
+-11 + 11 = 0 (000000)
+-11 + 12 = 1 (000001)
+-11 + 13 = 2 (000010)
+-11 + 14 = 3 (000011)
+-11 + 15 = 4 (000100)
+-11 + 16 = 5 (000101)
+-11 + 17 = 6 (000110)
+-11 + 18 = 7 (000111)
+-11 + 19 = 8 (001000)
+-11 + 20 = 9 (001001)
+-11 + 21 = 10 (001010)
+-11 + 22 = 11 (001011)
+-11 + 23 = 12 (001100)
+-11 + 24 = 13 (001101)
+-11 + 25 = 14 (001110)
+-11 + 26 = 15 (001111)
+-11 + 27 = 16 (010000)
+-11 + 28 = 17 (010001)
+-11 + 29 = 18 (010010)
+-11 + 30 = 19 (010011)
+-11 + 31 = 20 (010100)
+-11 + -32 = 21 (010101)
+-11 + -31 = 22 (010110)
+-11 + -30 = 23 (010111)
+-11 + -29 = 24 (011000)
+-11 + -28 = 25 (011001)
+-11 + -27 = 26 (011010)
+-11 + -26 = 27 (011011)
+-11 + -25 = 28 (011100)
+-11 + -24 = 29 (011101)
+-11 + -23 = 30 (011110)
+-11 + -22 = 31 (011111)
+-11 + -21 = -32 (100000)
+-11 + -20 = -31 (100001)
+-11 + -19 = -30 (100010)
+-11 + -18 = -29 (100011)
+-11 + -17 = -28 (100100)
+-11 + -16 = -27 (100101)
+-11 + -15 = -26 (100110)
+-11 + -14 = -25 (100111)
+-11 + -13 = -24 (101000)
+-11 + -12 = -23 (101001)
+-11 + -11 = -22 (101010)
+-11 + -10 = -21 (101011)
+-11 + -9 = -20 (101100)
+-11 + -8 = -19 (101101)
+-11 + -7 = -18 (101110)
+-11 + -6 = -17 (101111)
+-11 + -5 = -16 (110000)
+-11 + -4 = -15 (110001)
+-11 + -3 = -14 (110010)
+-11 + -2 = -13 (110011)
+-11 + -1 = -12 (110100)
+-10 + 0 = -10 (110110)
+-10 + 1 = -9 (110111)
+-10 + 2 = -8 (111000)
+-10 + 3 = -7 (111001)
+-10 + 4 = -6 (111010)
+-10 + 5 = -5 (111011)
+-10 + 6 = -4 (111100)
+-10 + 7 = -3 (111101)
+-10 + 8 = -2 (111110)
+-10 + 9 = -1 (111111)
+-10 + 10 = 0 (000000)
+-10 + 11 = 1 (000001)
+-10 + 12 = 2 (000010)
+-10 + 13 = 3 (000011)
+-10 + 14 = 4 (000100)
+-10 + 15 = 5 (000101)
+-10 + 16 = 6 (000110)
+-10 + 17 = 7 (000111)
+-10 + 18 = 8 (001000)
+-10 + 19 = 9 (001001)
+-10 + 20 = 10 (001010)
+-10 + 21 = 11 (001011)
+-10 + 22 = 12 (001100)
+-10 + 23 = 13 (001101)
+-10 + 24 = 14 (001110)
+-10 + 25 = 15 (001111)
+-10 + 26 = 16 (010000)
+-10 + 27 = 17 (010001)
+-10 + 28 = 18 (010010)
+-10 + 29 = 19 (010011)
+-10 + 30 = 20 (010100)
+-10 + 31 = 21 (010101)
+-10 + -32 = 22 (010110)
+-10 + -31 = 23 (010111)
+-10 + -30 = 24 (011000)
+-10 + -29 = 25 (011001)
+-10 + -28 = 26 (011010)
+-10 + -27 = 27 (011011)
+-10 + -26 = 28 (011100)
+-10 + -25 = 29 (011101)
+-10 + -24 = 30 (011110)
+-10 + -23 = 31 (011111)
+-10 + -22 = -32 (100000)
+-10 + -21 = -31 (100001)
+-10 + -20 = -30 (100010)
+-10 + -19 = -29 (100011)
+-10 + -18 = -28 (100100)
+-10 + -17 = -27 (100101)
+-10 + -16 = -26 (100110)
+-10 + -15 = -25 (100111)
+-10 + -14 = -24 (101000)
+-10 + -13 = -23 (101001)
+-10 + -12 = -22 (101010)
+-10 + -11 = -21 (101011)
+-10 + -10 = -20 (101100)
+-10 + -9 = -19 (101101)
+-10 + -8 = -18 (101110)
+-10 + -7 = -17 (101111)
+-10 + -6 = -16 (110000)
+-10 + -5 = -15 (110001)
+-10 + -4 = -14 (110010)
+-10 + -3 = -13 (110011)
+-10 + -2 = -12 (110100)
+-10 + -1 = -11 (110101)
+-9 + 0 = -9 (110111)
+-9 + 1 = -8 (111000)
+-9 + 2 = -7 (111001)
+-9 + 3 = -6 (111010)
+-9 + 4 = -5 (111011)
+-9 + 5 = -4 (111100)
+-9 + 6 = -3 (111101)
+-9 + 7 = -2 (111110)
+-9 + 8 = -1 (111111)
+-9 + 9 = 0 (000000)
+-9 + 10 = 1 (000001)
+-9 + 11 = 2 (000010)
+-9 + 12 = 3 (000011)
+-9 + 13 = 4 (000100)
+-9 + 14 = 5 (000101)
+-9 + 15 = 6 (000110)
+-9 + 16 = 7 (000111)
+-9 + 17 = 8 (001000)
+-9 + 18 = 9 (001001)
+-9 + 19 = 10 (001010)
+-9 + 20 = 11 (001011)
+-9 + 21 = 12 (001100)
+-9 + 22 = 13 (001101)
+-9 + 23 = 14 (001110)
+-9 + 24 = 15 (001111)
+-9 + 25 = 16 (010000)
+-9 + 26 = 17 (010001)
+-9 + 27 = 18 (010010)
+-9 + 28 = 19 (010011)
+-9 + 29 = 20 (010100)
+-9 + 30 = 21 (010101)
+-9 + 31 = 22 (010110)
+-9 + -32 = 23 (010111)
+-9 + -31 = 24 (011000)
+-9 + -30 = 25 (011001)
+-9 + -29 = 26 (011010)
+-9 + -28 = 27 (011011)
+-9 + -27 = 28 (011100)
+-9 + -26 = 29 (011101)
+-9 + -25 = 30 (011110)
+-9 + -24 = 31 (011111)
+-9 + -23 = -32 (100000)
+-9 + -22 = -31 (100001)
+-9 + -21 = -30 (100010)
+-9 + -20 = -29 (100011)
+-9 + -19 = -28 (100100)
+-9 + -18 = -27 (100101)
+-9 + -17 = -26 (100110)
+-9 + -16 = -25 (100111)
+-9 + -15 = -24 (101000)
+-9 + -14 = -23 (101001)
+-9 + -13 = -22 (101010)
+-9 + -12 = -21 (101011)
+-9 + -11 = -20 (101100)
+-9 + -10 = -19 (101101)
+-9 + -9 = -18 (101110)
+-9 + -8 = -17 (101111)
+-9 + -7 = -16 (110000)
+-9 + -6 = -15 (110001)
+-9 + -5 = -14 (110010)
+-9 + -4 = -13 (110011)
+-9 + -3 = -12 (110100)
+-9 + -2 = -11 (110101)
+-9 + -1 = -10 (110110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/lost_carry.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/lost_carry.f
new file mode 100644
index 000000000..e5ebe3a3b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/lost_carry.f
@@ -0,0 +1,3 @@
+lost_carry/datawidth.cpp
+lost_carry/stimgen.cpp
+lost_carry/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/main.cpp
new file mode 100644
index 000000000..3191d0641
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 6-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 6;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector in1 ("in1");
+ signal_bool_vector in2 ("in2");
+ signal_bool_vector result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/stimgen.h
new file mode 100644
index 000000000..0a0e9900d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/lost_carry/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector& result;
+ // Outputs
+ signal_bool_vector& in1;
+ signal_bool_vector& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector& RESULT,
+ signal_bool_vector& IN1,
+ signal_bool_vector& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/common.h
new file mode 100644
index 000000000..55e8fa28e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/common.h
@@ -0,0 +1,51 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<7> bool_vector7;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+typedef sc_signal<bool_vector7> signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/datawidth.cpp
new file mode 100644
index 000000000..541d86238
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector4 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector7 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_int() + tmp_b.to_int();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/datawidth.h
new file mode 100644
index 000000000..618250503
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector7& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector7& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/golden/promote.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/golden/promote.log
new file mode 100644
index 000000000..293408127
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/golden/promote.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/main.cpp
new file mode 100644
index 000000000..4d28d0a65
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 7-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 7;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/promote.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/promote.f
new file mode 100644
index 000000000..4f270dbe0
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/promote.f
@@ -0,0 +1,3 @@
+promote/datawidth.cpp
+promote/stimgen.cpp
+promote/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/stimgen.h
new file mode 100644
index 000000000..723f5103f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector7& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector7& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/common.h
new file mode 100644
index 000000000..f5bf2658c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/common.h
@@ -0,0 +1,51 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<9> bool_vector9;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+typedef sc_signal<bool_vector9> signal_bool_vector9;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/datawidth.cpp
new file mode 100644
index 000000000..c3c12c90a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector4 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector9 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_int() + tmp_b.to_int();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/datawidth.h
new file mode 100644
index 000000000..284757aeb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector9& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector9& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/golden/promote_extension.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/golden/promote_extension.log
new file mode 100644
index 000000000..3290f802a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/golden/promote_extension.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/main.cpp
new file mode 100644
index 000000000..dda8095a1
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 9-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 9;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector9 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/promote_extension.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/promote_extension.f
new file mode 100644
index 000000000..3c46f3738
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/promote_extension.f
@@ -0,0 +1,3 @@
+promote_extension/datawidth.cpp
+promote_extension/stimgen.cpp
+promote_extension/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/stimgen.h
new file mode 100644
index 000000000..1c35e4175
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_extension/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector9& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector9& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/common.h
new file mode 100644
index 000000000..d7f26e029
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/datawidth.cpp
new file mode 100644
index 000000000..b954dfe88
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector4 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector6 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_int() + tmp_b.to_int();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/datawidth.h
new file mode 100644
index 000000000..6adbfd87b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector6& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector6& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/golden/promote_lost_carry.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/golden/promote_lost_carry.log
new file mode 100644
index 000000000..833493d33
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/golden/promote_lost_carry.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/main.cpp
new file mode 100644
index 000000000..5990e96a7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 6-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 6;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector6 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/promote_lost_carry.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/promote_lost_carry.f
new file mode 100644
index 000000000..052991cee
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/promote_lost_carry.f
@@ -0,0 +1,3 @@
+promote_lost_carry/datawidth.cpp
+promote_lost_carry/stimgen.cpp
+promote_lost_carry/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/stimgen.h
new file mode 100644
index 000000000..e2675e0b4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_lost_carry/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/common.h
new file mode 100644
index 000000000..d7f26e029
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/datawidth.cpp
new file mode 100644
index 000000000..cb847948e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector4 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector4 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_int() + tmp_b.to_int();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/datawidth.h
new file mode 100644
index 000000000..12f04c9be
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector4& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector4& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/golden/promote_truncation.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/golden/promote_truncation.log
new file mode 100644
index 000000000..081cff3dd
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/golden/promote_truncation.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/main.cpp
new file mode 100644
index 000000000..657543508
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 4-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 4;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector4 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/promote_truncation.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/promote_truncation.f
new file mode 100644
index 000000000..90b689aca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/promote_truncation.f
@@ -0,0 +1,3 @@
+promote_truncation/datawidth.cpp
+promote_truncation/stimgen.cpp
+promote_truncation/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/stimgen.h
new file mode 100644
index 000000000..959122edf
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/promote_truncation/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/common.h
new file mode 100644
index 000000000..d7f26e029
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/datawidth.cpp
new file mode 100644
index 000000000..6daffa7b6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector6 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector4 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_int() + tmp_b.to_int();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/datawidth.h
new file mode 100644
index 000000000..98681b45a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector4& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector4& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/golden/truncation.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/golden/truncation.log
new file mode 100644
index 000000000..0787b97b7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/golden/truncation.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+8 + 0 = -8 (1000)
+8 + 1 = -7 (1001)
+8 + 2 = -6 (1010)
+8 + 3 = -5 (1011)
+8 + 4 = -4 (1100)
+8 + 5 = -3 (1101)
+8 + 6 = -2 (1110)
+8 + 7 = -1 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = -8 (1000)
+8 + 17 = -7 (1001)
+8 + 18 = -6 (1010)
+8 + 19 = -5 (1011)
+8 + 20 = -4 (1100)
+8 + 21 = -3 (1101)
+8 + 22 = -2 (1110)
+8 + 23 = -1 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + -32 = -8 (1000)
+8 + -31 = -7 (1001)
+8 + -30 = -6 (1010)
+8 + -29 = -5 (1011)
+8 + -28 = -4 (1100)
+8 + -27 = -3 (1101)
+8 + -26 = -2 (1110)
+8 + -25 = -1 (1111)
+8 + -24 = 0 (0000)
+8 + -23 = 1 (0001)
+8 + -22 = 2 (0010)
+8 + -21 = 3 (0011)
+8 + -20 = 4 (0100)
+8 + -19 = 5 (0101)
+8 + -18 = 6 (0110)
+8 + -17 = 7 (0111)
+8 + -16 = -8 (1000)
+8 + -15 = -7 (1001)
+8 + -14 = -6 (1010)
+8 + -13 = -5 (1011)
+8 + -12 = -4 (1100)
+8 + -11 = -3 (1101)
+8 + -10 = -2 (1110)
+8 + -9 = -1 (1111)
+8 + -8 = 0 (0000)
+8 + -7 = 1 (0001)
+8 + -6 = 2 (0010)
+8 + -5 = 3 (0011)
+8 + -4 = 4 (0100)
+8 + -3 = 5 (0101)
+8 + -2 = 6 (0110)
+8 + -1 = 7 (0111)
+9 + 0 = -7 (1001)
+9 + 1 = -6 (1010)
+9 + 2 = -5 (1011)
+9 + 3 = -4 (1100)
+9 + 4 = -3 (1101)
+9 + 5 = -2 (1110)
+9 + 6 = -1 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = -8 (1000)
+9 + 16 = -7 (1001)
+9 + 17 = -6 (1010)
+9 + 18 = -5 (1011)
+9 + 19 = -4 (1100)
+9 + 20 = -3 (1101)
+9 + 21 = -2 (1110)
+9 + 22 = -1 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = -8 (1000)
+9 + -32 = -7 (1001)
+9 + -31 = -6 (1010)
+9 + -30 = -5 (1011)
+9 + -29 = -4 (1100)
+9 + -28 = -3 (1101)
+9 + -27 = -2 (1110)
+9 + -26 = -1 (1111)
+9 + -25 = 0 (0000)
+9 + -24 = 1 (0001)
+9 + -23 = 2 (0010)
+9 + -22 = 3 (0011)
+9 + -21 = 4 (0100)
+9 + -20 = 5 (0101)
+9 + -19 = 6 (0110)
+9 + -18 = 7 (0111)
+9 + -17 = -8 (1000)
+9 + -16 = -7 (1001)
+9 + -15 = -6 (1010)
+9 + -14 = -5 (1011)
+9 + -13 = -4 (1100)
+9 + -12 = -3 (1101)
+9 + -11 = -2 (1110)
+9 + -10 = -1 (1111)
+9 + -9 = 0 (0000)
+9 + -8 = 1 (0001)
+9 + -7 = 2 (0010)
+9 + -6 = 3 (0011)
+9 + -5 = 4 (0100)
+9 + -4 = 5 (0101)
+9 + -3 = 6 (0110)
+9 + -2 = 7 (0111)
+9 + -1 = -8 (1000)
+10 + 0 = -6 (1010)
+10 + 1 = -5 (1011)
+10 + 2 = -4 (1100)
+10 + 3 = -3 (1101)
+10 + 4 = -2 (1110)
+10 + 5 = -1 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = -8 (1000)
+10 + 15 = -7 (1001)
+10 + 16 = -6 (1010)
+10 + 17 = -5 (1011)
+10 + 18 = -4 (1100)
+10 + 19 = -3 (1101)
+10 + 20 = -2 (1110)
+10 + 21 = -1 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = -8 (1000)
+10 + 31 = -7 (1001)
+10 + -32 = -6 (1010)
+10 + -31 = -5 (1011)
+10 + -30 = -4 (1100)
+10 + -29 = -3 (1101)
+10 + -28 = -2 (1110)
+10 + -27 = -1 (1111)
+10 + -26 = 0 (0000)
+10 + -25 = 1 (0001)
+10 + -24 = 2 (0010)
+10 + -23 = 3 (0011)
+10 + -22 = 4 (0100)
+10 + -21 = 5 (0101)
+10 + -20 = 6 (0110)
+10 + -19 = 7 (0111)
+10 + -18 = -8 (1000)
+10 + -17 = -7 (1001)
+10 + -16 = -6 (1010)
+10 + -15 = -5 (1011)
+10 + -14 = -4 (1100)
+10 + -13 = -3 (1101)
+10 + -12 = -2 (1110)
+10 + -11 = -1 (1111)
+10 + -10 = 0 (0000)
+10 + -9 = 1 (0001)
+10 + -8 = 2 (0010)
+10 + -7 = 3 (0011)
+10 + -6 = 4 (0100)
+10 + -5 = 5 (0101)
+10 + -4 = 6 (0110)
+10 + -3 = 7 (0111)
+10 + -2 = -8 (1000)
+10 + -1 = -7 (1001)
+11 + 0 = -5 (1011)
+11 + 1 = -4 (1100)
+11 + 2 = -3 (1101)
+11 + 3 = -2 (1110)
+11 + 4 = -1 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = -8 (1000)
+11 + 14 = -7 (1001)
+11 + 15 = -6 (1010)
+11 + 16 = -5 (1011)
+11 + 17 = -4 (1100)
+11 + 18 = -3 (1101)
+11 + 19 = -2 (1110)
+11 + 20 = -1 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = -8 (1000)
+11 + 30 = -7 (1001)
+11 + 31 = -6 (1010)
+11 + -32 = -5 (1011)
+11 + -31 = -4 (1100)
+11 + -30 = -3 (1101)
+11 + -29 = -2 (1110)
+11 + -28 = -1 (1111)
+11 + -27 = 0 (0000)
+11 + -26 = 1 (0001)
+11 + -25 = 2 (0010)
+11 + -24 = 3 (0011)
+11 + -23 = 4 (0100)
+11 + -22 = 5 (0101)
+11 + -21 = 6 (0110)
+11 + -20 = 7 (0111)
+11 + -19 = -8 (1000)
+11 + -18 = -7 (1001)
+11 + -17 = -6 (1010)
+11 + -16 = -5 (1011)
+11 + -15 = -4 (1100)
+11 + -14 = -3 (1101)
+11 + -13 = -2 (1110)
+11 + -12 = -1 (1111)
+11 + -11 = 0 (0000)
+11 + -10 = 1 (0001)
+11 + -9 = 2 (0010)
+11 + -8 = 3 (0011)
+11 + -7 = 4 (0100)
+11 + -6 = 5 (0101)
+11 + -5 = 6 (0110)
+11 + -4 = 7 (0111)
+11 + -3 = -8 (1000)
+11 + -2 = -7 (1001)
+11 + -1 = -6 (1010)
+12 + 0 = -4 (1100)
+12 + 1 = -3 (1101)
+12 + 2 = -2 (1110)
+12 + 3 = -1 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = -8 (1000)
+12 + 13 = -7 (1001)
+12 + 14 = -6 (1010)
+12 + 15 = -5 (1011)
+12 + 16 = -4 (1100)
+12 + 17 = -3 (1101)
+12 + 18 = -2 (1110)
+12 + 19 = -1 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = -8 (1000)
+12 + 29 = -7 (1001)
+12 + 30 = -6 (1010)
+12 + 31 = -5 (1011)
+12 + -32 = -4 (1100)
+12 + -31 = -3 (1101)
+12 + -30 = -2 (1110)
+12 + -29 = -1 (1111)
+12 + -28 = 0 (0000)
+12 + -27 = 1 (0001)
+12 + -26 = 2 (0010)
+12 + -25 = 3 (0011)
+12 + -24 = 4 (0100)
+12 + -23 = 5 (0101)
+12 + -22 = 6 (0110)
+12 + -21 = 7 (0111)
+12 + -20 = -8 (1000)
+12 + -19 = -7 (1001)
+12 + -18 = -6 (1010)
+12 + -17 = -5 (1011)
+12 + -16 = -4 (1100)
+12 + -15 = -3 (1101)
+12 + -14 = -2 (1110)
+12 + -13 = -1 (1111)
+12 + -12 = 0 (0000)
+12 + -11 = 1 (0001)
+12 + -10 = 2 (0010)
+12 + -9 = 3 (0011)
+12 + -8 = 4 (0100)
+12 + -7 = 5 (0101)
+12 + -6 = 6 (0110)
+12 + -5 = 7 (0111)
+12 + -4 = -8 (1000)
+12 + -3 = -7 (1001)
+12 + -2 = -6 (1010)
+12 + -1 = -5 (1011)
+13 + 0 = -3 (1101)
+13 + 1 = -2 (1110)
+13 + 2 = -1 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = -8 (1000)
+13 + 12 = -7 (1001)
+13 + 13 = -6 (1010)
+13 + 14 = -5 (1011)
+13 + 15 = -4 (1100)
+13 + 16 = -3 (1101)
+13 + 17 = -2 (1110)
+13 + 18 = -1 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = -8 (1000)
+13 + 28 = -7 (1001)
+13 + 29 = -6 (1010)
+13 + 30 = -5 (1011)
+13 + 31 = -4 (1100)
+13 + -32 = -3 (1101)
+13 + -31 = -2 (1110)
+13 + -30 = -1 (1111)
+13 + -29 = 0 (0000)
+13 + -28 = 1 (0001)
+13 + -27 = 2 (0010)
+13 + -26 = 3 (0011)
+13 + -25 = 4 (0100)
+13 + -24 = 5 (0101)
+13 + -23 = 6 (0110)
+13 + -22 = 7 (0111)
+13 + -21 = -8 (1000)
+13 + -20 = -7 (1001)
+13 + -19 = -6 (1010)
+13 + -18 = -5 (1011)
+13 + -17 = -4 (1100)
+13 + -16 = -3 (1101)
+13 + -15 = -2 (1110)
+13 + -14 = -1 (1111)
+13 + -13 = 0 (0000)
+13 + -12 = 1 (0001)
+13 + -11 = 2 (0010)
+13 + -10 = 3 (0011)
+13 + -9 = 4 (0100)
+13 + -8 = 5 (0101)
+13 + -7 = 6 (0110)
+13 + -6 = 7 (0111)
+13 + -5 = -8 (1000)
+13 + -4 = -7 (1001)
+13 + -3 = -6 (1010)
+13 + -2 = -5 (1011)
+13 + -1 = -4 (1100)
+14 + 0 = -2 (1110)
+14 + 1 = -1 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = -8 (1000)
+14 + 11 = -7 (1001)
+14 + 12 = -6 (1010)
+14 + 13 = -5 (1011)
+14 + 14 = -4 (1100)
+14 + 15 = -3 (1101)
+14 + 16 = -2 (1110)
+14 + 17 = -1 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = -8 (1000)
+14 + 27 = -7 (1001)
+14 + 28 = -6 (1010)
+14 + 29 = -5 (1011)
+14 + 30 = -4 (1100)
+14 + 31 = -3 (1101)
+14 + -32 = -2 (1110)
+14 + -31 = -1 (1111)
+14 + -30 = 0 (0000)
+14 + -29 = 1 (0001)
+14 + -28 = 2 (0010)
+14 + -27 = 3 (0011)
+14 + -26 = 4 (0100)
+14 + -25 = 5 (0101)
+14 + -24 = 6 (0110)
+14 + -23 = 7 (0111)
+14 + -22 = -8 (1000)
+14 + -21 = -7 (1001)
+14 + -20 = -6 (1010)
+14 + -19 = -5 (1011)
+14 + -18 = -4 (1100)
+14 + -17 = -3 (1101)
+14 + -16 = -2 (1110)
+14 + -15 = -1 (1111)
+14 + -14 = 0 (0000)
+14 + -13 = 1 (0001)
+14 + -12 = 2 (0010)
+14 + -11 = 3 (0011)
+14 + -10 = 4 (0100)
+14 + -9 = 5 (0101)
+14 + -8 = 6 (0110)
+14 + -7 = 7 (0111)
+14 + -6 = -8 (1000)
+14 + -5 = -7 (1001)
+14 + -4 = -6 (1010)
+14 + -3 = -5 (1011)
+14 + -2 = -4 (1100)
+14 + -1 = -3 (1101)
+15 + 0 = -1 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = -8 (1000)
+15 + 10 = -7 (1001)
+15 + 11 = -6 (1010)
+15 + 12 = -5 (1011)
+15 + 13 = -4 (1100)
+15 + 14 = -3 (1101)
+15 + 15 = -2 (1110)
+15 + 16 = -1 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = -8 (1000)
+15 + 26 = -7 (1001)
+15 + 27 = -6 (1010)
+15 + 28 = -5 (1011)
+15 + 29 = -4 (1100)
+15 + 30 = -3 (1101)
+15 + 31 = -2 (1110)
+15 + -32 = -1 (1111)
+15 + -31 = 0 (0000)
+15 + -30 = 1 (0001)
+15 + -29 = 2 (0010)
+15 + -28 = 3 (0011)
+15 + -27 = 4 (0100)
+15 + -26 = 5 (0101)
+15 + -25 = 6 (0110)
+15 + -24 = 7 (0111)
+15 + -23 = -8 (1000)
+15 + -22 = -7 (1001)
+15 + -21 = -6 (1010)
+15 + -20 = -5 (1011)
+15 + -19 = -4 (1100)
+15 + -18 = -3 (1101)
+15 + -17 = -2 (1110)
+15 + -16 = -1 (1111)
+15 + -15 = 0 (0000)
+15 + -14 = 1 (0001)
+15 + -13 = 2 (0010)
+15 + -12 = 3 (0011)
+15 + -11 = 4 (0100)
+15 + -10 = 5 (0101)
+15 + -9 = 6 (0110)
+15 + -8 = 7 (0111)
+15 + -7 = -8 (1000)
+15 + -6 = -7 (1001)
+15 + -5 = -6 (1010)
+15 + -4 = -5 (1011)
+15 + -3 = -4 (1100)
+15 + -2 = -3 (1101)
+15 + -1 = -2 (1110)
+16 + 0 = 0 (0000)
+16 + 1 = 1 (0001)
+16 + 2 = 2 (0010)
+16 + 3 = 3 (0011)
+16 + 4 = 4 (0100)
+16 + 5 = 5 (0101)
+16 + 6 = 6 (0110)
+16 + 7 = 7 (0111)
+16 + 8 = -8 (1000)
+16 + 9 = -7 (1001)
+16 + 10 = -6 (1010)
+16 + 11 = -5 (1011)
+16 + 12 = -4 (1100)
+16 + 13 = -3 (1101)
+16 + 14 = -2 (1110)
+16 + 15 = -1 (1111)
+16 + 16 = 0 (0000)
+16 + 17 = 1 (0001)
+16 + 18 = 2 (0010)
+16 + 19 = 3 (0011)
+16 + 20 = 4 (0100)
+16 + 21 = 5 (0101)
+16 + 22 = 6 (0110)
+16 + 23 = 7 (0111)
+16 + 24 = -8 (1000)
+16 + 25 = -7 (1001)
+16 + 26 = -6 (1010)
+16 + 27 = -5 (1011)
+16 + 28 = -4 (1100)
+16 + 29 = -3 (1101)
+16 + 30 = -2 (1110)
+16 + 31 = -1 (1111)
+16 + -32 = 0 (0000)
+16 + -31 = 1 (0001)
+16 + -30 = 2 (0010)
+16 + -29 = 3 (0011)
+16 + -28 = 4 (0100)
+16 + -27 = 5 (0101)
+16 + -26 = 6 (0110)
+16 + -25 = 7 (0111)
+16 + -24 = -8 (1000)
+16 + -23 = -7 (1001)
+16 + -22 = -6 (1010)
+16 + -21 = -5 (1011)
+16 + -20 = -4 (1100)
+16 + -19 = -3 (1101)
+16 + -18 = -2 (1110)
+16 + -17 = -1 (1111)
+16 + -16 = 0 (0000)
+16 + -15 = 1 (0001)
+16 + -14 = 2 (0010)
+16 + -13 = 3 (0011)
+16 + -12 = 4 (0100)
+16 + -11 = 5 (0101)
+16 + -10 = 6 (0110)
+16 + -9 = 7 (0111)
+16 + -8 = -8 (1000)
+16 + -7 = -7 (1001)
+16 + -6 = -6 (1010)
+16 + -5 = -5 (1011)
+16 + -4 = -4 (1100)
+16 + -3 = -3 (1101)
+16 + -2 = -2 (1110)
+16 + -1 = -1 (1111)
+17 + 0 = 1 (0001)
+17 + 1 = 2 (0010)
+17 + 2 = 3 (0011)
+17 + 3 = 4 (0100)
+17 + 4 = 5 (0101)
+17 + 5 = 6 (0110)
+17 + 6 = 7 (0111)
+17 + 7 = -8 (1000)
+17 + 8 = -7 (1001)
+17 + 9 = -6 (1010)
+17 + 10 = -5 (1011)
+17 + 11 = -4 (1100)
+17 + 12 = -3 (1101)
+17 + 13 = -2 (1110)
+17 + 14 = -1 (1111)
+17 + 15 = 0 (0000)
+17 + 16 = 1 (0001)
+17 + 17 = 2 (0010)
+17 + 18 = 3 (0011)
+17 + 19 = 4 (0100)
+17 + 20 = 5 (0101)
+17 + 21 = 6 (0110)
+17 + 22 = 7 (0111)
+17 + 23 = -8 (1000)
+17 + 24 = -7 (1001)
+17 + 25 = -6 (1010)
+17 + 26 = -5 (1011)
+17 + 27 = -4 (1100)
+17 + 28 = -3 (1101)
+17 + 29 = -2 (1110)
+17 + 30 = -1 (1111)
+17 + 31 = 0 (0000)
+17 + -32 = 1 (0001)
+17 + -31 = 2 (0010)
+17 + -30 = 3 (0011)
+17 + -29 = 4 (0100)
+17 + -28 = 5 (0101)
+17 + -27 = 6 (0110)
+17 + -26 = 7 (0111)
+17 + -25 = -8 (1000)
+17 + -24 = -7 (1001)
+17 + -23 = -6 (1010)
+17 + -22 = -5 (1011)
+17 + -21 = -4 (1100)
+17 + -20 = -3 (1101)
+17 + -19 = -2 (1110)
+17 + -18 = -1 (1111)
+17 + -17 = 0 (0000)
+17 + -16 = 1 (0001)
+17 + -15 = 2 (0010)
+17 + -14 = 3 (0011)
+17 + -13 = 4 (0100)
+17 + -12 = 5 (0101)
+17 + -11 = 6 (0110)
+17 + -10 = 7 (0111)
+17 + -9 = -8 (1000)
+17 + -8 = -7 (1001)
+17 + -7 = -6 (1010)
+17 + -6 = -5 (1011)
+17 + -5 = -4 (1100)
+17 + -4 = -3 (1101)
+17 + -3 = -2 (1110)
+17 + -2 = -1 (1111)
+17 + -1 = 0 (0000)
+18 + 0 = 2 (0010)
+18 + 1 = 3 (0011)
+18 + 2 = 4 (0100)
+18 + 3 = 5 (0101)
+18 + 4 = 6 (0110)
+18 + 5 = 7 (0111)
+18 + 6 = -8 (1000)
+18 + 7 = -7 (1001)
+18 + 8 = -6 (1010)
+18 + 9 = -5 (1011)
+18 + 10 = -4 (1100)
+18 + 11 = -3 (1101)
+18 + 12 = -2 (1110)
+18 + 13 = -1 (1111)
+18 + 14 = 0 (0000)
+18 + 15 = 1 (0001)
+18 + 16 = 2 (0010)
+18 + 17 = 3 (0011)
+18 + 18 = 4 (0100)
+18 + 19 = 5 (0101)
+18 + 20 = 6 (0110)
+18 + 21 = 7 (0111)
+18 + 22 = -8 (1000)
+18 + 23 = -7 (1001)
+18 + 24 = -6 (1010)
+18 + 25 = -5 (1011)
+18 + 26 = -4 (1100)
+18 + 27 = -3 (1101)
+18 + 28 = -2 (1110)
+18 + 29 = -1 (1111)
+18 + 30 = 0 (0000)
+18 + 31 = 1 (0001)
+18 + -32 = 2 (0010)
+18 + -31 = 3 (0011)
+18 + -30 = 4 (0100)
+18 + -29 = 5 (0101)
+18 + -28 = 6 (0110)
+18 + -27 = 7 (0111)
+18 + -26 = -8 (1000)
+18 + -25 = -7 (1001)
+18 + -24 = -6 (1010)
+18 + -23 = -5 (1011)
+18 + -22 = -4 (1100)
+18 + -21 = -3 (1101)
+18 + -20 = -2 (1110)
+18 + -19 = -1 (1111)
+18 + -18 = 0 (0000)
+18 + -17 = 1 (0001)
+18 + -16 = 2 (0010)
+18 + -15 = 3 (0011)
+18 + -14 = 4 (0100)
+18 + -13 = 5 (0101)
+18 + -12 = 6 (0110)
+18 + -11 = 7 (0111)
+18 + -10 = -8 (1000)
+18 + -9 = -7 (1001)
+18 + -8 = -6 (1010)
+18 + -7 = -5 (1011)
+18 + -6 = -4 (1100)
+18 + -5 = -3 (1101)
+18 + -4 = -2 (1110)
+18 + -3 = -1 (1111)
+18 + -2 = 0 (0000)
+18 + -1 = 1 (0001)
+19 + 0 = 3 (0011)
+19 + 1 = 4 (0100)
+19 + 2 = 5 (0101)
+19 + 3 = 6 (0110)
+19 + 4 = 7 (0111)
+19 + 5 = -8 (1000)
+19 + 6 = -7 (1001)
+19 + 7 = -6 (1010)
+19 + 8 = -5 (1011)
+19 + 9 = -4 (1100)
+19 + 10 = -3 (1101)
+19 + 11 = -2 (1110)
+19 + 12 = -1 (1111)
+19 + 13 = 0 (0000)
+19 + 14 = 1 (0001)
+19 + 15 = 2 (0010)
+19 + 16 = 3 (0011)
+19 + 17 = 4 (0100)
+19 + 18 = 5 (0101)
+19 + 19 = 6 (0110)
+19 + 20 = 7 (0111)
+19 + 21 = -8 (1000)
+19 + 22 = -7 (1001)
+19 + 23 = -6 (1010)
+19 + 24 = -5 (1011)
+19 + 25 = -4 (1100)
+19 + 26 = -3 (1101)
+19 + 27 = -2 (1110)
+19 + 28 = -1 (1111)
+19 + 29 = 0 (0000)
+19 + 30 = 1 (0001)
+19 + 31 = 2 (0010)
+19 + -32 = 3 (0011)
+19 + -31 = 4 (0100)
+19 + -30 = 5 (0101)
+19 + -29 = 6 (0110)
+19 + -28 = 7 (0111)
+19 + -27 = -8 (1000)
+19 + -26 = -7 (1001)
+19 + -25 = -6 (1010)
+19 + -24 = -5 (1011)
+19 + -23 = -4 (1100)
+19 + -22 = -3 (1101)
+19 + -21 = -2 (1110)
+19 + -20 = -1 (1111)
+19 + -19 = 0 (0000)
+19 + -18 = 1 (0001)
+19 + -17 = 2 (0010)
+19 + -16 = 3 (0011)
+19 + -15 = 4 (0100)
+19 + -14 = 5 (0101)
+19 + -13 = 6 (0110)
+19 + -12 = 7 (0111)
+19 + -11 = -8 (1000)
+19 + -10 = -7 (1001)
+19 + -9 = -6 (1010)
+19 + -8 = -5 (1011)
+19 + -7 = -4 (1100)
+19 + -6 = -3 (1101)
+19 + -5 = -2 (1110)
+19 + -4 = -1 (1111)
+19 + -3 = 0 (0000)
+19 + -2 = 1 (0001)
+19 + -1 = 2 (0010)
+20 + 0 = 4 (0100)
+20 + 1 = 5 (0101)
+20 + 2 = 6 (0110)
+20 + 3 = 7 (0111)
+20 + 4 = -8 (1000)
+20 + 5 = -7 (1001)
+20 + 6 = -6 (1010)
+20 + 7 = -5 (1011)
+20 + 8 = -4 (1100)
+20 + 9 = -3 (1101)
+20 + 10 = -2 (1110)
+20 + 11 = -1 (1111)
+20 + 12 = 0 (0000)
+20 + 13 = 1 (0001)
+20 + 14 = 2 (0010)
+20 + 15 = 3 (0011)
+20 + 16 = 4 (0100)
+20 + 17 = 5 (0101)
+20 + 18 = 6 (0110)
+20 + 19 = 7 (0111)
+20 + 20 = -8 (1000)
+20 + 21 = -7 (1001)
+20 + 22 = -6 (1010)
+20 + 23 = -5 (1011)
+20 + 24 = -4 (1100)
+20 + 25 = -3 (1101)
+20 + 26 = -2 (1110)
+20 + 27 = -1 (1111)
+20 + 28 = 0 (0000)
+20 + 29 = 1 (0001)
+20 + 30 = 2 (0010)
+20 + 31 = 3 (0011)
+20 + -32 = 4 (0100)
+20 + -31 = 5 (0101)
+20 + -30 = 6 (0110)
+20 + -29 = 7 (0111)
+20 + -28 = -8 (1000)
+20 + -27 = -7 (1001)
+20 + -26 = -6 (1010)
+20 + -25 = -5 (1011)
+20 + -24 = -4 (1100)
+20 + -23 = -3 (1101)
+20 + -22 = -2 (1110)
+20 + -21 = -1 (1111)
+20 + -20 = 0 (0000)
+20 + -19 = 1 (0001)
+20 + -18 = 2 (0010)
+20 + -17 = 3 (0011)
+20 + -16 = 4 (0100)
+20 + -15 = 5 (0101)
+20 + -14 = 6 (0110)
+20 + -13 = 7 (0111)
+20 + -12 = -8 (1000)
+20 + -11 = -7 (1001)
+20 + -10 = -6 (1010)
+20 + -9 = -5 (1011)
+20 + -8 = -4 (1100)
+20 + -7 = -3 (1101)
+20 + -6 = -2 (1110)
+20 + -5 = -1 (1111)
+20 + -4 = 0 (0000)
+20 + -3 = 1 (0001)
+20 + -2 = 2 (0010)
+20 + -1 = 3 (0011)
+21 + 0 = 5 (0101)
+21 + 1 = 6 (0110)
+21 + 2 = 7 (0111)
+21 + 3 = -8 (1000)
+21 + 4 = -7 (1001)
+21 + 5 = -6 (1010)
+21 + 6 = -5 (1011)
+21 + 7 = -4 (1100)
+21 + 8 = -3 (1101)
+21 + 9 = -2 (1110)
+21 + 10 = -1 (1111)
+21 + 11 = 0 (0000)
+21 + 12 = 1 (0001)
+21 + 13 = 2 (0010)
+21 + 14 = 3 (0011)
+21 + 15 = 4 (0100)
+21 + 16 = 5 (0101)
+21 + 17 = 6 (0110)
+21 + 18 = 7 (0111)
+21 + 19 = -8 (1000)
+21 + 20 = -7 (1001)
+21 + 21 = -6 (1010)
+21 + 22 = -5 (1011)
+21 + 23 = -4 (1100)
+21 + 24 = -3 (1101)
+21 + 25 = -2 (1110)
+21 + 26 = -1 (1111)
+21 + 27 = 0 (0000)
+21 + 28 = 1 (0001)
+21 + 29 = 2 (0010)
+21 + 30 = 3 (0011)
+21 + 31 = 4 (0100)
+21 + -32 = 5 (0101)
+21 + -31 = 6 (0110)
+21 + -30 = 7 (0111)
+21 + -29 = -8 (1000)
+21 + -28 = -7 (1001)
+21 + -27 = -6 (1010)
+21 + -26 = -5 (1011)
+21 + -25 = -4 (1100)
+21 + -24 = -3 (1101)
+21 + -23 = -2 (1110)
+21 + -22 = -1 (1111)
+21 + -21 = 0 (0000)
+21 + -20 = 1 (0001)
+21 + -19 = 2 (0010)
+21 + -18 = 3 (0011)
+21 + -17 = 4 (0100)
+21 + -16 = 5 (0101)
+21 + -15 = 6 (0110)
+21 + -14 = 7 (0111)
+21 + -13 = -8 (1000)
+21 + -12 = -7 (1001)
+21 + -11 = -6 (1010)
+21 + -10 = -5 (1011)
+21 + -9 = -4 (1100)
+21 + -8 = -3 (1101)
+21 + -7 = -2 (1110)
+21 + -6 = -1 (1111)
+21 + -5 = 0 (0000)
+21 + -4 = 1 (0001)
+21 + -3 = 2 (0010)
+21 + -2 = 3 (0011)
+21 + -1 = 4 (0100)
+22 + 0 = 6 (0110)
+22 + 1 = 7 (0111)
+22 + 2 = -8 (1000)
+22 + 3 = -7 (1001)
+22 + 4 = -6 (1010)
+22 + 5 = -5 (1011)
+22 + 6 = -4 (1100)
+22 + 7 = -3 (1101)
+22 + 8 = -2 (1110)
+22 + 9 = -1 (1111)
+22 + 10 = 0 (0000)
+22 + 11 = 1 (0001)
+22 + 12 = 2 (0010)
+22 + 13 = 3 (0011)
+22 + 14 = 4 (0100)
+22 + 15 = 5 (0101)
+22 + 16 = 6 (0110)
+22 + 17 = 7 (0111)
+22 + 18 = -8 (1000)
+22 + 19 = -7 (1001)
+22 + 20 = -6 (1010)
+22 + 21 = -5 (1011)
+22 + 22 = -4 (1100)
+22 + 23 = -3 (1101)
+22 + 24 = -2 (1110)
+22 + 25 = -1 (1111)
+22 + 26 = 0 (0000)
+22 + 27 = 1 (0001)
+22 + 28 = 2 (0010)
+22 + 29 = 3 (0011)
+22 + 30 = 4 (0100)
+22 + 31 = 5 (0101)
+22 + -32 = 6 (0110)
+22 + -31 = 7 (0111)
+22 + -30 = -8 (1000)
+22 + -29 = -7 (1001)
+22 + -28 = -6 (1010)
+22 + -27 = -5 (1011)
+22 + -26 = -4 (1100)
+22 + -25 = -3 (1101)
+22 + -24 = -2 (1110)
+22 + -23 = -1 (1111)
+22 + -22 = 0 (0000)
+22 + -21 = 1 (0001)
+22 + -20 = 2 (0010)
+22 + -19 = 3 (0011)
+22 + -18 = 4 (0100)
+22 + -17 = 5 (0101)
+22 + -16 = 6 (0110)
+22 + -15 = 7 (0111)
+22 + -14 = -8 (1000)
+22 + -13 = -7 (1001)
+22 + -12 = -6 (1010)
+22 + -11 = -5 (1011)
+22 + -10 = -4 (1100)
+22 + -9 = -3 (1101)
+22 + -8 = -2 (1110)
+22 + -7 = -1 (1111)
+22 + -6 = 0 (0000)
+22 + -5 = 1 (0001)
+22 + -4 = 2 (0010)
+22 + -3 = 3 (0011)
+22 + -2 = 4 (0100)
+22 + -1 = 5 (0101)
+23 + 0 = 7 (0111)
+23 + 1 = -8 (1000)
+23 + 2 = -7 (1001)
+23 + 3 = -6 (1010)
+23 + 4 = -5 (1011)
+23 + 5 = -4 (1100)
+23 + 6 = -3 (1101)
+23 + 7 = -2 (1110)
+23 + 8 = -1 (1111)
+23 + 9 = 0 (0000)
+23 + 10 = 1 (0001)
+23 + 11 = 2 (0010)
+23 + 12 = 3 (0011)
+23 + 13 = 4 (0100)
+23 + 14 = 5 (0101)
+23 + 15 = 6 (0110)
+23 + 16 = 7 (0111)
+23 + 17 = -8 (1000)
+23 + 18 = -7 (1001)
+23 + 19 = -6 (1010)
+23 + 20 = -5 (1011)
+23 + 21 = -4 (1100)
+23 + 22 = -3 (1101)
+23 + 23 = -2 (1110)
+23 + 24 = -1 (1111)
+23 + 25 = 0 (0000)
+23 + 26 = 1 (0001)
+23 + 27 = 2 (0010)
+23 + 28 = 3 (0011)
+23 + 29 = 4 (0100)
+23 + 30 = 5 (0101)
+23 + 31 = 6 (0110)
+23 + -32 = 7 (0111)
+23 + -31 = -8 (1000)
+23 + -30 = -7 (1001)
+23 + -29 = -6 (1010)
+23 + -28 = -5 (1011)
+23 + -27 = -4 (1100)
+23 + -26 = -3 (1101)
+23 + -25 = -2 (1110)
+23 + -24 = -1 (1111)
+23 + -23 = 0 (0000)
+23 + -22 = 1 (0001)
+23 + -21 = 2 (0010)
+23 + -20 = 3 (0011)
+23 + -19 = 4 (0100)
+23 + -18 = 5 (0101)
+23 + -17 = 6 (0110)
+23 + -16 = 7 (0111)
+23 + -15 = -8 (1000)
+23 + -14 = -7 (1001)
+23 + -13 = -6 (1010)
+23 + -12 = -5 (1011)
+23 + -11 = -4 (1100)
+23 + -10 = -3 (1101)
+23 + -9 = -2 (1110)
+23 + -8 = -1 (1111)
+23 + -7 = 0 (0000)
+23 + -6 = 1 (0001)
+23 + -5 = 2 (0010)
+23 + -4 = 3 (0011)
+23 + -3 = 4 (0100)
+23 + -2 = 5 (0101)
+23 + -1 = 6 (0110)
+24 + 0 = -8 (1000)
+24 + 1 = -7 (1001)
+24 + 2 = -6 (1010)
+24 + 3 = -5 (1011)
+24 + 4 = -4 (1100)
+24 + 5 = -3 (1101)
+24 + 6 = -2 (1110)
+24 + 7 = -1 (1111)
+24 + 8 = 0 (0000)
+24 + 9 = 1 (0001)
+24 + 10 = 2 (0010)
+24 + 11 = 3 (0011)
+24 + 12 = 4 (0100)
+24 + 13 = 5 (0101)
+24 + 14 = 6 (0110)
+24 + 15 = 7 (0111)
+24 + 16 = -8 (1000)
+24 + 17 = -7 (1001)
+24 + 18 = -6 (1010)
+24 + 19 = -5 (1011)
+24 + 20 = -4 (1100)
+24 + 21 = -3 (1101)
+24 + 22 = -2 (1110)
+24 + 23 = -1 (1111)
+24 + 24 = 0 (0000)
+24 + 25 = 1 (0001)
+24 + 26 = 2 (0010)
+24 + 27 = 3 (0011)
+24 + 28 = 4 (0100)
+24 + 29 = 5 (0101)
+24 + 30 = 6 (0110)
+24 + 31 = 7 (0111)
+24 + -32 = -8 (1000)
+24 + -31 = -7 (1001)
+24 + -30 = -6 (1010)
+24 + -29 = -5 (1011)
+24 + -28 = -4 (1100)
+24 + -27 = -3 (1101)
+24 + -26 = -2 (1110)
+24 + -25 = -1 (1111)
+24 + -24 = 0 (0000)
+24 + -23 = 1 (0001)
+24 + -22 = 2 (0010)
+24 + -21 = 3 (0011)
+24 + -20 = 4 (0100)
+24 + -19 = 5 (0101)
+24 + -18 = 6 (0110)
+24 + -17 = 7 (0111)
+24 + -16 = -8 (1000)
+24 + -15 = -7 (1001)
+24 + -14 = -6 (1010)
+24 + -13 = -5 (1011)
+24 + -12 = -4 (1100)
+24 + -11 = -3 (1101)
+24 + -10 = -2 (1110)
+24 + -9 = -1 (1111)
+24 + -8 = 0 (0000)
+24 + -7 = 1 (0001)
+24 + -6 = 2 (0010)
+24 + -5 = 3 (0011)
+24 + -4 = 4 (0100)
+24 + -3 = 5 (0101)
+24 + -2 = 6 (0110)
+24 + -1 = 7 (0111)
+25 + 0 = -7 (1001)
+25 + 1 = -6 (1010)
+25 + 2 = -5 (1011)
+25 + 3 = -4 (1100)
+25 + 4 = -3 (1101)
+25 + 5 = -2 (1110)
+25 + 6 = -1 (1111)
+25 + 7 = 0 (0000)
+25 + 8 = 1 (0001)
+25 + 9 = 2 (0010)
+25 + 10 = 3 (0011)
+25 + 11 = 4 (0100)
+25 + 12 = 5 (0101)
+25 + 13 = 6 (0110)
+25 + 14 = 7 (0111)
+25 + 15 = -8 (1000)
+25 + 16 = -7 (1001)
+25 + 17 = -6 (1010)
+25 + 18 = -5 (1011)
+25 + 19 = -4 (1100)
+25 + 20 = -3 (1101)
+25 + 21 = -2 (1110)
+25 + 22 = -1 (1111)
+25 + 23 = 0 (0000)
+25 + 24 = 1 (0001)
+25 + 25 = 2 (0010)
+25 + 26 = 3 (0011)
+25 + 27 = 4 (0100)
+25 + 28 = 5 (0101)
+25 + 29 = 6 (0110)
+25 + 30 = 7 (0111)
+25 + 31 = -8 (1000)
+25 + -32 = -7 (1001)
+25 + -31 = -6 (1010)
+25 + -30 = -5 (1011)
+25 + -29 = -4 (1100)
+25 + -28 = -3 (1101)
+25 + -27 = -2 (1110)
+25 + -26 = -1 (1111)
+25 + -25 = 0 (0000)
+25 + -24 = 1 (0001)
+25 + -23 = 2 (0010)
+25 + -22 = 3 (0011)
+25 + -21 = 4 (0100)
+25 + -20 = 5 (0101)
+25 + -19 = 6 (0110)
+25 + -18 = 7 (0111)
+25 + -17 = -8 (1000)
+25 + -16 = -7 (1001)
+25 + -15 = -6 (1010)
+25 + -14 = -5 (1011)
+25 + -13 = -4 (1100)
+25 + -12 = -3 (1101)
+25 + -11 = -2 (1110)
+25 + -10 = -1 (1111)
+25 + -9 = 0 (0000)
+25 + -8 = 1 (0001)
+25 + -7 = 2 (0010)
+25 + -6 = 3 (0011)
+25 + -5 = 4 (0100)
+25 + -4 = 5 (0101)
+25 + -3 = 6 (0110)
+25 + -2 = 7 (0111)
+25 + -1 = -8 (1000)
+26 + 0 = -6 (1010)
+26 + 1 = -5 (1011)
+26 + 2 = -4 (1100)
+26 + 3 = -3 (1101)
+26 + 4 = -2 (1110)
+26 + 5 = -1 (1111)
+26 + 6 = 0 (0000)
+26 + 7 = 1 (0001)
+26 + 8 = 2 (0010)
+26 + 9 = 3 (0011)
+26 + 10 = 4 (0100)
+26 + 11 = 5 (0101)
+26 + 12 = 6 (0110)
+26 + 13 = 7 (0111)
+26 + 14 = -8 (1000)
+26 + 15 = -7 (1001)
+26 + 16 = -6 (1010)
+26 + 17 = -5 (1011)
+26 + 18 = -4 (1100)
+26 + 19 = -3 (1101)
+26 + 20 = -2 (1110)
+26 + 21 = -1 (1111)
+26 + 22 = 0 (0000)
+26 + 23 = 1 (0001)
+26 + 24 = 2 (0010)
+26 + 25 = 3 (0011)
+26 + 26 = 4 (0100)
+26 + 27 = 5 (0101)
+26 + 28 = 6 (0110)
+26 + 29 = 7 (0111)
+26 + 30 = -8 (1000)
+26 + 31 = -7 (1001)
+26 + -32 = -6 (1010)
+26 + -31 = -5 (1011)
+26 + -30 = -4 (1100)
+26 + -29 = -3 (1101)
+26 + -28 = -2 (1110)
+26 + -27 = -1 (1111)
+26 + -26 = 0 (0000)
+26 + -25 = 1 (0001)
+26 + -24 = 2 (0010)
+26 + -23 = 3 (0011)
+26 + -22 = 4 (0100)
+26 + -21 = 5 (0101)
+26 + -20 = 6 (0110)
+26 + -19 = 7 (0111)
+26 + -18 = -8 (1000)
+26 + -17 = -7 (1001)
+26 + -16 = -6 (1010)
+26 + -15 = -5 (1011)
+26 + -14 = -4 (1100)
+26 + -13 = -3 (1101)
+26 + -12 = -2 (1110)
+26 + -11 = -1 (1111)
+26 + -10 = 0 (0000)
+26 + -9 = 1 (0001)
+26 + -8 = 2 (0010)
+26 + -7 = 3 (0011)
+26 + -6 = 4 (0100)
+26 + -5 = 5 (0101)
+26 + -4 = 6 (0110)
+26 + -3 = 7 (0111)
+26 + -2 = -8 (1000)
+26 + -1 = -7 (1001)
+27 + 0 = -5 (1011)
+27 + 1 = -4 (1100)
+27 + 2 = -3 (1101)
+27 + 3 = -2 (1110)
+27 + 4 = -1 (1111)
+27 + 5 = 0 (0000)
+27 + 6 = 1 (0001)
+27 + 7 = 2 (0010)
+27 + 8 = 3 (0011)
+27 + 9 = 4 (0100)
+27 + 10 = 5 (0101)
+27 + 11 = 6 (0110)
+27 + 12 = 7 (0111)
+27 + 13 = -8 (1000)
+27 + 14 = -7 (1001)
+27 + 15 = -6 (1010)
+27 + 16 = -5 (1011)
+27 + 17 = -4 (1100)
+27 + 18 = -3 (1101)
+27 + 19 = -2 (1110)
+27 + 20 = -1 (1111)
+27 + 21 = 0 (0000)
+27 + 22 = 1 (0001)
+27 + 23 = 2 (0010)
+27 + 24 = 3 (0011)
+27 + 25 = 4 (0100)
+27 + 26 = 5 (0101)
+27 + 27 = 6 (0110)
+27 + 28 = 7 (0111)
+27 + 29 = -8 (1000)
+27 + 30 = -7 (1001)
+27 + 31 = -6 (1010)
+27 + -32 = -5 (1011)
+27 + -31 = -4 (1100)
+27 + -30 = -3 (1101)
+27 + -29 = -2 (1110)
+27 + -28 = -1 (1111)
+27 + -27 = 0 (0000)
+27 + -26 = 1 (0001)
+27 + -25 = 2 (0010)
+27 + -24 = 3 (0011)
+27 + -23 = 4 (0100)
+27 + -22 = 5 (0101)
+27 + -21 = 6 (0110)
+27 + -20 = 7 (0111)
+27 + -19 = -8 (1000)
+27 + -18 = -7 (1001)
+27 + -17 = -6 (1010)
+27 + -16 = -5 (1011)
+27 + -15 = -4 (1100)
+27 + -14 = -3 (1101)
+27 + -13 = -2 (1110)
+27 + -12 = -1 (1111)
+27 + -11 = 0 (0000)
+27 + -10 = 1 (0001)
+27 + -9 = 2 (0010)
+27 + -8 = 3 (0011)
+27 + -7 = 4 (0100)
+27 + -6 = 5 (0101)
+27 + -5 = 6 (0110)
+27 + -4 = 7 (0111)
+27 + -3 = -8 (1000)
+27 + -2 = -7 (1001)
+27 + -1 = -6 (1010)
+28 + 0 = -4 (1100)
+28 + 1 = -3 (1101)
+28 + 2 = -2 (1110)
+28 + 3 = -1 (1111)
+28 + 4 = 0 (0000)
+28 + 5 = 1 (0001)
+28 + 6 = 2 (0010)
+28 + 7 = 3 (0011)
+28 + 8 = 4 (0100)
+28 + 9 = 5 (0101)
+28 + 10 = 6 (0110)
+28 + 11 = 7 (0111)
+28 + 12 = -8 (1000)
+28 + 13 = -7 (1001)
+28 + 14 = -6 (1010)
+28 + 15 = -5 (1011)
+28 + 16 = -4 (1100)
+28 + 17 = -3 (1101)
+28 + 18 = -2 (1110)
+28 + 19 = -1 (1111)
+28 + 20 = 0 (0000)
+28 + 21 = 1 (0001)
+28 + 22 = 2 (0010)
+28 + 23 = 3 (0011)
+28 + 24 = 4 (0100)
+28 + 25 = 5 (0101)
+28 + 26 = 6 (0110)
+28 + 27 = 7 (0111)
+28 + 28 = -8 (1000)
+28 + 29 = -7 (1001)
+28 + 30 = -6 (1010)
+28 + 31 = -5 (1011)
+28 + -32 = -4 (1100)
+28 + -31 = -3 (1101)
+28 + -30 = -2 (1110)
+28 + -29 = -1 (1111)
+28 + -28 = 0 (0000)
+28 + -27 = 1 (0001)
+28 + -26 = 2 (0010)
+28 + -25 = 3 (0011)
+28 + -24 = 4 (0100)
+28 + -23 = 5 (0101)
+28 + -22 = 6 (0110)
+28 + -21 = 7 (0111)
+28 + -20 = -8 (1000)
+28 + -19 = -7 (1001)
+28 + -18 = -6 (1010)
+28 + -17 = -5 (1011)
+28 + -16 = -4 (1100)
+28 + -15 = -3 (1101)
+28 + -14 = -2 (1110)
+28 + -13 = -1 (1111)
+28 + -12 = 0 (0000)
+28 + -11 = 1 (0001)
+28 + -10 = 2 (0010)
+28 + -9 = 3 (0011)
+28 + -8 = 4 (0100)
+28 + -7 = 5 (0101)
+28 + -6 = 6 (0110)
+28 + -5 = 7 (0111)
+28 + -4 = -8 (1000)
+28 + -3 = -7 (1001)
+28 + -2 = -6 (1010)
+28 + -1 = -5 (1011)
+29 + 0 = -3 (1101)
+29 + 1 = -2 (1110)
+29 + 2 = -1 (1111)
+29 + 3 = 0 (0000)
+29 + 4 = 1 (0001)
+29 + 5 = 2 (0010)
+29 + 6 = 3 (0011)
+29 + 7 = 4 (0100)
+29 + 8 = 5 (0101)
+29 + 9 = 6 (0110)
+29 + 10 = 7 (0111)
+29 + 11 = -8 (1000)
+29 + 12 = -7 (1001)
+29 + 13 = -6 (1010)
+29 + 14 = -5 (1011)
+29 + 15 = -4 (1100)
+29 + 16 = -3 (1101)
+29 + 17 = -2 (1110)
+29 + 18 = -1 (1111)
+29 + 19 = 0 (0000)
+29 + 20 = 1 (0001)
+29 + 21 = 2 (0010)
+29 + 22 = 3 (0011)
+29 + 23 = 4 (0100)
+29 + 24 = 5 (0101)
+29 + 25 = 6 (0110)
+29 + 26 = 7 (0111)
+29 + 27 = -8 (1000)
+29 + 28 = -7 (1001)
+29 + 29 = -6 (1010)
+29 + 30 = -5 (1011)
+29 + 31 = -4 (1100)
+29 + -32 = -3 (1101)
+29 + -31 = -2 (1110)
+29 + -30 = -1 (1111)
+29 + -29 = 0 (0000)
+29 + -28 = 1 (0001)
+29 + -27 = 2 (0010)
+29 + -26 = 3 (0011)
+29 + -25 = 4 (0100)
+29 + -24 = 5 (0101)
+29 + -23 = 6 (0110)
+29 + -22 = 7 (0111)
+29 + -21 = -8 (1000)
+29 + -20 = -7 (1001)
+29 + -19 = -6 (1010)
+29 + -18 = -5 (1011)
+29 + -17 = -4 (1100)
+29 + -16 = -3 (1101)
+29 + -15 = -2 (1110)
+29 + -14 = -1 (1111)
+29 + -13 = 0 (0000)
+29 + -12 = 1 (0001)
+29 + -11 = 2 (0010)
+29 + -10 = 3 (0011)
+29 + -9 = 4 (0100)
+29 + -8 = 5 (0101)
+29 + -7 = 6 (0110)
+29 + -6 = 7 (0111)
+29 + -5 = -8 (1000)
+29 + -4 = -7 (1001)
+29 + -3 = -6 (1010)
+29 + -2 = -5 (1011)
+29 + -1 = -4 (1100)
+30 + 0 = -2 (1110)
+30 + 1 = -1 (1111)
+30 + 2 = 0 (0000)
+30 + 3 = 1 (0001)
+30 + 4 = 2 (0010)
+30 + 5 = 3 (0011)
+30 + 6 = 4 (0100)
+30 + 7 = 5 (0101)
+30 + 8 = 6 (0110)
+30 + 9 = 7 (0111)
+30 + 10 = -8 (1000)
+30 + 11 = -7 (1001)
+30 + 12 = -6 (1010)
+30 + 13 = -5 (1011)
+30 + 14 = -4 (1100)
+30 + 15 = -3 (1101)
+30 + 16 = -2 (1110)
+30 + 17 = -1 (1111)
+30 + 18 = 0 (0000)
+30 + 19 = 1 (0001)
+30 + 20 = 2 (0010)
+30 + 21 = 3 (0011)
+30 + 22 = 4 (0100)
+30 + 23 = 5 (0101)
+30 + 24 = 6 (0110)
+30 + 25 = 7 (0111)
+30 + 26 = -8 (1000)
+30 + 27 = -7 (1001)
+30 + 28 = -6 (1010)
+30 + 29 = -5 (1011)
+30 + 30 = -4 (1100)
+30 + 31 = -3 (1101)
+30 + -32 = -2 (1110)
+30 + -31 = -1 (1111)
+30 + -30 = 0 (0000)
+30 + -29 = 1 (0001)
+30 + -28 = 2 (0010)
+30 + -27 = 3 (0011)
+30 + -26 = 4 (0100)
+30 + -25 = 5 (0101)
+30 + -24 = 6 (0110)
+30 + -23 = 7 (0111)
+30 + -22 = -8 (1000)
+30 + -21 = -7 (1001)
+30 + -20 = -6 (1010)
+30 + -19 = -5 (1011)
+30 + -18 = -4 (1100)
+30 + -17 = -3 (1101)
+30 + -16 = -2 (1110)
+30 + -15 = -1 (1111)
+30 + -14 = 0 (0000)
+30 + -13 = 1 (0001)
+30 + -12 = 2 (0010)
+30 + -11 = 3 (0011)
+30 + -10 = 4 (0100)
+30 + -9 = 5 (0101)
+30 + -8 = 6 (0110)
+30 + -7 = 7 (0111)
+30 + -6 = -8 (1000)
+30 + -5 = -7 (1001)
+30 + -4 = -6 (1010)
+30 + -3 = -5 (1011)
+30 + -2 = -4 (1100)
+30 + -1 = -3 (1101)
+31 + 0 = -1 (1111)
+31 + 1 = 0 (0000)
+31 + 2 = 1 (0001)
+31 + 3 = 2 (0010)
+31 + 4 = 3 (0011)
+31 + 5 = 4 (0100)
+31 + 6 = 5 (0101)
+31 + 7 = 6 (0110)
+31 + 8 = 7 (0111)
+31 + 9 = -8 (1000)
+31 + 10 = -7 (1001)
+31 + 11 = -6 (1010)
+31 + 12 = -5 (1011)
+31 + 13 = -4 (1100)
+31 + 14 = -3 (1101)
+31 + 15 = -2 (1110)
+31 + 16 = -1 (1111)
+31 + 17 = 0 (0000)
+31 + 18 = 1 (0001)
+31 + 19 = 2 (0010)
+31 + 20 = 3 (0011)
+31 + 21 = 4 (0100)
+31 + 22 = 5 (0101)
+31 + 23 = 6 (0110)
+31 + 24 = 7 (0111)
+31 + 25 = -8 (1000)
+31 + 26 = -7 (1001)
+31 + 27 = -6 (1010)
+31 + 28 = -5 (1011)
+31 + 29 = -4 (1100)
+31 + 30 = -3 (1101)
+31 + 31 = -2 (1110)
+31 + -32 = -1 (1111)
+31 + -31 = 0 (0000)
+31 + -30 = 1 (0001)
+31 + -29 = 2 (0010)
+31 + -28 = 3 (0011)
+31 + -27 = 4 (0100)
+31 + -26 = 5 (0101)
+31 + -25 = 6 (0110)
+31 + -24 = 7 (0111)
+31 + -23 = -8 (1000)
+31 + -22 = -7 (1001)
+31 + -21 = -6 (1010)
+31 + -20 = -5 (1011)
+31 + -19 = -4 (1100)
+31 + -18 = -3 (1101)
+31 + -17 = -2 (1110)
+31 + -16 = -1 (1111)
+31 + -15 = 0 (0000)
+31 + -14 = 1 (0001)
+31 + -13 = 2 (0010)
+31 + -12 = 3 (0011)
+31 + -11 = 4 (0100)
+31 + -10 = 5 (0101)
+31 + -9 = 6 (0110)
+31 + -8 = 7 (0111)
+31 + -7 = -8 (1000)
+31 + -6 = -7 (1001)
+31 + -5 = -6 (1010)
+31 + -4 = -5 (1011)
+31 + -3 = -4 (1100)
+31 + -2 = -3 (1101)
+31 + -1 = -2 (1110)
+-32 + 0 = 0 (0000)
+-32 + 1 = 1 (0001)
+-32 + 2 = 2 (0010)
+-32 + 3 = 3 (0011)
+-32 + 4 = 4 (0100)
+-32 + 5 = 5 (0101)
+-32 + 6 = 6 (0110)
+-32 + 7 = 7 (0111)
+-32 + 8 = -8 (1000)
+-32 + 9 = -7 (1001)
+-32 + 10 = -6 (1010)
+-32 + 11 = -5 (1011)
+-32 + 12 = -4 (1100)
+-32 + 13 = -3 (1101)
+-32 + 14 = -2 (1110)
+-32 + 15 = -1 (1111)
+-32 + 16 = 0 (0000)
+-32 + 17 = 1 (0001)
+-32 + 18 = 2 (0010)
+-32 + 19 = 3 (0011)
+-32 + 20 = 4 (0100)
+-32 + 21 = 5 (0101)
+-32 + 22 = 6 (0110)
+-32 + 23 = 7 (0111)
+-32 + 24 = -8 (1000)
+-32 + 25 = -7 (1001)
+-32 + 26 = -6 (1010)
+-32 + 27 = -5 (1011)
+-32 + 28 = -4 (1100)
+-32 + 29 = -3 (1101)
+-32 + 30 = -2 (1110)
+-32 + 31 = -1 (1111)
+-32 + -32 = 0 (0000)
+-32 + -31 = 1 (0001)
+-32 + -30 = 2 (0010)
+-32 + -29 = 3 (0011)
+-32 + -28 = 4 (0100)
+-32 + -27 = 5 (0101)
+-32 + -26 = 6 (0110)
+-32 + -25 = 7 (0111)
+-32 + -24 = -8 (1000)
+-32 + -23 = -7 (1001)
+-32 + -22 = -6 (1010)
+-32 + -21 = -5 (1011)
+-32 + -20 = -4 (1100)
+-32 + -19 = -3 (1101)
+-32 + -18 = -2 (1110)
+-32 + -17 = -1 (1111)
+-32 + -16 = 0 (0000)
+-32 + -15 = 1 (0001)
+-32 + -14 = 2 (0010)
+-32 + -13 = 3 (0011)
+-32 + -12 = 4 (0100)
+-32 + -11 = 5 (0101)
+-32 + -10 = 6 (0110)
+-32 + -9 = 7 (0111)
+-32 + -8 = -8 (1000)
+-32 + -7 = -7 (1001)
+-32 + -6 = -6 (1010)
+-32 + -5 = -5 (1011)
+-32 + -4 = -4 (1100)
+-32 + -3 = -3 (1101)
+-32 + -2 = -2 (1110)
+-32 + -1 = -1 (1111)
+-31 + 0 = 1 (0001)
+-31 + 1 = 2 (0010)
+-31 + 2 = 3 (0011)
+-31 + 3 = 4 (0100)
+-31 + 4 = 5 (0101)
+-31 + 5 = 6 (0110)
+-31 + 6 = 7 (0111)
+-31 + 7 = -8 (1000)
+-31 + 8 = -7 (1001)
+-31 + 9 = -6 (1010)
+-31 + 10 = -5 (1011)
+-31 + 11 = -4 (1100)
+-31 + 12 = -3 (1101)
+-31 + 13 = -2 (1110)
+-31 + 14 = -1 (1111)
+-31 + 15 = 0 (0000)
+-31 + 16 = 1 (0001)
+-31 + 17 = 2 (0010)
+-31 + 18 = 3 (0011)
+-31 + 19 = 4 (0100)
+-31 + 20 = 5 (0101)
+-31 + 21 = 6 (0110)
+-31 + 22 = 7 (0111)
+-31 + 23 = -8 (1000)
+-31 + 24 = -7 (1001)
+-31 + 25 = -6 (1010)
+-31 + 26 = -5 (1011)
+-31 + 27 = -4 (1100)
+-31 + 28 = -3 (1101)
+-31 + 29 = -2 (1110)
+-31 + 30 = -1 (1111)
+-31 + 31 = 0 (0000)
+-31 + -32 = 1 (0001)
+-31 + -31 = 2 (0010)
+-31 + -30 = 3 (0011)
+-31 + -29 = 4 (0100)
+-31 + -28 = 5 (0101)
+-31 + -27 = 6 (0110)
+-31 + -26 = 7 (0111)
+-31 + -25 = -8 (1000)
+-31 + -24 = -7 (1001)
+-31 + -23 = -6 (1010)
+-31 + -22 = -5 (1011)
+-31 + -21 = -4 (1100)
+-31 + -20 = -3 (1101)
+-31 + -19 = -2 (1110)
+-31 + -18 = -1 (1111)
+-31 + -17 = 0 (0000)
+-31 + -16 = 1 (0001)
+-31 + -15 = 2 (0010)
+-31 + -14 = 3 (0011)
+-31 + -13 = 4 (0100)
+-31 + -12 = 5 (0101)
+-31 + -11 = 6 (0110)
+-31 + -10 = 7 (0111)
+-31 + -9 = -8 (1000)
+-31 + -8 = -7 (1001)
+-31 + -7 = -6 (1010)
+-31 + -6 = -5 (1011)
+-31 + -5 = -4 (1100)
+-31 + -4 = -3 (1101)
+-31 + -3 = -2 (1110)
+-31 + -2 = -1 (1111)
+-31 + -1 = 0 (0000)
+-30 + 0 = 2 (0010)
+-30 + 1 = 3 (0011)
+-30 + 2 = 4 (0100)
+-30 + 3 = 5 (0101)
+-30 + 4 = 6 (0110)
+-30 + 5 = 7 (0111)
+-30 + 6 = -8 (1000)
+-30 + 7 = -7 (1001)
+-30 + 8 = -6 (1010)
+-30 + 9 = -5 (1011)
+-30 + 10 = -4 (1100)
+-30 + 11 = -3 (1101)
+-30 + 12 = -2 (1110)
+-30 + 13 = -1 (1111)
+-30 + 14 = 0 (0000)
+-30 + 15 = 1 (0001)
+-30 + 16 = 2 (0010)
+-30 + 17 = 3 (0011)
+-30 + 18 = 4 (0100)
+-30 + 19 = 5 (0101)
+-30 + 20 = 6 (0110)
+-30 + 21 = 7 (0111)
+-30 + 22 = -8 (1000)
+-30 + 23 = -7 (1001)
+-30 + 24 = -6 (1010)
+-30 + 25 = -5 (1011)
+-30 + 26 = -4 (1100)
+-30 + 27 = -3 (1101)
+-30 + 28 = -2 (1110)
+-30 + 29 = -1 (1111)
+-30 + 30 = 0 (0000)
+-30 + 31 = 1 (0001)
+-30 + -32 = 2 (0010)
+-30 + -31 = 3 (0011)
+-30 + -30 = 4 (0100)
+-30 + -29 = 5 (0101)
+-30 + -28 = 6 (0110)
+-30 + -27 = 7 (0111)
+-30 + -26 = -8 (1000)
+-30 + -25 = -7 (1001)
+-30 + -24 = -6 (1010)
+-30 + -23 = -5 (1011)
+-30 + -22 = -4 (1100)
+-30 + -21 = -3 (1101)
+-30 + -20 = -2 (1110)
+-30 + -19 = -1 (1111)
+-30 + -18 = 0 (0000)
+-30 + -17 = 1 (0001)
+-30 + -16 = 2 (0010)
+-30 + -15 = 3 (0011)
+-30 + -14 = 4 (0100)
+-30 + -13 = 5 (0101)
+-30 + -12 = 6 (0110)
+-30 + -11 = 7 (0111)
+-30 + -10 = -8 (1000)
+-30 + -9 = -7 (1001)
+-30 + -8 = -6 (1010)
+-30 + -7 = -5 (1011)
+-30 + -6 = -4 (1100)
+-30 + -5 = -3 (1101)
+-30 + -4 = -2 (1110)
+-30 + -3 = -1 (1111)
+-30 + -2 = 0 (0000)
+-30 + -1 = 1 (0001)
+-29 + 0 = 3 (0011)
+-29 + 1 = 4 (0100)
+-29 + 2 = 5 (0101)
+-29 + 3 = 6 (0110)
+-29 + 4 = 7 (0111)
+-29 + 5 = -8 (1000)
+-29 + 6 = -7 (1001)
+-29 + 7 = -6 (1010)
+-29 + 8 = -5 (1011)
+-29 + 9 = -4 (1100)
+-29 + 10 = -3 (1101)
+-29 + 11 = -2 (1110)
+-29 + 12 = -1 (1111)
+-29 + 13 = 0 (0000)
+-29 + 14 = 1 (0001)
+-29 + 15 = 2 (0010)
+-29 + 16 = 3 (0011)
+-29 + 17 = 4 (0100)
+-29 + 18 = 5 (0101)
+-29 + 19 = 6 (0110)
+-29 + 20 = 7 (0111)
+-29 + 21 = -8 (1000)
+-29 + 22 = -7 (1001)
+-29 + 23 = -6 (1010)
+-29 + 24 = -5 (1011)
+-29 + 25 = -4 (1100)
+-29 + 26 = -3 (1101)
+-29 + 27 = -2 (1110)
+-29 + 28 = -1 (1111)
+-29 + 29 = 0 (0000)
+-29 + 30 = 1 (0001)
+-29 + 31 = 2 (0010)
+-29 + -32 = 3 (0011)
+-29 + -31 = 4 (0100)
+-29 + -30 = 5 (0101)
+-29 + -29 = 6 (0110)
+-29 + -28 = 7 (0111)
+-29 + -27 = -8 (1000)
+-29 + -26 = -7 (1001)
+-29 + -25 = -6 (1010)
+-29 + -24 = -5 (1011)
+-29 + -23 = -4 (1100)
+-29 + -22 = -3 (1101)
+-29 + -21 = -2 (1110)
+-29 + -20 = -1 (1111)
+-29 + -19 = 0 (0000)
+-29 + -18 = 1 (0001)
+-29 + -17 = 2 (0010)
+-29 + -16 = 3 (0011)
+-29 + -15 = 4 (0100)
+-29 + -14 = 5 (0101)
+-29 + -13 = 6 (0110)
+-29 + -12 = 7 (0111)
+-29 + -11 = -8 (1000)
+-29 + -10 = -7 (1001)
+-29 + -9 = -6 (1010)
+-29 + -8 = -5 (1011)
+-29 + -7 = -4 (1100)
+-29 + -6 = -3 (1101)
+-29 + -5 = -2 (1110)
+-29 + -4 = -1 (1111)
+-29 + -3 = 0 (0000)
+-29 + -2 = 1 (0001)
+-29 + -1 = 2 (0010)
+-28 + 0 = 4 (0100)
+-28 + 1 = 5 (0101)
+-28 + 2 = 6 (0110)
+-28 + 3 = 7 (0111)
+-28 + 4 = -8 (1000)
+-28 + 5 = -7 (1001)
+-28 + 6 = -6 (1010)
+-28 + 7 = -5 (1011)
+-28 + 8 = -4 (1100)
+-28 + 9 = -3 (1101)
+-28 + 10 = -2 (1110)
+-28 + 11 = -1 (1111)
+-28 + 12 = 0 (0000)
+-28 + 13 = 1 (0001)
+-28 + 14 = 2 (0010)
+-28 + 15 = 3 (0011)
+-28 + 16 = 4 (0100)
+-28 + 17 = 5 (0101)
+-28 + 18 = 6 (0110)
+-28 + 19 = 7 (0111)
+-28 + 20 = -8 (1000)
+-28 + 21 = -7 (1001)
+-28 + 22 = -6 (1010)
+-28 + 23 = -5 (1011)
+-28 + 24 = -4 (1100)
+-28 + 25 = -3 (1101)
+-28 + 26 = -2 (1110)
+-28 + 27 = -1 (1111)
+-28 + 28 = 0 (0000)
+-28 + 29 = 1 (0001)
+-28 + 30 = 2 (0010)
+-28 + 31 = 3 (0011)
+-28 + -32 = 4 (0100)
+-28 + -31 = 5 (0101)
+-28 + -30 = 6 (0110)
+-28 + -29 = 7 (0111)
+-28 + -28 = -8 (1000)
+-28 + -27 = -7 (1001)
+-28 + -26 = -6 (1010)
+-28 + -25 = -5 (1011)
+-28 + -24 = -4 (1100)
+-28 + -23 = -3 (1101)
+-28 + -22 = -2 (1110)
+-28 + -21 = -1 (1111)
+-28 + -20 = 0 (0000)
+-28 + -19 = 1 (0001)
+-28 + -18 = 2 (0010)
+-28 + -17 = 3 (0011)
+-28 + -16 = 4 (0100)
+-28 + -15 = 5 (0101)
+-28 + -14 = 6 (0110)
+-28 + -13 = 7 (0111)
+-28 + -12 = -8 (1000)
+-28 + -11 = -7 (1001)
+-28 + -10 = -6 (1010)
+-28 + -9 = -5 (1011)
+-28 + -8 = -4 (1100)
+-28 + -7 = -3 (1101)
+-28 + -6 = -2 (1110)
+-28 + -5 = -1 (1111)
+-28 + -4 = 0 (0000)
+-28 + -3 = 1 (0001)
+-28 + -2 = 2 (0010)
+-28 + -1 = 3 (0011)
+-27 + 0 = 5 (0101)
+-27 + 1 = 6 (0110)
+-27 + 2 = 7 (0111)
+-27 + 3 = -8 (1000)
+-27 + 4 = -7 (1001)
+-27 + 5 = -6 (1010)
+-27 + 6 = -5 (1011)
+-27 + 7 = -4 (1100)
+-27 + 8 = -3 (1101)
+-27 + 9 = -2 (1110)
+-27 + 10 = -1 (1111)
+-27 + 11 = 0 (0000)
+-27 + 12 = 1 (0001)
+-27 + 13 = 2 (0010)
+-27 + 14 = 3 (0011)
+-27 + 15 = 4 (0100)
+-27 + 16 = 5 (0101)
+-27 + 17 = 6 (0110)
+-27 + 18 = 7 (0111)
+-27 + 19 = -8 (1000)
+-27 + 20 = -7 (1001)
+-27 + 21 = -6 (1010)
+-27 + 22 = -5 (1011)
+-27 + 23 = -4 (1100)
+-27 + 24 = -3 (1101)
+-27 + 25 = -2 (1110)
+-27 + 26 = -1 (1111)
+-27 + 27 = 0 (0000)
+-27 + 28 = 1 (0001)
+-27 + 29 = 2 (0010)
+-27 + 30 = 3 (0011)
+-27 + 31 = 4 (0100)
+-27 + -32 = 5 (0101)
+-27 + -31 = 6 (0110)
+-27 + -30 = 7 (0111)
+-27 + -29 = -8 (1000)
+-27 + -28 = -7 (1001)
+-27 + -27 = -6 (1010)
+-27 + -26 = -5 (1011)
+-27 + -25 = -4 (1100)
+-27 + -24 = -3 (1101)
+-27 + -23 = -2 (1110)
+-27 + -22 = -1 (1111)
+-27 + -21 = 0 (0000)
+-27 + -20 = 1 (0001)
+-27 + -19 = 2 (0010)
+-27 + -18 = 3 (0011)
+-27 + -17 = 4 (0100)
+-27 + -16 = 5 (0101)
+-27 + -15 = 6 (0110)
+-27 + -14 = 7 (0111)
+-27 + -13 = -8 (1000)
+-27 + -12 = -7 (1001)
+-27 + -11 = -6 (1010)
+-27 + -10 = -5 (1011)
+-27 + -9 = -4 (1100)
+-27 + -8 = -3 (1101)
+-27 + -7 = -2 (1110)
+-27 + -6 = -1 (1111)
+-27 + -5 = 0 (0000)
+-27 + -4 = 1 (0001)
+-27 + -3 = 2 (0010)
+-27 + -2 = 3 (0011)
+-27 + -1 = 4 (0100)
+-26 + 0 = 6 (0110)
+-26 + 1 = 7 (0111)
+-26 + 2 = -8 (1000)
+-26 + 3 = -7 (1001)
+-26 + 4 = -6 (1010)
+-26 + 5 = -5 (1011)
+-26 + 6 = -4 (1100)
+-26 + 7 = -3 (1101)
+-26 + 8 = -2 (1110)
+-26 + 9 = -1 (1111)
+-26 + 10 = 0 (0000)
+-26 + 11 = 1 (0001)
+-26 + 12 = 2 (0010)
+-26 + 13 = 3 (0011)
+-26 + 14 = 4 (0100)
+-26 + 15 = 5 (0101)
+-26 + 16 = 6 (0110)
+-26 + 17 = 7 (0111)
+-26 + 18 = -8 (1000)
+-26 + 19 = -7 (1001)
+-26 + 20 = -6 (1010)
+-26 + 21 = -5 (1011)
+-26 + 22 = -4 (1100)
+-26 + 23 = -3 (1101)
+-26 + 24 = -2 (1110)
+-26 + 25 = -1 (1111)
+-26 + 26 = 0 (0000)
+-26 + 27 = 1 (0001)
+-26 + 28 = 2 (0010)
+-26 + 29 = 3 (0011)
+-26 + 30 = 4 (0100)
+-26 + 31 = 5 (0101)
+-26 + -32 = 6 (0110)
+-26 + -31 = 7 (0111)
+-26 + -30 = -8 (1000)
+-26 + -29 = -7 (1001)
+-26 + -28 = -6 (1010)
+-26 + -27 = -5 (1011)
+-26 + -26 = -4 (1100)
+-26 + -25 = -3 (1101)
+-26 + -24 = -2 (1110)
+-26 + -23 = -1 (1111)
+-26 + -22 = 0 (0000)
+-26 + -21 = 1 (0001)
+-26 + -20 = 2 (0010)
+-26 + -19 = 3 (0011)
+-26 + -18 = 4 (0100)
+-26 + -17 = 5 (0101)
+-26 + -16 = 6 (0110)
+-26 + -15 = 7 (0111)
+-26 + -14 = -8 (1000)
+-26 + -13 = -7 (1001)
+-26 + -12 = -6 (1010)
+-26 + -11 = -5 (1011)
+-26 + -10 = -4 (1100)
+-26 + -9 = -3 (1101)
+-26 + -8 = -2 (1110)
+-26 + -7 = -1 (1111)
+-26 + -6 = 0 (0000)
+-26 + -5 = 1 (0001)
+-26 + -4 = 2 (0010)
+-26 + -3 = 3 (0011)
+-26 + -2 = 4 (0100)
+-26 + -1 = 5 (0101)
+-25 + 0 = 7 (0111)
+-25 + 1 = -8 (1000)
+-25 + 2 = -7 (1001)
+-25 + 3 = -6 (1010)
+-25 + 4 = -5 (1011)
+-25 + 5 = -4 (1100)
+-25 + 6 = -3 (1101)
+-25 + 7 = -2 (1110)
+-25 + 8 = -1 (1111)
+-25 + 9 = 0 (0000)
+-25 + 10 = 1 (0001)
+-25 + 11 = 2 (0010)
+-25 + 12 = 3 (0011)
+-25 + 13 = 4 (0100)
+-25 + 14 = 5 (0101)
+-25 + 15 = 6 (0110)
+-25 + 16 = 7 (0111)
+-25 + 17 = -8 (1000)
+-25 + 18 = -7 (1001)
+-25 + 19 = -6 (1010)
+-25 + 20 = -5 (1011)
+-25 + 21 = -4 (1100)
+-25 + 22 = -3 (1101)
+-25 + 23 = -2 (1110)
+-25 + 24 = -1 (1111)
+-25 + 25 = 0 (0000)
+-25 + 26 = 1 (0001)
+-25 + 27 = 2 (0010)
+-25 + 28 = 3 (0011)
+-25 + 29 = 4 (0100)
+-25 + 30 = 5 (0101)
+-25 + 31 = 6 (0110)
+-25 + -32 = 7 (0111)
+-25 + -31 = -8 (1000)
+-25 + -30 = -7 (1001)
+-25 + -29 = -6 (1010)
+-25 + -28 = -5 (1011)
+-25 + -27 = -4 (1100)
+-25 + -26 = -3 (1101)
+-25 + -25 = -2 (1110)
+-25 + -24 = -1 (1111)
+-25 + -23 = 0 (0000)
+-25 + -22 = 1 (0001)
+-25 + -21 = 2 (0010)
+-25 + -20 = 3 (0011)
+-25 + -19 = 4 (0100)
+-25 + -18 = 5 (0101)
+-25 + -17 = 6 (0110)
+-25 + -16 = 7 (0111)
+-25 + -15 = -8 (1000)
+-25 + -14 = -7 (1001)
+-25 + -13 = -6 (1010)
+-25 + -12 = -5 (1011)
+-25 + -11 = -4 (1100)
+-25 + -10 = -3 (1101)
+-25 + -9 = -2 (1110)
+-25 + -8 = -1 (1111)
+-25 + -7 = 0 (0000)
+-25 + -6 = 1 (0001)
+-25 + -5 = 2 (0010)
+-25 + -4 = 3 (0011)
+-25 + -3 = 4 (0100)
+-25 + -2 = 5 (0101)
+-25 + -1 = 6 (0110)
+-24 + 0 = -8 (1000)
+-24 + 1 = -7 (1001)
+-24 + 2 = -6 (1010)
+-24 + 3 = -5 (1011)
+-24 + 4 = -4 (1100)
+-24 + 5 = -3 (1101)
+-24 + 6 = -2 (1110)
+-24 + 7 = -1 (1111)
+-24 + 8 = 0 (0000)
+-24 + 9 = 1 (0001)
+-24 + 10 = 2 (0010)
+-24 + 11 = 3 (0011)
+-24 + 12 = 4 (0100)
+-24 + 13 = 5 (0101)
+-24 + 14 = 6 (0110)
+-24 + 15 = 7 (0111)
+-24 + 16 = -8 (1000)
+-24 + 17 = -7 (1001)
+-24 + 18 = -6 (1010)
+-24 + 19 = -5 (1011)
+-24 + 20 = -4 (1100)
+-24 + 21 = -3 (1101)
+-24 + 22 = -2 (1110)
+-24 + 23 = -1 (1111)
+-24 + 24 = 0 (0000)
+-24 + 25 = 1 (0001)
+-24 + 26 = 2 (0010)
+-24 + 27 = 3 (0011)
+-24 + 28 = 4 (0100)
+-24 + 29 = 5 (0101)
+-24 + 30 = 6 (0110)
+-24 + 31 = 7 (0111)
+-24 + -32 = -8 (1000)
+-24 + -31 = -7 (1001)
+-24 + -30 = -6 (1010)
+-24 + -29 = -5 (1011)
+-24 + -28 = -4 (1100)
+-24 + -27 = -3 (1101)
+-24 + -26 = -2 (1110)
+-24 + -25 = -1 (1111)
+-24 + -24 = 0 (0000)
+-24 + -23 = 1 (0001)
+-24 + -22 = 2 (0010)
+-24 + -21 = 3 (0011)
+-24 + -20 = 4 (0100)
+-24 + -19 = 5 (0101)
+-24 + -18 = 6 (0110)
+-24 + -17 = 7 (0111)
+-24 + -16 = -8 (1000)
+-24 + -15 = -7 (1001)
+-24 + -14 = -6 (1010)
+-24 + -13 = -5 (1011)
+-24 + -12 = -4 (1100)
+-24 + -11 = -3 (1101)
+-24 + -10 = -2 (1110)
+-24 + -9 = -1 (1111)
+-24 + -8 = 0 (0000)
+-24 + -7 = 1 (0001)
+-24 + -6 = 2 (0010)
+-24 + -5 = 3 (0011)
+-24 + -4 = 4 (0100)
+-24 + -3 = 5 (0101)
+-24 + -2 = 6 (0110)
+-24 + -1 = 7 (0111)
+-23 + 0 = -7 (1001)
+-23 + 1 = -6 (1010)
+-23 + 2 = -5 (1011)
+-23 + 3 = -4 (1100)
+-23 + 4 = -3 (1101)
+-23 + 5 = -2 (1110)
+-23 + 6 = -1 (1111)
+-23 + 7 = 0 (0000)
+-23 + 8 = 1 (0001)
+-23 + 9 = 2 (0010)
+-23 + 10 = 3 (0011)
+-23 + 11 = 4 (0100)
+-23 + 12 = 5 (0101)
+-23 + 13 = 6 (0110)
+-23 + 14 = 7 (0111)
+-23 + 15 = -8 (1000)
+-23 + 16 = -7 (1001)
+-23 + 17 = -6 (1010)
+-23 + 18 = -5 (1011)
+-23 + 19 = -4 (1100)
+-23 + 20 = -3 (1101)
+-23 + 21 = -2 (1110)
+-23 + 22 = -1 (1111)
+-23 + 23 = 0 (0000)
+-23 + 24 = 1 (0001)
+-23 + 25 = 2 (0010)
+-23 + 26 = 3 (0011)
+-23 + 27 = 4 (0100)
+-23 + 28 = 5 (0101)
+-23 + 29 = 6 (0110)
+-23 + 30 = 7 (0111)
+-23 + 31 = -8 (1000)
+-23 + -32 = -7 (1001)
+-23 + -31 = -6 (1010)
+-23 + -30 = -5 (1011)
+-23 + -29 = -4 (1100)
+-23 + -28 = -3 (1101)
+-23 + -27 = -2 (1110)
+-23 + -26 = -1 (1111)
+-23 + -25 = 0 (0000)
+-23 + -24 = 1 (0001)
+-23 + -23 = 2 (0010)
+-23 + -22 = 3 (0011)
+-23 + -21 = 4 (0100)
+-23 + -20 = 5 (0101)
+-23 + -19 = 6 (0110)
+-23 + -18 = 7 (0111)
+-23 + -17 = -8 (1000)
+-23 + -16 = -7 (1001)
+-23 + -15 = -6 (1010)
+-23 + -14 = -5 (1011)
+-23 + -13 = -4 (1100)
+-23 + -12 = -3 (1101)
+-23 + -11 = -2 (1110)
+-23 + -10 = -1 (1111)
+-23 + -9 = 0 (0000)
+-23 + -8 = 1 (0001)
+-23 + -7 = 2 (0010)
+-23 + -6 = 3 (0011)
+-23 + -5 = 4 (0100)
+-23 + -4 = 5 (0101)
+-23 + -3 = 6 (0110)
+-23 + -2 = 7 (0111)
+-23 + -1 = -8 (1000)
+-22 + 0 = -6 (1010)
+-22 + 1 = -5 (1011)
+-22 + 2 = -4 (1100)
+-22 + 3 = -3 (1101)
+-22 + 4 = -2 (1110)
+-22 + 5 = -1 (1111)
+-22 + 6 = 0 (0000)
+-22 + 7 = 1 (0001)
+-22 + 8 = 2 (0010)
+-22 + 9 = 3 (0011)
+-22 + 10 = 4 (0100)
+-22 + 11 = 5 (0101)
+-22 + 12 = 6 (0110)
+-22 + 13 = 7 (0111)
+-22 + 14 = -8 (1000)
+-22 + 15 = -7 (1001)
+-22 + 16 = -6 (1010)
+-22 + 17 = -5 (1011)
+-22 + 18 = -4 (1100)
+-22 + 19 = -3 (1101)
+-22 + 20 = -2 (1110)
+-22 + 21 = -1 (1111)
+-22 + 22 = 0 (0000)
+-22 + 23 = 1 (0001)
+-22 + 24 = 2 (0010)
+-22 + 25 = 3 (0011)
+-22 + 26 = 4 (0100)
+-22 + 27 = 5 (0101)
+-22 + 28 = 6 (0110)
+-22 + 29 = 7 (0111)
+-22 + 30 = -8 (1000)
+-22 + 31 = -7 (1001)
+-22 + -32 = -6 (1010)
+-22 + -31 = -5 (1011)
+-22 + -30 = -4 (1100)
+-22 + -29 = -3 (1101)
+-22 + -28 = -2 (1110)
+-22 + -27 = -1 (1111)
+-22 + -26 = 0 (0000)
+-22 + -25 = 1 (0001)
+-22 + -24 = 2 (0010)
+-22 + -23 = 3 (0011)
+-22 + -22 = 4 (0100)
+-22 + -21 = 5 (0101)
+-22 + -20 = 6 (0110)
+-22 + -19 = 7 (0111)
+-22 + -18 = -8 (1000)
+-22 + -17 = -7 (1001)
+-22 + -16 = -6 (1010)
+-22 + -15 = -5 (1011)
+-22 + -14 = -4 (1100)
+-22 + -13 = -3 (1101)
+-22 + -12 = -2 (1110)
+-22 + -11 = -1 (1111)
+-22 + -10 = 0 (0000)
+-22 + -9 = 1 (0001)
+-22 + -8 = 2 (0010)
+-22 + -7 = 3 (0011)
+-22 + -6 = 4 (0100)
+-22 + -5 = 5 (0101)
+-22 + -4 = 6 (0110)
+-22 + -3 = 7 (0111)
+-22 + -2 = -8 (1000)
+-22 + -1 = -7 (1001)
+-21 + 0 = -5 (1011)
+-21 + 1 = -4 (1100)
+-21 + 2 = -3 (1101)
+-21 + 3 = -2 (1110)
+-21 + 4 = -1 (1111)
+-21 + 5 = 0 (0000)
+-21 + 6 = 1 (0001)
+-21 + 7 = 2 (0010)
+-21 + 8 = 3 (0011)
+-21 + 9 = 4 (0100)
+-21 + 10 = 5 (0101)
+-21 + 11 = 6 (0110)
+-21 + 12 = 7 (0111)
+-21 + 13 = -8 (1000)
+-21 + 14 = -7 (1001)
+-21 + 15 = -6 (1010)
+-21 + 16 = -5 (1011)
+-21 + 17 = -4 (1100)
+-21 + 18 = -3 (1101)
+-21 + 19 = -2 (1110)
+-21 + 20 = -1 (1111)
+-21 + 21 = 0 (0000)
+-21 + 22 = 1 (0001)
+-21 + 23 = 2 (0010)
+-21 + 24 = 3 (0011)
+-21 + 25 = 4 (0100)
+-21 + 26 = 5 (0101)
+-21 + 27 = 6 (0110)
+-21 + 28 = 7 (0111)
+-21 + 29 = -8 (1000)
+-21 + 30 = -7 (1001)
+-21 + 31 = -6 (1010)
+-21 + -32 = -5 (1011)
+-21 + -31 = -4 (1100)
+-21 + -30 = -3 (1101)
+-21 + -29 = -2 (1110)
+-21 + -28 = -1 (1111)
+-21 + -27 = 0 (0000)
+-21 + -26 = 1 (0001)
+-21 + -25 = 2 (0010)
+-21 + -24 = 3 (0011)
+-21 + -23 = 4 (0100)
+-21 + -22 = 5 (0101)
+-21 + -21 = 6 (0110)
+-21 + -20 = 7 (0111)
+-21 + -19 = -8 (1000)
+-21 + -18 = -7 (1001)
+-21 + -17 = -6 (1010)
+-21 + -16 = -5 (1011)
+-21 + -15 = -4 (1100)
+-21 + -14 = -3 (1101)
+-21 + -13 = -2 (1110)
+-21 + -12 = -1 (1111)
+-21 + -11 = 0 (0000)
+-21 + -10 = 1 (0001)
+-21 + -9 = 2 (0010)
+-21 + -8 = 3 (0011)
+-21 + -7 = 4 (0100)
+-21 + -6 = 5 (0101)
+-21 + -5 = 6 (0110)
+-21 + -4 = 7 (0111)
+-21 + -3 = -8 (1000)
+-21 + -2 = -7 (1001)
+-21 + -1 = -6 (1010)
+-20 + 0 = -4 (1100)
+-20 + 1 = -3 (1101)
+-20 + 2 = -2 (1110)
+-20 + 3 = -1 (1111)
+-20 + 4 = 0 (0000)
+-20 + 5 = 1 (0001)
+-20 + 6 = 2 (0010)
+-20 + 7 = 3 (0011)
+-20 + 8 = 4 (0100)
+-20 + 9 = 5 (0101)
+-20 + 10 = 6 (0110)
+-20 + 11 = 7 (0111)
+-20 + 12 = -8 (1000)
+-20 + 13 = -7 (1001)
+-20 + 14 = -6 (1010)
+-20 + 15 = -5 (1011)
+-20 + 16 = -4 (1100)
+-20 + 17 = -3 (1101)
+-20 + 18 = -2 (1110)
+-20 + 19 = -1 (1111)
+-20 + 20 = 0 (0000)
+-20 + 21 = 1 (0001)
+-20 + 22 = 2 (0010)
+-20 + 23 = 3 (0011)
+-20 + 24 = 4 (0100)
+-20 + 25 = 5 (0101)
+-20 + 26 = 6 (0110)
+-20 + 27 = 7 (0111)
+-20 + 28 = -8 (1000)
+-20 + 29 = -7 (1001)
+-20 + 30 = -6 (1010)
+-20 + 31 = -5 (1011)
+-20 + -32 = -4 (1100)
+-20 + -31 = -3 (1101)
+-20 + -30 = -2 (1110)
+-20 + -29 = -1 (1111)
+-20 + -28 = 0 (0000)
+-20 + -27 = 1 (0001)
+-20 + -26 = 2 (0010)
+-20 + -25 = 3 (0011)
+-20 + -24 = 4 (0100)
+-20 + -23 = 5 (0101)
+-20 + -22 = 6 (0110)
+-20 + -21 = 7 (0111)
+-20 + -20 = -8 (1000)
+-20 + -19 = -7 (1001)
+-20 + -18 = -6 (1010)
+-20 + -17 = -5 (1011)
+-20 + -16 = -4 (1100)
+-20 + -15 = -3 (1101)
+-20 + -14 = -2 (1110)
+-20 + -13 = -1 (1111)
+-20 + -12 = 0 (0000)
+-20 + -11 = 1 (0001)
+-20 + -10 = 2 (0010)
+-20 + -9 = 3 (0011)
+-20 + -8 = 4 (0100)
+-20 + -7 = 5 (0101)
+-20 + -6 = 6 (0110)
+-20 + -5 = 7 (0111)
+-20 + -4 = -8 (1000)
+-20 + -3 = -7 (1001)
+-20 + -2 = -6 (1010)
+-20 + -1 = -5 (1011)
+-19 + 0 = -3 (1101)
+-19 + 1 = -2 (1110)
+-19 + 2 = -1 (1111)
+-19 + 3 = 0 (0000)
+-19 + 4 = 1 (0001)
+-19 + 5 = 2 (0010)
+-19 + 6 = 3 (0011)
+-19 + 7 = 4 (0100)
+-19 + 8 = 5 (0101)
+-19 + 9 = 6 (0110)
+-19 + 10 = 7 (0111)
+-19 + 11 = -8 (1000)
+-19 + 12 = -7 (1001)
+-19 + 13 = -6 (1010)
+-19 + 14 = -5 (1011)
+-19 + 15 = -4 (1100)
+-19 + 16 = -3 (1101)
+-19 + 17 = -2 (1110)
+-19 + 18 = -1 (1111)
+-19 + 19 = 0 (0000)
+-19 + 20 = 1 (0001)
+-19 + 21 = 2 (0010)
+-19 + 22 = 3 (0011)
+-19 + 23 = 4 (0100)
+-19 + 24 = 5 (0101)
+-19 + 25 = 6 (0110)
+-19 + 26 = 7 (0111)
+-19 + 27 = -8 (1000)
+-19 + 28 = -7 (1001)
+-19 + 29 = -6 (1010)
+-19 + 30 = -5 (1011)
+-19 + 31 = -4 (1100)
+-19 + -32 = -3 (1101)
+-19 + -31 = -2 (1110)
+-19 + -30 = -1 (1111)
+-19 + -29 = 0 (0000)
+-19 + -28 = 1 (0001)
+-19 + -27 = 2 (0010)
+-19 + -26 = 3 (0011)
+-19 + -25 = 4 (0100)
+-19 + -24 = 5 (0101)
+-19 + -23 = 6 (0110)
+-19 + -22 = 7 (0111)
+-19 + -21 = -8 (1000)
+-19 + -20 = -7 (1001)
+-19 + -19 = -6 (1010)
+-19 + -18 = -5 (1011)
+-19 + -17 = -4 (1100)
+-19 + -16 = -3 (1101)
+-19 + -15 = -2 (1110)
+-19 + -14 = -1 (1111)
+-19 + -13 = 0 (0000)
+-19 + -12 = 1 (0001)
+-19 + -11 = 2 (0010)
+-19 + -10 = 3 (0011)
+-19 + -9 = 4 (0100)
+-19 + -8 = 5 (0101)
+-19 + -7 = 6 (0110)
+-19 + -6 = 7 (0111)
+-19 + -5 = -8 (1000)
+-19 + -4 = -7 (1001)
+-19 + -3 = -6 (1010)
+-19 + -2 = -5 (1011)
+-19 + -1 = -4 (1100)
+-18 + 0 = -2 (1110)
+-18 + 1 = -1 (1111)
+-18 + 2 = 0 (0000)
+-18 + 3 = 1 (0001)
+-18 + 4 = 2 (0010)
+-18 + 5 = 3 (0011)
+-18 + 6 = 4 (0100)
+-18 + 7 = 5 (0101)
+-18 + 8 = 6 (0110)
+-18 + 9 = 7 (0111)
+-18 + 10 = -8 (1000)
+-18 + 11 = -7 (1001)
+-18 + 12 = -6 (1010)
+-18 + 13 = -5 (1011)
+-18 + 14 = -4 (1100)
+-18 + 15 = -3 (1101)
+-18 + 16 = -2 (1110)
+-18 + 17 = -1 (1111)
+-18 + 18 = 0 (0000)
+-18 + 19 = 1 (0001)
+-18 + 20 = 2 (0010)
+-18 + 21 = 3 (0011)
+-18 + 22 = 4 (0100)
+-18 + 23 = 5 (0101)
+-18 + 24 = 6 (0110)
+-18 + 25 = 7 (0111)
+-18 + 26 = -8 (1000)
+-18 + 27 = -7 (1001)
+-18 + 28 = -6 (1010)
+-18 + 29 = -5 (1011)
+-18 + 30 = -4 (1100)
+-18 + 31 = -3 (1101)
+-18 + -32 = -2 (1110)
+-18 + -31 = -1 (1111)
+-18 + -30 = 0 (0000)
+-18 + -29 = 1 (0001)
+-18 + -28 = 2 (0010)
+-18 + -27 = 3 (0011)
+-18 + -26 = 4 (0100)
+-18 + -25 = 5 (0101)
+-18 + -24 = 6 (0110)
+-18 + -23 = 7 (0111)
+-18 + -22 = -8 (1000)
+-18 + -21 = -7 (1001)
+-18 + -20 = -6 (1010)
+-18 + -19 = -5 (1011)
+-18 + -18 = -4 (1100)
+-18 + -17 = -3 (1101)
+-18 + -16 = -2 (1110)
+-18 + -15 = -1 (1111)
+-18 + -14 = 0 (0000)
+-18 + -13 = 1 (0001)
+-18 + -12 = 2 (0010)
+-18 + -11 = 3 (0011)
+-18 + -10 = 4 (0100)
+-18 + -9 = 5 (0101)
+-18 + -8 = 6 (0110)
+-18 + -7 = 7 (0111)
+-18 + -6 = -8 (1000)
+-18 + -5 = -7 (1001)
+-18 + -4 = -6 (1010)
+-18 + -3 = -5 (1011)
+-18 + -2 = -4 (1100)
+-18 + -1 = -3 (1101)
+-17 + 0 = -1 (1111)
+-17 + 1 = 0 (0000)
+-17 + 2 = 1 (0001)
+-17 + 3 = 2 (0010)
+-17 + 4 = 3 (0011)
+-17 + 5 = 4 (0100)
+-17 + 6 = 5 (0101)
+-17 + 7 = 6 (0110)
+-17 + 8 = 7 (0111)
+-17 + 9 = -8 (1000)
+-17 + 10 = -7 (1001)
+-17 + 11 = -6 (1010)
+-17 + 12 = -5 (1011)
+-17 + 13 = -4 (1100)
+-17 + 14 = -3 (1101)
+-17 + 15 = -2 (1110)
+-17 + 16 = -1 (1111)
+-17 + 17 = 0 (0000)
+-17 + 18 = 1 (0001)
+-17 + 19 = 2 (0010)
+-17 + 20 = 3 (0011)
+-17 + 21 = 4 (0100)
+-17 + 22 = 5 (0101)
+-17 + 23 = 6 (0110)
+-17 + 24 = 7 (0111)
+-17 + 25 = -8 (1000)
+-17 + 26 = -7 (1001)
+-17 + 27 = -6 (1010)
+-17 + 28 = -5 (1011)
+-17 + 29 = -4 (1100)
+-17 + 30 = -3 (1101)
+-17 + 31 = -2 (1110)
+-17 + -32 = -1 (1111)
+-17 + -31 = 0 (0000)
+-17 + -30 = 1 (0001)
+-17 + -29 = 2 (0010)
+-17 + -28 = 3 (0011)
+-17 + -27 = 4 (0100)
+-17 + -26 = 5 (0101)
+-17 + -25 = 6 (0110)
+-17 + -24 = 7 (0111)
+-17 + -23 = -8 (1000)
+-17 + -22 = -7 (1001)
+-17 + -21 = -6 (1010)
+-17 + -20 = -5 (1011)
+-17 + -19 = -4 (1100)
+-17 + -18 = -3 (1101)
+-17 + -17 = -2 (1110)
+-17 + -16 = -1 (1111)
+-17 + -15 = 0 (0000)
+-17 + -14 = 1 (0001)
+-17 + -13 = 2 (0010)
+-17 + -12 = 3 (0011)
+-17 + -11 = 4 (0100)
+-17 + -10 = 5 (0101)
+-17 + -9 = 6 (0110)
+-17 + -8 = 7 (0111)
+-17 + -7 = -8 (1000)
+-17 + -6 = -7 (1001)
+-17 + -5 = -6 (1010)
+-17 + -4 = -5 (1011)
+-17 + -3 = -4 (1100)
+-17 + -2 = -3 (1101)
+-17 + -1 = -2 (1110)
+-16 + 0 = 0 (0000)
+-16 + 1 = 1 (0001)
+-16 + 2 = 2 (0010)
+-16 + 3 = 3 (0011)
+-16 + 4 = 4 (0100)
+-16 + 5 = 5 (0101)
+-16 + 6 = 6 (0110)
+-16 + 7 = 7 (0111)
+-16 + 8 = -8 (1000)
+-16 + 9 = -7 (1001)
+-16 + 10 = -6 (1010)
+-16 + 11 = -5 (1011)
+-16 + 12 = -4 (1100)
+-16 + 13 = -3 (1101)
+-16 + 14 = -2 (1110)
+-16 + 15 = -1 (1111)
+-16 + 16 = 0 (0000)
+-16 + 17 = 1 (0001)
+-16 + 18 = 2 (0010)
+-16 + 19 = 3 (0011)
+-16 + 20 = 4 (0100)
+-16 + 21 = 5 (0101)
+-16 + 22 = 6 (0110)
+-16 + 23 = 7 (0111)
+-16 + 24 = -8 (1000)
+-16 + 25 = -7 (1001)
+-16 + 26 = -6 (1010)
+-16 + 27 = -5 (1011)
+-16 + 28 = -4 (1100)
+-16 + 29 = -3 (1101)
+-16 + 30 = -2 (1110)
+-16 + 31 = -1 (1111)
+-16 + -32 = 0 (0000)
+-16 + -31 = 1 (0001)
+-16 + -30 = 2 (0010)
+-16 + -29 = 3 (0011)
+-16 + -28 = 4 (0100)
+-16 + -27 = 5 (0101)
+-16 + -26 = 6 (0110)
+-16 + -25 = 7 (0111)
+-16 + -24 = -8 (1000)
+-16 + -23 = -7 (1001)
+-16 + -22 = -6 (1010)
+-16 + -21 = -5 (1011)
+-16 + -20 = -4 (1100)
+-16 + -19 = -3 (1101)
+-16 + -18 = -2 (1110)
+-16 + -17 = -1 (1111)
+-16 + -16 = 0 (0000)
+-16 + -15 = 1 (0001)
+-16 + -14 = 2 (0010)
+-16 + -13 = 3 (0011)
+-16 + -12 = 4 (0100)
+-16 + -11 = 5 (0101)
+-16 + -10 = 6 (0110)
+-16 + -9 = 7 (0111)
+-16 + -8 = -8 (1000)
+-16 + -7 = -7 (1001)
+-16 + -6 = -6 (1010)
+-16 + -5 = -5 (1011)
+-16 + -4 = -4 (1100)
+-16 + -3 = -3 (1101)
+-16 + -2 = -2 (1110)
+-16 + -1 = -1 (1111)
+-15 + 0 = 1 (0001)
+-15 + 1 = 2 (0010)
+-15 + 2 = 3 (0011)
+-15 + 3 = 4 (0100)
+-15 + 4 = 5 (0101)
+-15 + 5 = 6 (0110)
+-15 + 6 = 7 (0111)
+-15 + 7 = -8 (1000)
+-15 + 8 = -7 (1001)
+-15 + 9 = -6 (1010)
+-15 + 10 = -5 (1011)
+-15 + 11 = -4 (1100)
+-15 + 12 = -3 (1101)
+-15 + 13 = -2 (1110)
+-15 + 14 = -1 (1111)
+-15 + 15 = 0 (0000)
+-15 + 16 = 1 (0001)
+-15 + 17 = 2 (0010)
+-15 + 18 = 3 (0011)
+-15 + 19 = 4 (0100)
+-15 + 20 = 5 (0101)
+-15 + 21 = 6 (0110)
+-15 + 22 = 7 (0111)
+-15 + 23 = -8 (1000)
+-15 + 24 = -7 (1001)
+-15 + 25 = -6 (1010)
+-15 + 26 = -5 (1011)
+-15 + 27 = -4 (1100)
+-15 + 28 = -3 (1101)
+-15 + 29 = -2 (1110)
+-15 + 30 = -1 (1111)
+-15 + 31 = 0 (0000)
+-15 + -32 = 1 (0001)
+-15 + -31 = 2 (0010)
+-15 + -30 = 3 (0011)
+-15 + -29 = 4 (0100)
+-15 + -28 = 5 (0101)
+-15 + -27 = 6 (0110)
+-15 + -26 = 7 (0111)
+-15 + -25 = -8 (1000)
+-15 + -24 = -7 (1001)
+-15 + -23 = -6 (1010)
+-15 + -22 = -5 (1011)
+-15 + -21 = -4 (1100)
+-15 + -20 = -3 (1101)
+-15 + -19 = -2 (1110)
+-15 + -18 = -1 (1111)
+-15 + -17 = 0 (0000)
+-15 + -16 = 1 (0001)
+-15 + -15 = 2 (0010)
+-15 + -14 = 3 (0011)
+-15 + -13 = 4 (0100)
+-15 + -12 = 5 (0101)
+-15 + -11 = 6 (0110)
+-15 + -10 = 7 (0111)
+-15 + -9 = -8 (1000)
+-15 + -8 = -7 (1001)
+-15 + -7 = -6 (1010)
+-15 + -6 = -5 (1011)
+-15 + -5 = -4 (1100)
+-15 + -4 = -3 (1101)
+-15 + -3 = -2 (1110)
+-15 + -2 = -1 (1111)
+-15 + -1 = 0 (0000)
+-14 + 0 = 2 (0010)
+-14 + 1 = 3 (0011)
+-14 + 2 = 4 (0100)
+-14 + 3 = 5 (0101)
+-14 + 4 = 6 (0110)
+-14 + 5 = 7 (0111)
+-14 + 6 = -8 (1000)
+-14 + 7 = -7 (1001)
+-14 + 8 = -6 (1010)
+-14 + 9 = -5 (1011)
+-14 + 10 = -4 (1100)
+-14 + 11 = -3 (1101)
+-14 + 12 = -2 (1110)
+-14 + 13 = -1 (1111)
+-14 + 14 = 0 (0000)
+-14 + 15 = 1 (0001)
+-14 + 16 = 2 (0010)
+-14 + 17 = 3 (0011)
+-14 + 18 = 4 (0100)
+-14 + 19 = 5 (0101)
+-14 + 20 = 6 (0110)
+-14 + 21 = 7 (0111)
+-14 + 22 = -8 (1000)
+-14 + 23 = -7 (1001)
+-14 + 24 = -6 (1010)
+-14 + 25 = -5 (1011)
+-14 + 26 = -4 (1100)
+-14 + 27 = -3 (1101)
+-14 + 28 = -2 (1110)
+-14 + 29 = -1 (1111)
+-14 + 30 = 0 (0000)
+-14 + 31 = 1 (0001)
+-14 + -32 = 2 (0010)
+-14 + -31 = 3 (0011)
+-14 + -30 = 4 (0100)
+-14 + -29 = 5 (0101)
+-14 + -28 = 6 (0110)
+-14 + -27 = 7 (0111)
+-14 + -26 = -8 (1000)
+-14 + -25 = -7 (1001)
+-14 + -24 = -6 (1010)
+-14 + -23 = -5 (1011)
+-14 + -22 = -4 (1100)
+-14 + -21 = -3 (1101)
+-14 + -20 = -2 (1110)
+-14 + -19 = -1 (1111)
+-14 + -18 = 0 (0000)
+-14 + -17 = 1 (0001)
+-14 + -16 = 2 (0010)
+-14 + -15 = 3 (0011)
+-14 + -14 = 4 (0100)
+-14 + -13 = 5 (0101)
+-14 + -12 = 6 (0110)
+-14 + -11 = 7 (0111)
+-14 + -10 = -8 (1000)
+-14 + -9 = -7 (1001)
+-14 + -8 = -6 (1010)
+-14 + -7 = -5 (1011)
+-14 + -6 = -4 (1100)
+-14 + -5 = -3 (1101)
+-14 + -4 = -2 (1110)
+-14 + -3 = -1 (1111)
+-14 + -2 = 0 (0000)
+-14 + -1 = 1 (0001)
+-13 + 0 = 3 (0011)
+-13 + 1 = 4 (0100)
+-13 + 2 = 5 (0101)
+-13 + 3 = 6 (0110)
+-13 + 4 = 7 (0111)
+-13 + 5 = -8 (1000)
+-13 + 6 = -7 (1001)
+-13 + 7 = -6 (1010)
+-13 + 8 = -5 (1011)
+-13 + 9 = -4 (1100)
+-13 + 10 = -3 (1101)
+-13 + 11 = -2 (1110)
+-13 + 12 = -1 (1111)
+-13 + 13 = 0 (0000)
+-13 + 14 = 1 (0001)
+-13 + 15 = 2 (0010)
+-13 + 16 = 3 (0011)
+-13 + 17 = 4 (0100)
+-13 + 18 = 5 (0101)
+-13 + 19 = 6 (0110)
+-13 + 20 = 7 (0111)
+-13 + 21 = -8 (1000)
+-13 + 22 = -7 (1001)
+-13 + 23 = -6 (1010)
+-13 + 24 = -5 (1011)
+-13 + 25 = -4 (1100)
+-13 + 26 = -3 (1101)
+-13 + 27 = -2 (1110)
+-13 + 28 = -1 (1111)
+-13 + 29 = 0 (0000)
+-13 + 30 = 1 (0001)
+-13 + 31 = 2 (0010)
+-13 + -32 = 3 (0011)
+-13 + -31 = 4 (0100)
+-13 + -30 = 5 (0101)
+-13 + -29 = 6 (0110)
+-13 + -28 = 7 (0111)
+-13 + -27 = -8 (1000)
+-13 + -26 = -7 (1001)
+-13 + -25 = -6 (1010)
+-13 + -24 = -5 (1011)
+-13 + -23 = -4 (1100)
+-13 + -22 = -3 (1101)
+-13 + -21 = -2 (1110)
+-13 + -20 = -1 (1111)
+-13 + -19 = 0 (0000)
+-13 + -18 = 1 (0001)
+-13 + -17 = 2 (0010)
+-13 + -16 = 3 (0011)
+-13 + -15 = 4 (0100)
+-13 + -14 = 5 (0101)
+-13 + -13 = 6 (0110)
+-13 + -12 = 7 (0111)
+-13 + -11 = -8 (1000)
+-13 + -10 = -7 (1001)
+-13 + -9 = -6 (1010)
+-13 + -8 = -5 (1011)
+-13 + -7 = -4 (1100)
+-13 + -6 = -3 (1101)
+-13 + -5 = -2 (1110)
+-13 + -4 = -1 (1111)
+-13 + -3 = 0 (0000)
+-13 + -2 = 1 (0001)
+-13 + -1 = 2 (0010)
+-12 + 0 = 4 (0100)
+-12 + 1 = 5 (0101)
+-12 + 2 = 6 (0110)
+-12 + 3 = 7 (0111)
+-12 + 4 = -8 (1000)
+-12 + 5 = -7 (1001)
+-12 + 6 = -6 (1010)
+-12 + 7 = -5 (1011)
+-12 + 8 = -4 (1100)
+-12 + 9 = -3 (1101)
+-12 + 10 = -2 (1110)
+-12 + 11 = -1 (1111)
+-12 + 12 = 0 (0000)
+-12 + 13 = 1 (0001)
+-12 + 14 = 2 (0010)
+-12 + 15 = 3 (0011)
+-12 + 16 = 4 (0100)
+-12 + 17 = 5 (0101)
+-12 + 18 = 6 (0110)
+-12 + 19 = 7 (0111)
+-12 + 20 = -8 (1000)
+-12 + 21 = -7 (1001)
+-12 + 22 = -6 (1010)
+-12 + 23 = -5 (1011)
+-12 + 24 = -4 (1100)
+-12 + 25 = -3 (1101)
+-12 + 26 = -2 (1110)
+-12 + 27 = -1 (1111)
+-12 + 28 = 0 (0000)
+-12 + 29 = 1 (0001)
+-12 + 30 = 2 (0010)
+-12 + 31 = 3 (0011)
+-12 + -32 = 4 (0100)
+-12 + -31 = 5 (0101)
+-12 + -30 = 6 (0110)
+-12 + -29 = 7 (0111)
+-12 + -28 = -8 (1000)
+-12 + -27 = -7 (1001)
+-12 + -26 = -6 (1010)
+-12 + -25 = -5 (1011)
+-12 + -24 = -4 (1100)
+-12 + -23 = -3 (1101)
+-12 + -22 = -2 (1110)
+-12 + -21 = -1 (1111)
+-12 + -20 = 0 (0000)
+-12 + -19 = 1 (0001)
+-12 + -18 = 2 (0010)
+-12 + -17 = 3 (0011)
+-12 + -16 = 4 (0100)
+-12 + -15 = 5 (0101)
+-12 + -14 = 6 (0110)
+-12 + -13 = 7 (0111)
+-12 + -12 = -8 (1000)
+-12 + -11 = -7 (1001)
+-12 + -10 = -6 (1010)
+-12 + -9 = -5 (1011)
+-12 + -8 = -4 (1100)
+-12 + -7 = -3 (1101)
+-12 + -6 = -2 (1110)
+-12 + -5 = -1 (1111)
+-12 + -4 = 0 (0000)
+-12 + -3 = 1 (0001)
+-12 + -2 = 2 (0010)
+-12 + -1 = 3 (0011)
+-11 + 0 = 5 (0101)
+-11 + 1 = 6 (0110)
+-11 + 2 = 7 (0111)
+-11 + 3 = -8 (1000)
+-11 + 4 = -7 (1001)
+-11 + 5 = -6 (1010)
+-11 + 6 = -5 (1011)
+-11 + 7 = -4 (1100)
+-11 + 8 = -3 (1101)
+-11 + 9 = -2 (1110)
+-11 + 10 = -1 (1111)
+-11 + 11 = 0 (0000)
+-11 + 12 = 1 (0001)
+-11 + 13 = 2 (0010)
+-11 + 14 = 3 (0011)
+-11 + 15 = 4 (0100)
+-11 + 16 = 5 (0101)
+-11 + 17 = 6 (0110)
+-11 + 18 = 7 (0111)
+-11 + 19 = -8 (1000)
+-11 + 20 = -7 (1001)
+-11 + 21 = -6 (1010)
+-11 + 22 = -5 (1011)
+-11 + 23 = -4 (1100)
+-11 + 24 = -3 (1101)
+-11 + 25 = -2 (1110)
+-11 + 26 = -1 (1111)
+-11 + 27 = 0 (0000)
+-11 + 28 = 1 (0001)
+-11 + 29 = 2 (0010)
+-11 + 30 = 3 (0011)
+-11 + 31 = 4 (0100)
+-11 + -32 = 5 (0101)
+-11 + -31 = 6 (0110)
+-11 + -30 = 7 (0111)
+-11 + -29 = -8 (1000)
+-11 + -28 = -7 (1001)
+-11 + -27 = -6 (1010)
+-11 + -26 = -5 (1011)
+-11 + -25 = -4 (1100)
+-11 + -24 = -3 (1101)
+-11 + -23 = -2 (1110)
+-11 + -22 = -1 (1111)
+-11 + -21 = 0 (0000)
+-11 + -20 = 1 (0001)
+-11 + -19 = 2 (0010)
+-11 + -18 = 3 (0011)
+-11 + -17 = 4 (0100)
+-11 + -16 = 5 (0101)
+-11 + -15 = 6 (0110)
+-11 + -14 = 7 (0111)
+-11 + -13 = -8 (1000)
+-11 + -12 = -7 (1001)
+-11 + -11 = -6 (1010)
+-11 + -10 = -5 (1011)
+-11 + -9 = -4 (1100)
+-11 + -8 = -3 (1101)
+-11 + -7 = -2 (1110)
+-11 + -6 = -1 (1111)
+-11 + -5 = 0 (0000)
+-11 + -4 = 1 (0001)
+-11 + -3 = 2 (0010)
+-11 + -2 = 3 (0011)
+-11 + -1 = 4 (0100)
+-10 + 0 = 6 (0110)
+-10 + 1 = 7 (0111)
+-10 + 2 = -8 (1000)
+-10 + 3 = -7 (1001)
+-10 + 4 = -6 (1010)
+-10 + 5 = -5 (1011)
+-10 + 6 = -4 (1100)
+-10 + 7 = -3 (1101)
+-10 + 8 = -2 (1110)
+-10 + 9 = -1 (1111)
+-10 + 10 = 0 (0000)
+-10 + 11 = 1 (0001)
+-10 + 12 = 2 (0010)
+-10 + 13 = 3 (0011)
+-10 + 14 = 4 (0100)
+-10 + 15 = 5 (0101)
+-10 + 16 = 6 (0110)
+-10 + 17 = 7 (0111)
+-10 + 18 = -8 (1000)
+-10 + 19 = -7 (1001)
+-10 + 20 = -6 (1010)
+-10 + 21 = -5 (1011)
+-10 + 22 = -4 (1100)
+-10 + 23 = -3 (1101)
+-10 + 24 = -2 (1110)
+-10 + 25 = -1 (1111)
+-10 + 26 = 0 (0000)
+-10 + 27 = 1 (0001)
+-10 + 28 = 2 (0010)
+-10 + 29 = 3 (0011)
+-10 + 30 = 4 (0100)
+-10 + 31 = 5 (0101)
+-10 + -32 = 6 (0110)
+-10 + -31 = 7 (0111)
+-10 + -30 = -8 (1000)
+-10 + -29 = -7 (1001)
+-10 + -28 = -6 (1010)
+-10 + -27 = -5 (1011)
+-10 + -26 = -4 (1100)
+-10 + -25 = -3 (1101)
+-10 + -24 = -2 (1110)
+-10 + -23 = -1 (1111)
+-10 + -22 = 0 (0000)
+-10 + -21 = 1 (0001)
+-10 + -20 = 2 (0010)
+-10 + -19 = 3 (0011)
+-10 + -18 = 4 (0100)
+-10 + -17 = 5 (0101)
+-10 + -16 = 6 (0110)
+-10 + -15 = 7 (0111)
+-10 + -14 = -8 (1000)
+-10 + -13 = -7 (1001)
+-10 + -12 = -6 (1010)
+-10 + -11 = -5 (1011)
+-10 + -10 = -4 (1100)
+-10 + -9 = -3 (1101)
+-10 + -8 = -2 (1110)
+-10 + -7 = -1 (1111)
+-10 + -6 = 0 (0000)
+-10 + -5 = 1 (0001)
+-10 + -4 = 2 (0010)
+-10 + -3 = 3 (0011)
+-10 + -2 = 4 (0100)
+-10 + -1 = 5 (0101)
+-9 + 0 = 7 (0111)
+-9 + 1 = -8 (1000)
+-9 + 2 = -7 (1001)
+-9 + 3 = -6 (1010)
+-9 + 4 = -5 (1011)
+-9 + 5 = -4 (1100)
+-9 + 6 = -3 (1101)
+-9 + 7 = -2 (1110)
+-9 + 8 = -1 (1111)
+-9 + 9 = 0 (0000)
+-9 + 10 = 1 (0001)
+-9 + 11 = 2 (0010)
+-9 + 12 = 3 (0011)
+-9 + 13 = 4 (0100)
+-9 + 14 = 5 (0101)
+-9 + 15 = 6 (0110)
+-9 + 16 = 7 (0111)
+-9 + 17 = -8 (1000)
+-9 + 18 = -7 (1001)
+-9 + 19 = -6 (1010)
+-9 + 20 = -5 (1011)
+-9 + 21 = -4 (1100)
+-9 + 22 = -3 (1101)
+-9 + 23 = -2 (1110)
+-9 + 24 = -1 (1111)
+-9 + 25 = 0 (0000)
+-9 + 26 = 1 (0001)
+-9 + 27 = 2 (0010)
+-9 + 28 = 3 (0011)
+-9 + 29 = 4 (0100)
+-9 + 30 = 5 (0101)
+-9 + 31 = 6 (0110)
+-9 + -32 = 7 (0111)
+-9 + -31 = -8 (1000)
+-9 + -30 = -7 (1001)
+-9 + -29 = -6 (1010)
+-9 + -28 = -5 (1011)
+-9 + -27 = -4 (1100)
+-9 + -26 = -3 (1101)
+-9 + -25 = -2 (1110)
+-9 + -24 = -1 (1111)
+-9 + -23 = 0 (0000)
+-9 + -22 = 1 (0001)
+-9 + -21 = 2 (0010)
+-9 + -20 = 3 (0011)
+-9 + -19 = 4 (0100)
+-9 + -18 = 5 (0101)
+-9 + -17 = 6 (0110)
+-9 + -16 = 7 (0111)
+-9 + -15 = -8 (1000)
+-9 + -14 = -7 (1001)
+-9 + -13 = -6 (1010)
+-9 + -12 = -5 (1011)
+-9 + -11 = -4 (1100)
+-9 + -10 = -3 (1101)
+-9 + -9 = -2 (1110)
+-9 + -8 = -1 (1111)
+-9 + -7 = 0 (0000)
+-9 + -6 = 1 (0001)
+-9 + -5 = 2 (0010)
+-9 + -4 = 3 (0011)
+-9 + -3 = 4 (0100)
+-9 + -2 = 5 (0101)
+-9 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/main.cpp
new file mode 100644
index 000000000..be64495c4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 4-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 4;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector4 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/stimgen.h
new file mode 100644
index 000000000..5a95ce7a8
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/truncation.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/truncation.f
new file mode 100644
index 000000000..d35040a90
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_signed/truncation/truncation.f
@@ -0,0 +1,3 @@
+truncation/datawidth.cpp
+truncation/stimgen.cpp
+truncation/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/README b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/README
new file mode 100644
index 000000000..6d77c7cbb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/README
@@ -0,0 +1,9 @@
+bits_to_bits 7-bit = 6-bit + 6-bit
+lost_carry 6-bit = 6-bit + 6-bit
+extension 9-bit = 6-bit + 6-bit
+truncation 4-bit = 6-bit + 6-bit
+
+promote 7-bit = 4-bit + 6-bit
+promote_lost_carry 6-bit = 4-bit + 6-bit
+promote_extension 9-bit = 4-bit + 6-bit
+promote_truncation 4-bit = 4-bit + 6-bit
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/bits_to_bits.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/bits_to_bits.f
new file mode 100644
index 000000000..9fcbb2977
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/bits_to_bits.f
@@ -0,0 +1,3 @@
+bits_to_bits/datawidth.cpp
+bits_to_bits/stimgen.cpp
+bits_to_bits/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/common.h
new file mode 100644
index 000000000..e56acdb9f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<7> bool_vector7;
+
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+typedef sc_signal<bool_vector7> signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/datawidth.cpp
new file mode 100644
index 000000000..c48e158c0
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector6 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector7 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/datawidth.h
new file mode 100644
index 000000000..df7ca5b2e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector7& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector7& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/golden/bits_to_bits.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/golden/bits_to_bits.log
new file mode 100644
index 000000000..c41483f55
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/golden/bits_to_bits.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+16 + 0 = 16 (0010000)
+16 + 1 = 17 (0010001)
+16 + 2 = 18 (0010010)
+16 + 3 = 19 (0010011)
+16 + 4 = 20 (0010100)
+16 + 5 = 21 (0010101)
+16 + 6 = 22 (0010110)
+16 + 7 = 23 (0010111)
+16 + 8 = 24 (0011000)
+16 + 9 = 25 (0011001)
+16 + 10 = 26 (0011010)
+16 + 11 = 27 (0011011)
+16 + 12 = 28 (0011100)
+16 + 13 = 29 (0011101)
+16 + 14 = 30 (0011110)
+16 + 15 = 31 (0011111)
+16 + 16 = 32 (0100000)
+16 + 17 = 33 (0100001)
+16 + 18 = 34 (0100010)
+16 + 19 = 35 (0100011)
+16 + 20 = 36 (0100100)
+16 + 21 = 37 (0100101)
+16 + 22 = 38 (0100110)
+16 + 23 = 39 (0100111)
+16 + 24 = 40 (0101000)
+16 + 25 = 41 (0101001)
+16 + 26 = 42 (0101010)
+16 + 27 = 43 (0101011)
+16 + 28 = 44 (0101100)
+16 + 29 = 45 (0101101)
+16 + 30 = 46 (0101110)
+16 + 31 = 47 (0101111)
+16 + 32 = 48 (0110000)
+16 + 33 = 49 (0110001)
+16 + 34 = 50 (0110010)
+16 + 35 = 51 (0110011)
+16 + 36 = 52 (0110100)
+16 + 37 = 53 (0110101)
+16 + 38 = 54 (0110110)
+16 + 39 = 55 (0110111)
+16 + 40 = 56 (0111000)
+16 + 41 = 57 (0111001)
+16 + 42 = 58 (0111010)
+16 + 43 = 59 (0111011)
+16 + 44 = 60 (0111100)
+16 + 45 = 61 (0111101)
+16 + 46 = 62 (0111110)
+16 + 47 = 63 (0111111)
+16 + 48 = 64 (1000000)
+16 + 49 = 65 (1000001)
+16 + 50 = 66 (1000010)
+16 + 51 = 67 (1000011)
+16 + 52 = 68 (1000100)
+16 + 53 = 69 (1000101)
+16 + 54 = 70 (1000110)
+16 + 55 = 71 (1000111)
+16 + 56 = 72 (1001000)
+16 + 57 = 73 (1001001)
+16 + 58 = 74 (1001010)
+16 + 59 = 75 (1001011)
+16 + 60 = 76 (1001100)
+16 + 61 = 77 (1001101)
+16 + 62 = 78 (1001110)
+16 + 63 = 79 (1001111)
+17 + 0 = 17 (0010001)
+17 + 1 = 18 (0010010)
+17 + 2 = 19 (0010011)
+17 + 3 = 20 (0010100)
+17 + 4 = 21 (0010101)
+17 + 5 = 22 (0010110)
+17 + 6 = 23 (0010111)
+17 + 7 = 24 (0011000)
+17 + 8 = 25 (0011001)
+17 + 9 = 26 (0011010)
+17 + 10 = 27 (0011011)
+17 + 11 = 28 (0011100)
+17 + 12 = 29 (0011101)
+17 + 13 = 30 (0011110)
+17 + 14 = 31 (0011111)
+17 + 15 = 32 (0100000)
+17 + 16 = 33 (0100001)
+17 + 17 = 34 (0100010)
+17 + 18 = 35 (0100011)
+17 + 19 = 36 (0100100)
+17 + 20 = 37 (0100101)
+17 + 21 = 38 (0100110)
+17 + 22 = 39 (0100111)
+17 + 23 = 40 (0101000)
+17 + 24 = 41 (0101001)
+17 + 25 = 42 (0101010)
+17 + 26 = 43 (0101011)
+17 + 27 = 44 (0101100)
+17 + 28 = 45 (0101101)
+17 + 29 = 46 (0101110)
+17 + 30 = 47 (0101111)
+17 + 31 = 48 (0110000)
+17 + 32 = 49 (0110001)
+17 + 33 = 50 (0110010)
+17 + 34 = 51 (0110011)
+17 + 35 = 52 (0110100)
+17 + 36 = 53 (0110101)
+17 + 37 = 54 (0110110)
+17 + 38 = 55 (0110111)
+17 + 39 = 56 (0111000)
+17 + 40 = 57 (0111001)
+17 + 41 = 58 (0111010)
+17 + 42 = 59 (0111011)
+17 + 43 = 60 (0111100)
+17 + 44 = 61 (0111101)
+17 + 45 = 62 (0111110)
+17 + 46 = 63 (0111111)
+17 + 47 = 64 (1000000)
+17 + 48 = 65 (1000001)
+17 + 49 = 66 (1000010)
+17 + 50 = 67 (1000011)
+17 + 51 = 68 (1000100)
+17 + 52 = 69 (1000101)
+17 + 53 = 70 (1000110)
+17 + 54 = 71 (1000111)
+17 + 55 = 72 (1001000)
+17 + 56 = 73 (1001001)
+17 + 57 = 74 (1001010)
+17 + 58 = 75 (1001011)
+17 + 59 = 76 (1001100)
+17 + 60 = 77 (1001101)
+17 + 61 = 78 (1001110)
+17 + 62 = 79 (1001111)
+17 + 63 = 80 (1010000)
+18 + 0 = 18 (0010010)
+18 + 1 = 19 (0010011)
+18 + 2 = 20 (0010100)
+18 + 3 = 21 (0010101)
+18 + 4 = 22 (0010110)
+18 + 5 = 23 (0010111)
+18 + 6 = 24 (0011000)
+18 + 7 = 25 (0011001)
+18 + 8 = 26 (0011010)
+18 + 9 = 27 (0011011)
+18 + 10 = 28 (0011100)
+18 + 11 = 29 (0011101)
+18 + 12 = 30 (0011110)
+18 + 13 = 31 (0011111)
+18 + 14 = 32 (0100000)
+18 + 15 = 33 (0100001)
+18 + 16 = 34 (0100010)
+18 + 17 = 35 (0100011)
+18 + 18 = 36 (0100100)
+18 + 19 = 37 (0100101)
+18 + 20 = 38 (0100110)
+18 + 21 = 39 (0100111)
+18 + 22 = 40 (0101000)
+18 + 23 = 41 (0101001)
+18 + 24 = 42 (0101010)
+18 + 25 = 43 (0101011)
+18 + 26 = 44 (0101100)
+18 + 27 = 45 (0101101)
+18 + 28 = 46 (0101110)
+18 + 29 = 47 (0101111)
+18 + 30 = 48 (0110000)
+18 + 31 = 49 (0110001)
+18 + 32 = 50 (0110010)
+18 + 33 = 51 (0110011)
+18 + 34 = 52 (0110100)
+18 + 35 = 53 (0110101)
+18 + 36 = 54 (0110110)
+18 + 37 = 55 (0110111)
+18 + 38 = 56 (0111000)
+18 + 39 = 57 (0111001)
+18 + 40 = 58 (0111010)
+18 + 41 = 59 (0111011)
+18 + 42 = 60 (0111100)
+18 + 43 = 61 (0111101)
+18 + 44 = 62 (0111110)
+18 + 45 = 63 (0111111)
+18 + 46 = 64 (1000000)
+18 + 47 = 65 (1000001)
+18 + 48 = 66 (1000010)
+18 + 49 = 67 (1000011)
+18 + 50 = 68 (1000100)
+18 + 51 = 69 (1000101)
+18 + 52 = 70 (1000110)
+18 + 53 = 71 (1000111)
+18 + 54 = 72 (1001000)
+18 + 55 = 73 (1001001)
+18 + 56 = 74 (1001010)
+18 + 57 = 75 (1001011)
+18 + 58 = 76 (1001100)
+18 + 59 = 77 (1001101)
+18 + 60 = 78 (1001110)
+18 + 61 = 79 (1001111)
+18 + 62 = 80 (1010000)
+18 + 63 = 81 (1010001)
+19 + 0 = 19 (0010011)
+19 + 1 = 20 (0010100)
+19 + 2 = 21 (0010101)
+19 + 3 = 22 (0010110)
+19 + 4 = 23 (0010111)
+19 + 5 = 24 (0011000)
+19 + 6 = 25 (0011001)
+19 + 7 = 26 (0011010)
+19 + 8 = 27 (0011011)
+19 + 9 = 28 (0011100)
+19 + 10 = 29 (0011101)
+19 + 11 = 30 (0011110)
+19 + 12 = 31 (0011111)
+19 + 13 = 32 (0100000)
+19 + 14 = 33 (0100001)
+19 + 15 = 34 (0100010)
+19 + 16 = 35 (0100011)
+19 + 17 = 36 (0100100)
+19 + 18 = 37 (0100101)
+19 + 19 = 38 (0100110)
+19 + 20 = 39 (0100111)
+19 + 21 = 40 (0101000)
+19 + 22 = 41 (0101001)
+19 + 23 = 42 (0101010)
+19 + 24 = 43 (0101011)
+19 + 25 = 44 (0101100)
+19 + 26 = 45 (0101101)
+19 + 27 = 46 (0101110)
+19 + 28 = 47 (0101111)
+19 + 29 = 48 (0110000)
+19 + 30 = 49 (0110001)
+19 + 31 = 50 (0110010)
+19 + 32 = 51 (0110011)
+19 + 33 = 52 (0110100)
+19 + 34 = 53 (0110101)
+19 + 35 = 54 (0110110)
+19 + 36 = 55 (0110111)
+19 + 37 = 56 (0111000)
+19 + 38 = 57 (0111001)
+19 + 39 = 58 (0111010)
+19 + 40 = 59 (0111011)
+19 + 41 = 60 (0111100)
+19 + 42 = 61 (0111101)
+19 + 43 = 62 (0111110)
+19 + 44 = 63 (0111111)
+19 + 45 = 64 (1000000)
+19 + 46 = 65 (1000001)
+19 + 47 = 66 (1000010)
+19 + 48 = 67 (1000011)
+19 + 49 = 68 (1000100)
+19 + 50 = 69 (1000101)
+19 + 51 = 70 (1000110)
+19 + 52 = 71 (1000111)
+19 + 53 = 72 (1001000)
+19 + 54 = 73 (1001001)
+19 + 55 = 74 (1001010)
+19 + 56 = 75 (1001011)
+19 + 57 = 76 (1001100)
+19 + 58 = 77 (1001101)
+19 + 59 = 78 (1001110)
+19 + 60 = 79 (1001111)
+19 + 61 = 80 (1010000)
+19 + 62 = 81 (1010001)
+19 + 63 = 82 (1010010)
+20 + 0 = 20 (0010100)
+20 + 1 = 21 (0010101)
+20 + 2 = 22 (0010110)
+20 + 3 = 23 (0010111)
+20 + 4 = 24 (0011000)
+20 + 5 = 25 (0011001)
+20 + 6 = 26 (0011010)
+20 + 7 = 27 (0011011)
+20 + 8 = 28 (0011100)
+20 + 9 = 29 (0011101)
+20 + 10 = 30 (0011110)
+20 + 11 = 31 (0011111)
+20 + 12 = 32 (0100000)
+20 + 13 = 33 (0100001)
+20 + 14 = 34 (0100010)
+20 + 15 = 35 (0100011)
+20 + 16 = 36 (0100100)
+20 + 17 = 37 (0100101)
+20 + 18 = 38 (0100110)
+20 + 19 = 39 (0100111)
+20 + 20 = 40 (0101000)
+20 + 21 = 41 (0101001)
+20 + 22 = 42 (0101010)
+20 + 23 = 43 (0101011)
+20 + 24 = 44 (0101100)
+20 + 25 = 45 (0101101)
+20 + 26 = 46 (0101110)
+20 + 27 = 47 (0101111)
+20 + 28 = 48 (0110000)
+20 + 29 = 49 (0110001)
+20 + 30 = 50 (0110010)
+20 + 31 = 51 (0110011)
+20 + 32 = 52 (0110100)
+20 + 33 = 53 (0110101)
+20 + 34 = 54 (0110110)
+20 + 35 = 55 (0110111)
+20 + 36 = 56 (0111000)
+20 + 37 = 57 (0111001)
+20 + 38 = 58 (0111010)
+20 + 39 = 59 (0111011)
+20 + 40 = 60 (0111100)
+20 + 41 = 61 (0111101)
+20 + 42 = 62 (0111110)
+20 + 43 = 63 (0111111)
+20 + 44 = 64 (1000000)
+20 + 45 = 65 (1000001)
+20 + 46 = 66 (1000010)
+20 + 47 = 67 (1000011)
+20 + 48 = 68 (1000100)
+20 + 49 = 69 (1000101)
+20 + 50 = 70 (1000110)
+20 + 51 = 71 (1000111)
+20 + 52 = 72 (1001000)
+20 + 53 = 73 (1001001)
+20 + 54 = 74 (1001010)
+20 + 55 = 75 (1001011)
+20 + 56 = 76 (1001100)
+20 + 57 = 77 (1001101)
+20 + 58 = 78 (1001110)
+20 + 59 = 79 (1001111)
+20 + 60 = 80 (1010000)
+20 + 61 = 81 (1010001)
+20 + 62 = 82 (1010010)
+20 + 63 = 83 (1010011)
+21 + 0 = 21 (0010101)
+21 + 1 = 22 (0010110)
+21 + 2 = 23 (0010111)
+21 + 3 = 24 (0011000)
+21 + 4 = 25 (0011001)
+21 + 5 = 26 (0011010)
+21 + 6 = 27 (0011011)
+21 + 7 = 28 (0011100)
+21 + 8 = 29 (0011101)
+21 + 9 = 30 (0011110)
+21 + 10 = 31 (0011111)
+21 + 11 = 32 (0100000)
+21 + 12 = 33 (0100001)
+21 + 13 = 34 (0100010)
+21 + 14 = 35 (0100011)
+21 + 15 = 36 (0100100)
+21 + 16 = 37 (0100101)
+21 + 17 = 38 (0100110)
+21 + 18 = 39 (0100111)
+21 + 19 = 40 (0101000)
+21 + 20 = 41 (0101001)
+21 + 21 = 42 (0101010)
+21 + 22 = 43 (0101011)
+21 + 23 = 44 (0101100)
+21 + 24 = 45 (0101101)
+21 + 25 = 46 (0101110)
+21 + 26 = 47 (0101111)
+21 + 27 = 48 (0110000)
+21 + 28 = 49 (0110001)
+21 + 29 = 50 (0110010)
+21 + 30 = 51 (0110011)
+21 + 31 = 52 (0110100)
+21 + 32 = 53 (0110101)
+21 + 33 = 54 (0110110)
+21 + 34 = 55 (0110111)
+21 + 35 = 56 (0111000)
+21 + 36 = 57 (0111001)
+21 + 37 = 58 (0111010)
+21 + 38 = 59 (0111011)
+21 + 39 = 60 (0111100)
+21 + 40 = 61 (0111101)
+21 + 41 = 62 (0111110)
+21 + 42 = 63 (0111111)
+21 + 43 = 64 (1000000)
+21 + 44 = 65 (1000001)
+21 + 45 = 66 (1000010)
+21 + 46 = 67 (1000011)
+21 + 47 = 68 (1000100)
+21 + 48 = 69 (1000101)
+21 + 49 = 70 (1000110)
+21 + 50 = 71 (1000111)
+21 + 51 = 72 (1001000)
+21 + 52 = 73 (1001001)
+21 + 53 = 74 (1001010)
+21 + 54 = 75 (1001011)
+21 + 55 = 76 (1001100)
+21 + 56 = 77 (1001101)
+21 + 57 = 78 (1001110)
+21 + 58 = 79 (1001111)
+21 + 59 = 80 (1010000)
+21 + 60 = 81 (1010001)
+21 + 61 = 82 (1010010)
+21 + 62 = 83 (1010011)
+21 + 63 = 84 (1010100)
+22 + 0 = 22 (0010110)
+22 + 1 = 23 (0010111)
+22 + 2 = 24 (0011000)
+22 + 3 = 25 (0011001)
+22 + 4 = 26 (0011010)
+22 + 5 = 27 (0011011)
+22 + 6 = 28 (0011100)
+22 + 7 = 29 (0011101)
+22 + 8 = 30 (0011110)
+22 + 9 = 31 (0011111)
+22 + 10 = 32 (0100000)
+22 + 11 = 33 (0100001)
+22 + 12 = 34 (0100010)
+22 + 13 = 35 (0100011)
+22 + 14 = 36 (0100100)
+22 + 15 = 37 (0100101)
+22 + 16 = 38 (0100110)
+22 + 17 = 39 (0100111)
+22 + 18 = 40 (0101000)
+22 + 19 = 41 (0101001)
+22 + 20 = 42 (0101010)
+22 + 21 = 43 (0101011)
+22 + 22 = 44 (0101100)
+22 + 23 = 45 (0101101)
+22 + 24 = 46 (0101110)
+22 + 25 = 47 (0101111)
+22 + 26 = 48 (0110000)
+22 + 27 = 49 (0110001)
+22 + 28 = 50 (0110010)
+22 + 29 = 51 (0110011)
+22 + 30 = 52 (0110100)
+22 + 31 = 53 (0110101)
+22 + 32 = 54 (0110110)
+22 + 33 = 55 (0110111)
+22 + 34 = 56 (0111000)
+22 + 35 = 57 (0111001)
+22 + 36 = 58 (0111010)
+22 + 37 = 59 (0111011)
+22 + 38 = 60 (0111100)
+22 + 39 = 61 (0111101)
+22 + 40 = 62 (0111110)
+22 + 41 = 63 (0111111)
+22 + 42 = 64 (1000000)
+22 + 43 = 65 (1000001)
+22 + 44 = 66 (1000010)
+22 + 45 = 67 (1000011)
+22 + 46 = 68 (1000100)
+22 + 47 = 69 (1000101)
+22 + 48 = 70 (1000110)
+22 + 49 = 71 (1000111)
+22 + 50 = 72 (1001000)
+22 + 51 = 73 (1001001)
+22 + 52 = 74 (1001010)
+22 + 53 = 75 (1001011)
+22 + 54 = 76 (1001100)
+22 + 55 = 77 (1001101)
+22 + 56 = 78 (1001110)
+22 + 57 = 79 (1001111)
+22 + 58 = 80 (1010000)
+22 + 59 = 81 (1010001)
+22 + 60 = 82 (1010010)
+22 + 61 = 83 (1010011)
+22 + 62 = 84 (1010100)
+22 + 63 = 85 (1010101)
+23 + 0 = 23 (0010111)
+23 + 1 = 24 (0011000)
+23 + 2 = 25 (0011001)
+23 + 3 = 26 (0011010)
+23 + 4 = 27 (0011011)
+23 + 5 = 28 (0011100)
+23 + 6 = 29 (0011101)
+23 + 7 = 30 (0011110)
+23 + 8 = 31 (0011111)
+23 + 9 = 32 (0100000)
+23 + 10 = 33 (0100001)
+23 + 11 = 34 (0100010)
+23 + 12 = 35 (0100011)
+23 + 13 = 36 (0100100)
+23 + 14 = 37 (0100101)
+23 + 15 = 38 (0100110)
+23 + 16 = 39 (0100111)
+23 + 17 = 40 (0101000)
+23 + 18 = 41 (0101001)
+23 + 19 = 42 (0101010)
+23 + 20 = 43 (0101011)
+23 + 21 = 44 (0101100)
+23 + 22 = 45 (0101101)
+23 + 23 = 46 (0101110)
+23 + 24 = 47 (0101111)
+23 + 25 = 48 (0110000)
+23 + 26 = 49 (0110001)
+23 + 27 = 50 (0110010)
+23 + 28 = 51 (0110011)
+23 + 29 = 52 (0110100)
+23 + 30 = 53 (0110101)
+23 + 31 = 54 (0110110)
+23 + 32 = 55 (0110111)
+23 + 33 = 56 (0111000)
+23 + 34 = 57 (0111001)
+23 + 35 = 58 (0111010)
+23 + 36 = 59 (0111011)
+23 + 37 = 60 (0111100)
+23 + 38 = 61 (0111101)
+23 + 39 = 62 (0111110)
+23 + 40 = 63 (0111111)
+23 + 41 = 64 (1000000)
+23 + 42 = 65 (1000001)
+23 + 43 = 66 (1000010)
+23 + 44 = 67 (1000011)
+23 + 45 = 68 (1000100)
+23 + 46 = 69 (1000101)
+23 + 47 = 70 (1000110)
+23 + 48 = 71 (1000111)
+23 + 49 = 72 (1001000)
+23 + 50 = 73 (1001001)
+23 + 51 = 74 (1001010)
+23 + 52 = 75 (1001011)
+23 + 53 = 76 (1001100)
+23 + 54 = 77 (1001101)
+23 + 55 = 78 (1001110)
+23 + 56 = 79 (1001111)
+23 + 57 = 80 (1010000)
+23 + 58 = 81 (1010001)
+23 + 59 = 82 (1010010)
+23 + 60 = 83 (1010011)
+23 + 61 = 84 (1010100)
+23 + 62 = 85 (1010101)
+23 + 63 = 86 (1010110)
+24 + 0 = 24 (0011000)
+24 + 1 = 25 (0011001)
+24 + 2 = 26 (0011010)
+24 + 3 = 27 (0011011)
+24 + 4 = 28 (0011100)
+24 + 5 = 29 (0011101)
+24 + 6 = 30 (0011110)
+24 + 7 = 31 (0011111)
+24 + 8 = 32 (0100000)
+24 + 9 = 33 (0100001)
+24 + 10 = 34 (0100010)
+24 + 11 = 35 (0100011)
+24 + 12 = 36 (0100100)
+24 + 13 = 37 (0100101)
+24 + 14 = 38 (0100110)
+24 + 15 = 39 (0100111)
+24 + 16 = 40 (0101000)
+24 + 17 = 41 (0101001)
+24 + 18 = 42 (0101010)
+24 + 19 = 43 (0101011)
+24 + 20 = 44 (0101100)
+24 + 21 = 45 (0101101)
+24 + 22 = 46 (0101110)
+24 + 23 = 47 (0101111)
+24 + 24 = 48 (0110000)
+24 + 25 = 49 (0110001)
+24 + 26 = 50 (0110010)
+24 + 27 = 51 (0110011)
+24 + 28 = 52 (0110100)
+24 + 29 = 53 (0110101)
+24 + 30 = 54 (0110110)
+24 + 31 = 55 (0110111)
+24 + 32 = 56 (0111000)
+24 + 33 = 57 (0111001)
+24 + 34 = 58 (0111010)
+24 + 35 = 59 (0111011)
+24 + 36 = 60 (0111100)
+24 + 37 = 61 (0111101)
+24 + 38 = 62 (0111110)
+24 + 39 = 63 (0111111)
+24 + 40 = 64 (1000000)
+24 + 41 = 65 (1000001)
+24 + 42 = 66 (1000010)
+24 + 43 = 67 (1000011)
+24 + 44 = 68 (1000100)
+24 + 45 = 69 (1000101)
+24 + 46 = 70 (1000110)
+24 + 47 = 71 (1000111)
+24 + 48 = 72 (1001000)
+24 + 49 = 73 (1001001)
+24 + 50 = 74 (1001010)
+24 + 51 = 75 (1001011)
+24 + 52 = 76 (1001100)
+24 + 53 = 77 (1001101)
+24 + 54 = 78 (1001110)
+24 + 55 = 79 (1001111)
+24 + 56 = 80 (1010000)
+24 + 57 = 81 (1010001)
+24 + 58 = 82 (1010010)
+24 + 59 = 83 (1010011)
+24 + 60 = 84 (1010100)
+24 + 61 = 85 (1010101)
+24 + 62 = 86 (1010110)
+24 + 63 = 87 (1010111)
+25 + 0 = 25 (0011001)
+25 + 1 = 26 (0011010)
+25 + 2 = 27 (0011011)
+25 + 3 = 28 (0011100)
+25 + 4 = 29 (0011101)
+25 + 5 = 30 (0011110)
+25 + 6 = 31 (0011111)
+25 + 7 = 32 (0100000)
+25 + 8 = 33 (0100001)
+25 + 9 = 34 (0100010)
+25 + 10 = 35 (0100011)
+25 + 11 = 36 (0100100)
+25 + 12 = 37 (0100101)
+25 + 13 = 38 (0100110)
+25 + 14 = 39 (0100111)
+25 + 15 = 40 (0101000)
+25 + 16 = 41 (0101001)
+25 + 17 = 42 (0101010)
+25 + 18 = 43 (0101011)
+25 + 19 = 44 (0101100)
+25 + 20 = 45 (0101101)
+25 + 21 = 46 (0101110)
+25 + 22 = 47 (0101111)
+25 + 23 = 48 (0110000)
+25 + 24 = 49 (0110001)
+25 + 25 = 50 (0110010)
+25 + 26 = 51 (0110011)
+25 + 27 = 52 (0110100)
+25 + 28 = 53 (0110101)
+25 + 29 = 54 (0110110)
+25 + 30 = 55 (0110111)
+25 + 31 = 56 (0111000)
+25 + 32 = 57 (0111001)
+25 + 33 = 58 (0111010)
+25 + 34 = 59 (0111011)
+25 + 35 = 60 (0111100)
+25 + 36 = 61 (0111101)
+25 + 37 = 62 (0111110)
+25 + 38 = 63 (0111111)
+25 + 39 = 64 (1000000)
+25 + 40 = 65 (1000001)
+25 + 41 = 66 (1000010)
+25 + 42 = 67 (1000011)
+25 + 43 = 68 (1000100)
+25 + 44 = 69 (1000101)
+25 + 45 = 70 (1000110)
+25 + 46 = 71 (1000111)
+25 + 47 = 72 (1001000)
+25 + 48 = 73 (1001001)
+25 + 49 = 74 (1001010)
+25 + 50 = 75 (1001011)
+25 + 51 = 76 (1001100)
+25 + 52 = 77 (1001101)
+25 + 53 = 78 (1001110)
+25 + 54 = 79 (1001111)
+25 + 55 = 80 (1010000)
+25 + 56 = 81 (1010001)
+25 + 57 = 82 (1010010)
+25 + 58 = 83 (1010011)
+25 + 59 = 84 (1010100)
+25 + 60 = 85 (1010101)
+25 + 61 = 86 (1010110)
+25 + 62 = 87 (1010111)
+25 + 63 = 88 (1011000)
+26 + 0 = 26 (0011010)
+26 + 1 = 27 (0011011)
+26 + 2 = 28 (0011100)
+26 + 3 = 29 (0011101)
+26 + 4 = 30 (0011110)
+26 + 5 = 31 (0011111)
+26 + 6 = 32 (0100000)
+26 + 7 = 33 (0100001)
+26 + 8 = 34 (0100010)
+26 + 9 = 35 (0100011)
+26 + 10 = 36 (0100100)
+26 + 11 = 37 (0100101)
+26 + 12 = 38 (0100110)
+26 + 13 = 39 (0100111)
+26 + 14 = 40 (0101000)
+26 + 15 = 41 (0101001)
+26 + 16 = 42 (0101010)
+26 + 17 = 43 (0101011)
+26 + 18 = 44 (0101100)
+26 + 19 = 45 (0101101)
+26 + 20 = 46 (0101110)
+26 + 21 = 47 (0101111)
+26 + 22 = 48 (0110000)
+26 + 23 = 49 (0110001)
+26 + 24 = 50 (0110010)
+26 + 25 = 51 (0110011)
+26 + 26 = 52 (0110100)
+26 + 27 = 53 (0110101)
+26 + 28 = 54 (0110110)
+26 + 29 = 55 (0110111)
+26 + 30 = 56 (0111000)
+26 + 31 = 57 (0111001)
+26 + 32 = 58 (0111010)
+26 + 33 = 59 (0111011)
+26 + 34 = 60 (0111100)
+26 + 35 = 61 (0111101)
+26 + 36 = 62 (0111110)
+26 + 37 = 63 (0111111)
+26 + 38 = 64 (1000000)
+26 + 39 = 65 (1000001)
+26 + 40 = 66 (1000010)
+26 + 41 = 67 (1000011)
+26 + 42 = 68 (1000100)
+26 + 43 = 69 (1000101)
+26 + 44 = 70 (1000110)
+26 + 45 = 71 (1000111)
+26 + 46 = 72 (1001000)
+26 + 47 = 73 (1001001)
+26 + 48 = 74 (1001010)
+26 + 49 = 75 (1001011)
+26 + 50 = 76 (1001100)
+26 + 51 = 77 (1001101)
+26 + 52 = 78 (1001110)
+26 + 53 = 79 (1001111)
+26 + 54 = 80 (1010000)
+26 + 55 = 81 (1010001)
+26 + 56 = 82 (1010010)
+26 + 57 = 83 (1010011)
+26 + 58 = 84 (1010100)
+26 + 59 = 85 (1010101)
+26 + 60 = 86 (1010110)
+26 + 61 = 87 (1010111)
+26 + 62 = 88 (1011000)
+26 + 63 = 89 (1011001)
+27 + 0 = 27 (0011011)
+27 + 1 = 28 (0011100)
+27 + 2 = 29 (0011101)
+27 + 3 = 30 (0011110)
+27 + 4 = 31 (0011111)
+27 + 5 = 32 (0100000)
+27 + 6 = 33 (0100001)
+27 + 7 = 34 (0100010)
+27 + 8 = 35 (0100011)
+27 + 9 = 36 (0100100)
+27 + 10 = 37 (0100101)
+27 + 11 = 38 (0100110)
+27 + 12 = 39 (0100111)
+27 + 13 = 40 (0101000)
+27 + 14 = 41 (0101001)
+27 + 15 = 42 (0101010)
+27 + 16 = 43 (0101011)
+27 + 17 = 44 (0101100)
+27 + 18 = 45 (0101101)
+27 + 19 = 46 (0101110)
+27 + 20 = 47 (0101111)
+27 + 21 = 48 (0110000)
+27 + 22 = 49 (0110001)
+27 + 23 = 50 (0110010)
+27 + 24 = 51 (0110011)
+27 + 25 = 52 (0110100)
+27 + 26 = 53 (0110101)
+27 + 27 = 54 (0110110)
+27 + 28 = 55 (0110111)
+27 + 29 = 56 (0111000)
+27 + 30 = 57 (0111001)
+27 + 31 = 58 (0111010)
+27 + 32 = 59 (0111011)
+27 + 33 = 60 (0111100)
+27 + 34 = 61 (0111101)
+27 + 35 = 62 (0111110)
+27 + 36 = 63 (0111111)
+27 + 37 = 64 (1000000)
+27 + 38 = 65 (1000001)
+27 + 39 = 66 (1000010)
+27 + 40 = 67 (1000011)
+27 + 41 = 68 (1000100)
+27 + 42 = 69 (1000101)
+27 + 43 = 70 (1000110)
+27 + 44 = 71 (1000111)
+27 + 45 = 72 (1001000)
+27 + 46 = 73 (1001001)
+27 + 47 = 74 (1001010)
+27 + 48 = 75 (1001011)
+27 + 49 = 76 (1001100)
+27 + 50 = 77 (1001101)
+27 + 51 = 78 (1001110)
+27 + 52 = 79 (1001111)
+27 + 53 = 80 (1010000)
+27 + 54 = 81 (1010001)
+27 + 55 = 82 (1010010)
+27 + 56 = 83 (1010011)
+27 + 57 = 84 (1010100)
+27 + 58 = 85 (1010101)
+27 + 59 = 86 (1010110)
+27 + 60 = 87 (1010111)
+27 + 61 = 88 (1011000)
+27 + 62 = 89 (1011001)
+27 + 63 = 90 (1011010)
+28 + 0 = 28 (0011100)
+28 + 1 = 29 (0011101)
+28 + 2 = 30 (0011110)
+28 + 3 = 31 (0011111)
+28 + 4 = 32 (0100000)
+28 + 5 = 33 (0100001)
+28 + 6 = 34 (0100010)
+28 + 7 = 35 (0100011)
+28 + 8 = 36 (0100100)
+28 + 9 = 37 (0100101)
+28 + 10 = 38 (0100110)
+28 + 11 = 39 (0100111)
+28 + 12 = 40 (0101000)
+28 + 13 = 41 (0101001)
+28 + 14 = 42 (0101010)
+28 + 15 = 43 (0101011)
+28 + 16 = 44 (0101100)
+28 + 17 = 45 (0101101)
+28 + 18 = 46 (0101110)
+28 + 19 = 47 (0101111)
+28 + 20 = 48 (0110000)
+28 + 21 = 49 (0110001)
+28 + 22 = 50 (0110010)
+28 + 23 = 51 (0110011)
+28 + 24 = 52 (0110100)
+28 + 25 = 53 (0110101)
+28 + 26 = 54 (0110110)
+28 + 27 = 55 (0110111)
+28 + 28 = 56 (0111000)
+28 + 29 = 57 (0111001)
+28 + 30 = 58 (0111010)
+28 + 31 = 59 (0111011)
+28 + 32 = 60 (0111100)
+28 + 33 = 61 (0111101)
+28 + 34 = 62 (0111110)
+28 + 35 = 63 (0111111)
+28 + 36 = 64 (1000000)
+28 + 37 = 65 (1000001)
+28 + 38 = 66 (1000010)
+28 + 39 = 67 (1000011)
+28 + 40 = 68 (1000100)
+28 + 41 = 69 (1000101)
+28 + 42 = 70 (1000110)
+28 + 43 = 71 (1000111)
+28 + 44 = 72 (1001000)
+28 + 45 = 73 (1001001)
+28 + 46 = 74 (1001010)
+28 + 47 = 75 (1001011)
+28 + 48 = 76 (1001100)
+28 + 49 = 77 (1001101)
+28 + 50 = 78 (1001110)
+28 + 51 = 79 (1001111)
+28 + 52 = 80 (1010000)
+28 + 53 = 81 (1010001)
+28 + 54 = 82 (1010010)
+28 + 55 = 83 (1010011)
+28 + 56 = 84 (1010100)
+28 + 57 = 85 (1010101)
+28 + 58 = 86 (1010110)
+28 + 59 = 87 (1010111)
+28 + 60 = 88 (1011000)
+28 + 61 = 89 (1011001)
+28 + 62 = 90 (1011010)
+28 + 63 = 91 (1011011)
+29 + 0 = 29 (0011101)
+29 + 1 = 30 (0011110)
+29 + 2 = 31 (0011111)
+29 + 3 = 32 (0100000)
+29 + 4 = 33 (0100001)
+29 + 5 = 34 (0100010)
+29 + 6 = 35 (0100011)
+29 + 7 = 36 (0100100)
+29 + 8 = 37 (0100101)
+29 + 9 = 38 (0100110)
+29 + 10 = 39 (0100111)
+29 + 11 = 40 (0101000)
+29 + 12 = 41 (0101001)
+29 + 13 = 42 (0101010)
+29 + 14 = 43 (0101011)
+29 + 15 = 44 (0101100)
+29 + 16 = 45 (0101101)
+29 + 17 = 46 (0101110)
+29 + 18 = 47 (0101111)
+29 + 19 = 48 (0110000)
+29 + 20 = 49 (0110001)
+29 + 21 = 50 (0110010)
+29 + 22 = 51 (0110011)
+29 + 23 = 52 (0110100)
+29 + 24 = 53 (0110101)
+29 + 25 = 54 (0110110)
+29 + 26 = 55 (0110111)
+29 + 27 = 56 (0111000)
+29 + 28 = 57 (0111001)
+29 + 29 = 58 (0111010)
+29 + 30 = 59 (0111011)
+29 + 31 = 60 (0111100)
+29 + 32 = 61 (0111101)
+29 + 33 = 62 (0111110)
+29 + 34 = 63 (0111111)
+29 + 35 = 64 (1000000)
+29 + 36 = 65 (1000001)
+29 + 37 = 66 (1000010)
+29 + 38 = 67 (1000011)
+29 + 39 = 68 (1000100)
+29 + 40 = 69 (1000101)
+29 + 41 = 70 (1000110)
+29 + 42 = 71 (1000111)
+29 + 43 = 72 (1001000)
+29 + 44 = 73 (1001001)
+29 + 45 = 74 (1001010)
+29 + 46 = 75 (1001011)
+29 + 47 = 76 (1001100)
+29 + 48 = 77 (1001101)
+29 + 49 = 78 (1001110)
+29 + 50 = 79 (1001111)
+29 + 51 = 80 (1010000)
+29 + 52 = 81 (1010001)
+29 + 53 = 82 (1010010)
+29 + 54 = 83 (1010011)
+29 + 55 = 84 (1010100)
+29 + 56 = 85 (1010101)
+29 + 57 = 86 (1010110)
+29 + 58 = 87 (1010111)
+29 + 59 = 88 (1011000)
+29 + 60 = 89 (1011001)
+29 + 61 = 90 (1011010)
+29 + 62 = 91 (1011011)
+29 + 63 = 92 (1011100)
+30 + 0 = 30 (0011110)
+30 + 1 = 31 (0011111)
+30 + 2 = 32 (0100000)
+30 + 3 = 33 (0100001)
+30 + 4 = 34 (0100010)
+30 + 5 = 35 (0100011)
+30 + 6 = 36 (0100100)
+30 + 7 = 37 (0100101)
+30 + 8 = 38 (0100110)
+30 + 9 = 39 (0100111)
+30 + 10 = 40 (0101000)
+30 + 11 = 41 (0101001)
+30 + 12 = 42 (0101010)
+30 + 13 = 43 (0101011)
+30 + 14 = 44 (0101100)
+30 + 15 = 45 (0101101)
+30 + 16 = 46 (0101110)
+30 + 17 = 47 (0101111)
+30 + 18 = 48 (0110000)
+30 + 19 = 49 (0110001)
+30 + 20 = 50 (0110010)
+30 + 21 = 51 (0110011)
+30 + 22 = 52 (0110100)
+30 + 23 = 53 (0110101)
+30 + 24 = 54 (0110110)
+30 + 25 = 55 (0110111)
+30 + 26 = 56 (0111000)
+30 + 27 = 57 (0111001)
+30 + 28 = 58 (0111010)
+30 + 29 = 59 (0111011)
+30 + 30 = 60 (0111100)
+30 + 31 = 61 (0111101)
+30 + 32 = 62 (0111110)
+30 + 33 = 63 (0111111)
+30 + 34 = 64 (1000000)
+30 + 35 = 65 (1000001)
+30 + 36 = 66 (1000010)
+30 + 37 = 67 (1000011)
+30 + 38 = 68 (1000100)
+30 + 39 = 69 (1000101)
+30 + 40 = 70 (1000110)
+30 + 41 = 71 (1000111)
+30 + 42 = 72 (1001000)
+30 + 43 = 73 (1001001)
+30 + 44 = 74 (1001010)
+30 + 45 = 75 (1001011)
+30 + 46 = 76 (1001100)
+30 + 47 = 77 (1001101)
+30 + 48 = 78 (1001110)
+30 + 49 = 79 (1001111)
+30 + 50 = 80 (1010000)
+30 + 51 = 81 (1010001)
+30 + 52 = 82 (1010010)
+30 + 53 = 83 (1010011)
+30 + 54 = 84 (1010100)
+30 + 55 = 85 (1010101)
+30 + 56 = 86 (1010110)
+30 + 57 = 87 (1010111)
+30 + 58 = 88 (1011000)
+30 + 59 = 89 (1011001)
+30 + 60 = 90 (1011010)
+30 + 61 = 91 (1011011)
+30 + 62 = 92 (1011100)
+30 + 63 = 93 (1011101)
+31 + 0 = 31 (0011111)
+31 + 1 = 32 (0100000)
+31 + 2 = 33 (0100001)
+31 + 3 = 34 (0100010)
+31 + 4 = 35 (0100011)
+31 + 5 = 36 (0100100)
+31 + 6 = 37 (0100101)
+31 + 7 = 38 (0100110)
+31 + 8 = 39 (0100111)
+31 + 9 = 40 (0101000)
+31 + 10 = 41 (0101001)
+31 + 11 = 42 (0101010)
+31 + 12 = 43 (0101011)
+31 + 13 = 44 (0101100)
+31 + 14 = 45 (0101101)
+31 + 15 = 46 (0101110)
+31 + 16 = 47 (0101111)
+31 + 17 = 48 (0110000)
+31 + 18 = 49 (0110001)
+31 + 19 = 50 (0110010)
+31 + 20 = 51 (0110011)
+31 + 21 = 52 (0110100)
+31 + 22 = 53 (0110101)
+31 + 23 = 54 (0110110)
+31 + 24 = 55 (0110111)
+31 + 25 = 56 (0111000)
+31 + 26 = 57 (0111001)
+31 + 27 = 58 (0111010)
+31 + 28 = 59 (0111011)
+31 + 29 = 60 (0111100)
+31 + 30 = 61 (0111101)
+31 + 31 = 62 (0111110)
+31 + 32 = 63 (0111111)
+31 + 33 = 64 (1000000)
+31 + 34 = 65 (1000001)
+31 + 35 = 66 (1000010)
+31 + 36 = 67 (1000011)
+31 + 37 = 68 (1000100)
+31 + 38 = 69 (1000101)
+31 + 39 = 70 (1000110)
+31 + 40 = 71 (1000111)
+31 + 41 = 72 (1001000)
+31 + 42 = 73 (1001001)
+31 + 43 = 74 (1001010)
+31 + 44 = 75 (1001011)
+31 + 45 = 76 (1001100)
+31 + 46 = 77 (1001101)
+31 + 47 = 78 (1001110)
+31 + 48 = 79 (1001111)
+31 + 49 = 80 (1010000)
+31 + 50 = 81 (1010001)
+31 + 51 = 82 (1010010)
+31 + 52 = 83 (1010011)
+31 + 53 = 84 (1010100)
+31 + 54 = 85 (1010101)
+31 + 55 = 86 (1010110)
+31 + 56 = 87 (1010111)
+31 + 57 = 88 (1011000)
+31 + 58 = 89 (1011001)
+31 + 59 = 90 (1011010)
+31 + 60 = 91 (1011011)
+31 + 61 = 92 (1011100)
+31 + 62 = 93 (1011101)
+31 + 63 = 94 (1011110)
+32 + 0 = 32 (0100000)
+32 + 1 = 33 (0100001)
+32 + 2 = 34 (0100010)
+32 + 3 = 35 (0100011)
+32 + 4 = 36 (0100100)
+32 + 5 = 37 (0100101)
+32 + 6 = 38 (0100110)
+32 + 7 = 39 (0100111)
+32 + 8 = 40 (0101000)
+32 + 9 = 41 (0101001)
+32 + 10 = 42 (0101010)
+32 + 11 = 43 (0101011)
+32 + 12 = 44 (0101100)
+32 + 13 = 45 (0101101)
+32 + 14 = 46 (0101110)
+32 + 15 = 47 (0101111)
+32 + 16 = 48 (0110000)
+32 + 17 = 49 (0110001)
+32 + 18 = 50 (0110010)
+32 + 19 = 51 (0110011)
+32 + 20 = 52 (0110100)
+32 + 21 = 53 (0110101)
+32 + 22 = 54 (0110110)
+32 + 23 = 55 (0110111)
+32 + 24 = 56 (0111000)
+32 + 25 = 57 (0111001)
+32 + 26 = 58 (0111010)
+32 + 27 = 59 (0111011)
+32 + 28 = 60 (0111100)
+32 + 29 = 61 (0111101)
+32 + 30 = 62 (0111110)
+32 + 31 = 63 (0111111)
+32 + 32 = 64 (1000000)
+32 + 33 = 65 (1000001)
+32 + 34 = 66 (1000010)
+32 + 35 = 67 (1000011)
+32 + 36 = 68 (1000100)
+32 + 37 = 69 (1000101)
+32 + 38 = 70 (1000110)
+32 + 39 = 71 (1000111)
+32 + 40 = 72 (1001000)
+32 + 41 = 73 (1001001)
+32 + 42 = 74 (1001010)
+32 + 43 = 75 (1001011)
+32 + 44 = 76 (1001100)
+32 + 45 = 77 (1001101)
+32 + 46 = 78 (1001110)
+32 + 47 = 79 (1001111)
+32 + 48 = 80 (1010000)
+32 + 49 = 81 (1010001)
+32 + 50 = 82 (1010010)
+32 + 51 = 83 (1010011)
+32 + 52 = 84 (1010100)
+32 + 53 = 85 (1010101)
+32 + 54 = 86 (1010110)
+32 + 55 = 87 (1010111)
+32 + 56 = 88 (1011000)
+32 + 57 = 89 (1011001)
+32 + 58 = 90 (1011010)
+32 + 59 = 91 (1011011)
+32 + 60 = 92 (1011100)
+32 + 61 = 93 (1011101)
+32 + 62 = 94 (1011110)
+32 + 63 = 95 (1011111)
+33 + 0 = 33 (0100001)
+33 + 1 = 34 (0100010)
+33 + 2 = 35 (0100011)
+33 + 3 = 36 (0100100)
+33 + 4 = 37 (0100101)
+33 + 5 = 38 (0100110)
+33 + 6 = 39 (0100111)
+33 + 7 = 40 (0101000)
+33 + 8 = 41 (0101001)
+33 + 9 = 42 (0101010)
+33 + 10 = 43 (0101011)
+33 + 11 = 44 (0101100)
+33 + 12 = 45 (0101101)
+33 + 13 = 46 (0101110)
+33 + 14 = 47 (0101111)
+33 + 15 = 48 (0110000)
+33 + 16 = 49 (0110001)
+33 + 17 = 50 (0110010)
+33 + 18 = 51 (0110011)
+33 + 19 = 52 (0110100)
+33 + 20 = 53 (0110101)
+33 + 21 = 54 (0110110)
+33 + 22 = 55 (0110111)
+33 + 23 = 56 (0111000)
+33 + 24 = 57 (0111001)
+33 + 25 = 58 (0111010)
+33 + 26 = 59 (0111011)
+33 + 27 = 60 (0111100)
+33 + 28 = 61 (0111101)
+33 + 29 = 62 (0111110)
+33 + 30 = 63 (0111111)
+33 + 31 = 64 (1000000)
+33 + 32 = 65 (1000001)
+33 + 33 = 66 (1000010)
+33 + 34 = 67 (1000011)
+33 + 35 = 68 (1000100)
+33 + 36 = 69 (1000101)
+33 + 37 = 70 (1000110)
+33 + 38 = 71 (1000111)
+33 + 39 = 72 (1001000)
+33 + 40 = 73 (1001001)
+33 + 41 = 74 (1001010)
+33 + 42 = 75 (1001011)
+33 + 43 = 76 (1001100)
+33 + 44 = 77 (1001101)
+33 + 45 = 78 (1001110)
+33 + 46 = 79 (1001111)
+33 + 47 = 80 (1010000)
+33 + 48 = 81 (1010001)
+33 + 49 = 82 (1010010)
+33 + 50 = 83 (1010011)
+33 + 51 = 84 (1010100)
+33 + 52 = 85 (1010101)
+33 + 53 = 86 (1010110)
+33 + 54 = 87 (1010111)
+33 + 55 = 88 (1011000)
+33 + 56 = 89 (1011001)
+33 + 57 = 90 (1011010)
+33 + 58 = 91 (1011011)
+33 + 59 = 92 (1011100)
+33 + 60 = 93 (1011101)
+33 + 61 = 94 (1011110)
+33 + 62 = 95 (1011111)
+33 + 63 = 96 (1100000)
+34 + 0 = 34 (0100010)
+34 + 1 = 35 (0100011)
+34 + 2 = 36 (0100100)
+34 + 3 = 37 (0100101)
+34 + 4 = 38 (0100110)
+34 + 5 = 39 (0100111)
+34 + 6 = 40 (0101000)
+34 + 7 = 41 (0101001)
+34 + 8 = 42 (0101010)
+34 + 9 = 43 (0101011)
+34 + 10 = 44 (0101100)
+34 + 11 = 45 (0101101)
+34 + 12 = 46 (0101110)
+34 + 13 = 47 (0101111)
+34 + 14 = 48 (0110000)
+34 + 15 = 49 (0110001)
+34 + 16 = 50 (0110010)
+34 + 17 = 51 (0110011)
+34 + 18 = 52 (0110100)
+34 + 19 = 53 (0110101)
+34 + 20 = 54 (0110110)
+34 + 21 = 55 (0110111)
+34 + 22 = 56 (0111000)
+34 + 23 = 57 (0111001)
+34 + 24 = 58 (0111010)
+34 + 25 = 59 (0111011)
+34 + 26 = 60 (0111100)
+34 + 27 = 61 (0111101)
+34 + 28 = 62 (0111110)
+34 + 29 = 63 (0111111)
+34 + 30 = 64 (1000000)
+34 + 31 = 65 (1000001)
+34 + 32 = 66 (1000010)
+34 + 33 = 67 (1000011)
+34 + 34 = 68 (1000100)
+34 + 35 = 69 (1000101)
+34 + 36 = 70 (1000110)
+34 + 37 = 71 (1000111)
+34 + 38 = 72 (1001000)
+34 + 39 = 73 (1001001)
+34 + 40 = 74 (1001010)
+34 + 41 = 75 (1001011)
+34 + 42 = 76 (1001100)
+34 + 43 = 77 (1001101)
+34 + 44 = 78 (1001110)
+34 + 45 = 79 (1001111)
+34 + 46 = 80 (1010000)
+34 + 47 = 81 (1010001)
+34 + 48 = 82 (1010010)
+34 + 49 = 83 (1010011)
+34 + 50 = 84 (1010100)
+34 + 51 = 85 (1010101)
+34 + 52 = 86 (1010110)
+34 + 53 = 87 (1010111)
+34 + 54 = 88 (1011000)
+34 + 55 = 89 (1011001)
+34 + 56 = 90 (1011010)
+34 + 57 = 91 (1011011)
+34 + 58 = 92 (1011100)
+34 + 59 = 93 (1011101)
+34 + 60 = 94 (1011110)
+34 + 61 = 95 (1011111)
+34 + 62 = 96 (1100000)
+34 + 63 = 97 (1100001)
+35 + 0 = 35 (0100011)
+35 + 1 = 36 (0100100)
+35 + 2 = 37 (0100101)
+35 + 3 = 38 (0100110)
+35 + 4 = 39 (0100111)
+35 + 5 = 40 (0101000)
+35 + 6 = 41 (0101001)
+35 + 7 = 42 (0101010)
+35 + 8 = 43 (0101011)
+35 + 9 = 44 (0101100)
+35 + 10 = 45 (0101101)
+35 + 11 = 46 (0101110)
+35 + 12 = 47 (0101111)
+35 + 13 = 48 (0110000)
+35 + 14 = 49 (0110001)
+35 + 15 = 50 (0110010)
+35 + 16 = 51 (0110011)
+35 + 17 = 52 (0110100)
+35 + 18 = 53 (0110101)
+35 + 19 = 54 (0110110)
+35 + 20 = 55 (0110111)
+35 + 21 = 56 (0111000)
+35 + 22 = 57 (0111001)
+35 + 23 = 58 (0111010)
+35 + 24 = 59 (0111011)
+35 + 25 = 60 (0111100)
+35 + 26 = 61 (0111101)
+35 + 27 = 62 (0111110)
+35 + 28 = 63 (0111111)
+35 + 29 = 64 (1000000)
+35 + 30 = 65 (1000001)
+35 + 31 = 66 (1000010)
+35 + 32 = 67 (1000011)
+35 + 33 = 68 (1000100)
+35 + 34 = 69 (1000101)
+35 + 35 = 70 (1000110)
+35 + 36 = 71 (1000111)
+35 + 37 = 72 (1001000)
+35 + 38 = 73 (1001001)
+35 + 39 = 74 (1001010)
+35 + 40 = 75 (1001011)
+35 + 41 = 76 (1001100)
+35 + 42 = 77 (1001101)
+35 + 43 = 78 (1001110)
+35 + 44 = 79 (1001111)
+35 + 45 = 80 (1010000)
+35 + 46 = 81 (1010001)
+35 + 47 = 82 (1010010)
+35 + 48 = 83 (1010011)
+35 + 49 = 84 (1010100)
+35 + 50 = 85 (1010101)
+35 + 51 = 86 (1010110)
+35 + 52 = 87 (1010111)
+35 + 53 = 88 (1011000)
+35 + 54 = 89 (1011001)
+35 + 55 = 90 (1011010)
+35 + 56 = 91 (1011011)
+35 + 57 = 92 (1011100)
+35 + 58 = 93 (1011101)
+35 + 59 = 94 (1011110)
+35 + 60 = 95 (1011111)
+35 + 61 = 96 (1100000)
+35 + 62 = 97 (1100001)
+35 + 63 = 98 (1100010)
+36 + 0 = 36 (0100100)
+36 + 1 = 37 (0100101)
+36 + 2 = 38 (0100110)
+36 + 3 = 39 (0100111)
+36 + 4 = 40 (0101000)
+36 + 5 = 41 (0101001)
+36 + 6 = 42 (0101010)
+36 + 7 = 43 (0101011)
+36 + 8 = 44 (0101100)
+36 + 9 = 45 (0101101)
+36 + 10 = 46 (0101110)
+36 + 11 = 47 (0101111)
+36 + 12 = 48 (0110000)
+36 + 13 = 49 (0110001)
+36 + 14 = 50 (0110010)
+36 + 15 = 51 (0110011)
+36 + 16 = 52 (0110100)
+36 + 17 = 53 (0110101)
+36 + 18 = 54 (0110110)
+36 + 19 = 55 (0110111)
+36 + 20 = 56 (0111000)
+36 + 21 = 57 (0111001)
+36 + 22 = 58 (0111010)
+36 + 23 = 59 (0111011)
+36 + 24 = 60 (0111100)
+36 + 25 = 61 (0111101)
+36 + 26 = 62 (0111110)
+36 + 27 = 63 (0111111)
+36 + 28 = 64 (1000000)
+36 + 29 = 65 (1000001)
+36 + 30 = 66 (1000010)
+36 + 31 = 67 (1000011)
+36 + 32 = 68 (1000100)
+36 + 33 = 69 (1000101)
+36 + 34 = 70 (1000110)
+36 + 35 = 71 (1000111)
+36 + 36 = 72 (1001000)
+36 + 37 = 73 (1001001)
+36 + 38 = 74 (1001010)
+36 + 39 = 75 (1001011)
+36 + 40 = 76 (1001100)
+36 + 41 = 77 (1001101)
+36 + 42 = 78 (1001110)
+36 + 43 = 79 (1001111)
+36 + 44 = 80 (1010000)
+36 + 45 = 81 (1010001)
+36 + 46 = 82 (1010010)
+36 + 47 = 83 (1010011)
+36 + 48 = 84 (1010100)
+36 + 49 = 85 (1010101)
+36 + 50 = 86 (1010110)
+36 + 51 = 87 (1010111)
+36 + 52 = 88 (1011000)
+36 + 53 = 89 (1011001)
+36 + 54 = 90 (1011010)
+36 + 55 = 91 (1011011)
+36 + 56 = 92 (1011100)
+36 + 57 = 93 (1011101)
+36 + 58 = 94 (1011110)
+36 + 59 = 95 (1011111)
+36 + 60 = 96 (1100000)
+36 + 61 = 97 (1100001)
+36 + 62 = 98 (1100010)
+36 + 63 = 99 (1100011)
+37 + 0 = 37 (0100101)
+37 + 1 = 38 (0100110)
+37 + 2 = 39 (0100111)
+37 + 3 = 40 (0101000)
+37 + 4 = 41 (0101001)
+37 + 5 = 42 (0101010)
+37 + 6 = 43 (0101011)
+37 + 7 = 44 (0101100)
+37 + 8 = 45 (0101101)
+37 + 9 = 46 (0101110)
+37 + 10 = 47 (0101111)
+37 + 11 = 48 (0110000)
+37 + 12 = 49 (0110001)
+37 + 13 = 50 (0110010)
+37 + 14 = 51 (0110011)
+37 + 15 = 52 (0110100)
+37 + 16 = 53 (0110101)
+37 + 17 = 54 (0110110)
+37 + 18 = 55 (0110111)
+37 + 19 = 56 (0111000)
+37 + 20 = 57 (0111001)
+37 + 21 = 58 (0111010)
+37 + 22 = 59 (0111011)
+37 + 23 = 60 (0111100)
+37 + 24 = 61 (0111101)
+37 + 25 = 62 (0111110)
+37 + 26 = 63 (0111111)
+37 + 27 = 64 (1000000)
+37 + 28 = 65 (1000001)
+37 + 29 = 66 (1000010)
+37 + 30 = 67 (1000011)
+37 + 31 = 68 (1000100)
+37 + 32 = 69 (1000101)
+37 + 33 = 70 (1000110)
+37 + 34 = 71 (1000111)
+37 + 35 = 72 (1001000)
+37 + 36 = 73 (1001001)
+37 + 37 = 74 (1001010)
+37 + 38 = 75 (1001011)
+37 + 39 = 76 (1001100)
+37 + 40 = 77 (1001101)
+37 + 41 = 78 (1001110)
+37 + 42 = 79 (1001111)
+37 + 43 = 80 (1010000)
+37 + 44 = 81 (1010001)
+37 + 45 = 82 (1010010)
+37 + 46 = 83 (1010011)
+37 + 47 = 84 (1010100)
+37 + 48 = 85 (1010101)
+37 + 49 = 86 (1010110)
+37 + 50 = 87 (1010111)
+37 + 51 = 88 (1011000)
+37 + 52 = 89 (1011001)
+37 + 53 = 90 (1011010)
+37 + 54 = 91 (1011011)
+37 + 55 = 92 (1011100)
+37 + 56 = 93 (1011101)
+37 + 57 = 94 (1011110)
+37 + 58 = 95 (1011111)
+37 + 59 = 96 (1100000)
+37 + 60 = 97 (1100001)
+37 + 61 = 98 (1100010)
+37 + 62 = 99 (1100011)
+37 + 63 = 100 (1100100)
+38 + 0 = 38 (0100110)
+38 + 1 = 39 (0100111)
+38 + 2 = 40 (0101000)
+38 + 3 = 41 (0101001)
+38 + 4 = 42 (0101010)
+38 + 5 = 43 (0101011)
+38 + 6 = 44 (0101100)
+38 + 7 = 45 (0101101)
+38 + 8 = 46 (0101110)
+38 + 9 = 47 (0101111)
+38 + 10 = 48 (0110000)
+38 + 11 = 49 (0110001)
+38 + 12 = 50 (0110010)
+38 + 13 = 51 (0110011)
+38 + 14 = 52 (0110100)
+38 + 15 = 53 (0110101)
+38 + 16 = 54 (0110110)
+38 + 17 = 55 (0110111)
+38 + 18 = 56 (0111000)
+38 + 19 = 57 (0111001)
+38 + 20 = 58 (0111010)
+38 + 21 = 59 (0111011)
+38 + 22 = 60 (0111100)
+38 + 23 = 61 (0111101)
+38 + 24 = 62 (0111110)
+38 + 25 = 63 (0111111)
+38 + 26 = 64 (1000000)
+38 + 27 = 65 (1000001)
+38 + 28 = 66 (1000010)
+38 + 29 = 67 (1000011)
+38 + 30 = 68 (1000100)
+38 + 31 = 69 (1000101)
+38 + 32 = 70 (1000110)
+38 + 33 = 71 (1000111)
+38 + 34 = 72 (1001000)
+38 + 35 = 73 (1001001)
+38 + 36 = 74 (1001010)
+38 + 37 = 75 (1001011)
+38 + 38 = 76 (1001100)
+38 + 39 = 77 (1001101)
+38 + 40 = 78 (1001110)
+38 + 41 = 79 (1001111)
+38 + 42 = 80 (1010000)
+38 + 43 = 81 (1010001)
+38 + 44 = 82 (1010010)
+38 + 45 = 83 (1010011)
+38 + 46 = 84 (1010100)
+38 + 47 = 85 (1010101)
+38 + 48 = 86 (1010110)
+38 + 49 = 87 (1010111)
+38 + 50 = 88 (1011000)
+38 + 51 = 89 (1011001)
+38 + 52 = 90 (1011010)
+38 + 53 = 91 (1011011)
+38 + 54 = 92 (1011100)
+38 + 55 = 93 (1011101)
+38 + 56 = 94 (1011110)
+38 + 57 = 95 (1011111)
+38 + 58 = 96 (1100000)
+38 + 59 = 97 (1100001)
+38 + 60 = 98 (1100010)
+38 + 61 = 99 (1100011)
+38 + 62 = 100 (1100100)
+38 + 63 = 101 (1100101)
+39 + 0 = 39 (0100111)
+39 + 1 = 40 (0101000)
+39 + 2 = 41 (0101001)
+39 + 3 = 42 (0101010)
+39 + 4 = 43 (0101011)
+39 + 5 = 44 (0101100)
+39 + 6 = 45 (0101101)
+39 + 7 = 46 (0101110)
+39 + 8 = 47 (0101111)
+39 + 9 = 48 (0110000)
+39 + 10 = 49 (0110001)
+39 + 11 = 50 (0110010)
+39 + 12 = 51 (0110011)
+39 + 13 = 52 (0110100)
+39 + 14 = 53 (0110101)
+39 + 15 = 54 (0110110)
+39 + 16 = 55 (0110111)
+39 + 17 = 56 (0111000)
+39 + 18 = 57 (0111001)
+39 + 19 = 58 (0111010)
+39 + 20 = 59 (0111011)
+39 + 21 = 60 (0111100)
+39 + 22 = 61 (0111101)
+39 + 23 = 62 (0111110)
+39 + 24 = 63 (0111111)
+39 + 25 = 64 (1000000)
+39 + 26 = 65 (1000001)
+39 + 27 = 66 (1000010)
+39 + 28 = 67 (1000011)
+39 + 29 = 68 (1000100)
+39 + 30 = 69 (1000101)
+39 + 31 = 70 (1000110)
+39 + 32 = 71 (1000111)
+39 + 33 = 72 (1001000)
+39 + 34 = 73 (1001001)
+39 + 35 = 74 (1001010)
+39 + 36 = 75 (1001011)
+39 + 37 = 76 (1001100)
+39 + 38 = 77 (1001101)
+39 + 39 = 78 (1001110)
+39 + 40 = 79 (1001111)
+39 + 41 = 80 (1010000)
+39 + 42 = 81 (1010001)
+39 + 43 = 82 (1010010)
+39 + 44 = 83 (1010011)
+39 + 45 = 84 (1010100)
+39 + 46 = 85 (1010101)
+39 + 47 = 86 (1010110)
+39 + 48 = 87 (1010111)
+39 + 49 = 88 (1011000)
+39 + 50 = 89 (1011001)
+39 + 51 = 90 (1011010)
+39 + 52 = 91 (1011011)
+39 + 53 = 92 (1011100)
+39 + 54 = 93 (1011101)
+39 + 55 = 94 (1011110)
+39 + 56 = 95 (1011111)
+39 + 57 = 96 (1100000)
+39 + 58 = 97 (1100001)
+39 + 59 = 98 (1100010)
+39 + 60 = 99 (1100011)
+39 + 61 = 100 (1100100)
+39 + 62 = 101 (1100101)
+39 + 63 = 102 (1100110)
+40 + 0 = 40 (0101000)
+40 + 1 = 41 (0101001)
+40 + 2 = 42 (0101010)
+40 + 3 = 43 (0101011)
+40 + 4 = 44 (0101100)
+40 + 5 = 45 (0101101)
+40 + 6 = 46 (0101110)
+40 + 7 = 47 (0101111)
+40 + 8 = 48 (0110000)
+40 + 9 = 49 (0110001)
+40 + 10 = 50 (0110010)
+40 + 11 = 51 (0110011)
+40 + 12 = 52 (0110100)
+40 + 13 = 53 (0110101)
+40 + 14 = 54 (0110110)
+40 + 15 = 55 (0110111)
+40 + 16 = 56 (0111000)
+40 + 17 = 57 (0111001)
+40 + 18 = 58 (0111010)
+40 + 19 = 59 (0111011)
+40 + 20 = 60 (0111100)
+40 + 21 = 61 (0111101)
+40 + 22 = 62 (0111110)
+40 + 23 = 63 (0111111)
+40 + 24 = 64 (1000000)
+40 + 25 = 65 (1000001)
+40 + 26 = 66 (1000010)
+40 + 27 = 67 (1000011)
+40 + 28 = 68 (1000100)
+40 + 29 = 69 (1000101)
+40 + 30 = 70 (1000110)
+40 + 31 = 71 (1000111)
+40 + 32 = 72 (1001000)
+40 + 33 = 73 (1001001)
+40 + 34 = 74 (1001010)
+40 + 35 = 75 (1001011)
+40 + 36 = 76 (1001100)
+40 + 37 = 77 (1001101)
+40 + 38 = 78 (1001110)
+40 + 39 = 79 (1001111)
+40 + 40 = 80 (1010000)
+40 + 41 = 81 (1010001)
+40 + 42 = 82 (1010010)
+40 + 43 = 83 (1010011)
+40 + 44 = 84 (1010100)
+40 + 45 = 85 (1010101)
+40 + 46 = 86 (1010110)
+40 + 47 = 87 (1010111)
+40 + 48 = 88 (1011000)
+40 + 49 = 89 (1011001)
+40 + 50 = 90 (1011010)
+40 + 51 = 91 (1011011)
+40 + 52 = 92 (1011100)
+40 + 53 = 93 (1011101)
+40 + 54 = 94 (1011110)
+40 + 55 = 95 (1011111)
+40 + 56 = 96 (1100000)
+40 + 57 = 97 (1100001)
+40 + 58 = 98 (1100010)
+40 + 59 = 99 (1100011)
+40 + 60 = 100 (1100100)
+40 + 61 = 101 (1100101)
+40 + 62 = 102 (1100110)
+40 + 63 = 103 (1100111)
+41 + 0 = 41 (0101001)
+41 + 1 = 42 (0101010)
+41 + 2 = 43 (0101011)
+41 + 3 = 44 (0101100)
+41 + 4 = 45 (0101101)
+41 + 5 = 46 (0101110)
+41 + 6 = 47 (0101111)
+41 + 7 = 48 (0110000)
+41 + 8 = 49 (0110001)
+41 + 9 = 50 (0110010)
+41 + 10 = 51 (0110011)
+41 + 11 = 52 (0110100)
+41 + 12 = 53 (0110101)
+41 + 13 = 54 (0110110)
+41 + 14 = 55 (0110111)
+41 + 15 = 56 (0111000)
+41 + 16 = 57 (0111001)
+41 + 17 = 58 (0111010)
+41 + 18 = 59 (0111011)
+41 + 19 = 60 (0111100)
+41 + 20 = 61 (0111101)
+41 + 21 = 62 (0111110)
+41 + 22 = 63 (0111111)
+41 + 23 = 64 (1000000)
+41 + 24 = 65 (1000001)
+41 + 25 = 66 (1000010)
+41 + 26 = 67 (1000011)
+41 + 27 = 68 (1000100)
+41 + 28 = 69 (1000101)
+41 + 29 = 70 (1000110)
+41 + 30 = 71 (1000111)
+41 + 31 = 72 (1001000)
+41 + 32 = 73 (1001001)
+41 + 33 = 74 (1001010)
+41 + 34 = 75 (1001011)
+41 + 35 = 76 (1001100)
+41 + 36 = 77 (1001101)
+41 + 37 = 78 (1001110)
+41 + 38 = 79 (1001111)
+41 + 39 = 80 (1010000)
+41 + 40 = 81 (1010001)
+41 + 41 = 82 (1010010)
+41 + 42 = 83 (1010011)
+41 + 43 = 84 (1010100)
+41 + 44 = 85 (1010101)
+41 + 45 = 86 (1010110)
+41 + 46 = 87 (1010111)
+41 + 47 = 88 (1011000)
+41 + 48 = 89 (1011001)
+41 + 49 = 90 (1011010)
+41 + 50 = 91 (1011011)
+41 + 51 = 92 (1011100)
+41 + 52 = 93 (1011101)
+41 + 53 = 94 (1011110)
+41 + 54 = 95 (1011111)
+41 + 55 = 96 (1100000)
+41 + 56 = 97 (1100001)
+41 + 57 = 98 (1100010)
+41 + 58 = 99 (1100011)
+41 + 59 = 100 (1100100)
+41 + 60 = 101 (1100101)
+41 + 61 = 102 (1100110)
+41 + 62 = 103 (1100111)
+41 + 63 = 104 (1101000)
+42 + 0 = 42 (0101010)
+42 + 1 = 43 (0101011)
+42 + 2 = 44 (0101100)
+42 + 3 = 45 (0101101)
+42 + 4 = 46 (0101110)
+42 + 5 = 47 (0101111)
+42 + 6 = 48 (0110000)
+42 + 7 = 49 (0110001)
+42 + 8 = 50 (0110010)
+42 + 9 = 51 (0110011)
+42 + 10 = 52 (0110100)
+42 + 11 = 53 (0110101)
+42 + 12 = 54 (0110110)
+42 + 13 = 55 (0110111)
+42 + 14 = 56 (0111000)
+42 + 15 = 57 (0111001)
+42 + 16 = 58 (0111010)
+42 + 17 = 59 (0111011)
+42 + 18 = 60 (0111100)
+42 + 19 = 61 (0111101)
+42 + 20 = 62 (0111110)
+42 + 21 = 63 (0111111)
+42 + 22 = 64 (1000000)
+42 + 23 = 65 (1000001)
+42 + 24 = 66 (1000010)
+42 + 25 = 67 (1000011)
+42 + 26 = 68 (1000100)
+42 + 27 = 69 (1000101)
+42 + 28 = 70 (1000110)
+42 + 29 = 71 (1000111)
+42 + 30 = 72 (1001000)
+42 + 31 = 73 (1001001)
+42 + 32 = 74 (1001010)
+42 + 33 = 75 (1001011)
+42 + 34 = 76 (1001100)
+42 + 35 = 77 (1001101)
+42 + 36 = 78 (1001110)
+42 + 37 = 79 (1001111)
+42 + 38 = 80 (1010000)
+42 + 39 = 81 (1010001)
+42 + 40 = 82 (1010010)
+42 + 41 = 83 (1010011)
+42 + 42 = 84 (1010100)
+42 + 43 = 85 (1010101)
+42 + 44 = 86 (1010110)
+42 + 45 = 87 (1010111)
+42 + 46 = 88 (1011000)
+42 + 47 = 89 (1011001)
+42 + 48 = 90 (1011010)
+42 + 49 = 91 (1011011)
+42 + 50 = 92 (1011100)
+42 + 51 = 93 (1011101)
+42 + 52 = 94 (1011110)
+42 + 53 = 95 (1011111)
+42 + 54 = 96 (1100000)
+42 + 55 = 97 (1100001)
+42 + 56 = 98 (1100010)
+42 + 57 = 99 (1100011)
+42 + 58 = 100 (1100100)
+42 + 59 = 101 (1100101)
+42 + 60 = 102 (1100110)
+42 + 61 = 103 (1100111)
+42 + 62 = 104 (1101000)
+42 + 63 = 105 (1101001)
+43 + 0 = 43 (0101011)
+43 + 1 = 44 (0101100)
+43 + 2 = 45 (0101101)
+43 + 3 = 46 (0101110)
+43 + 4 = 47 (0101111)
+43 + 5 = 48 (0110000)
+43 + 6 = 49 (0110001)
+43 + 7 = 50 (0110010)
+43 + 8 = 51 (0110011)
+43 + 9 = 52 (0110100)
+43 + 10 = 53 (0110101)
+43 + 11 = 54 (0110110)
+43 + 12 = 55 (0110111)
+43 + 13 = 56 (0111000)
+43 + 14 = 57 (0111001)
+43 + 15 = 58 (0111010)
+43 + 16 = 59 (0111011)
+43 + 17 = 60 (0111100)
+43 + 18 = 61 (0111101)
+43 + 19 = 62 (0111110)
+43 + 20 = 63 (0111111)
+43 + 21 = 64 (1000000)
+43 + 22 = 65 (1000001)
+43 + 23 = 66 (1000010)
+43 + 24 = 67 (1000011)
+43 + 25 = 68 (1000100)
+43 + 26 = 69 (1000101)
+43 + 27 = 70 (1000110)
+43 + 28 = 71 (1000111)
+43 + 29 = 72 (1001000)
+43 + 30 = 73 (1001001)
+43 + 31 = 74 (1001010)
+43 + 32 = 75 (1001011)
+43 + 33 = 76 (1001100)
+43 + 34 = 77 (1001101)
+43 + 35 = 78 (1001110)
+43 + 36 = 79 (1001111)
+43 + 37 = 80 (1010000)
+43 + 38 = 81 (1010001)
+43 + 39 = 82 (1010010)
+43 + 40 = 83 (1010011)
+43 + 41 = 84 (1010100)
+43 + 42 = 85 (1010101)
+43 + 43 = 86 (1010110)
+43 + 44 = 87 (1010111)
+43 + 45 = 88 (1011000)
+43 + 46 = 89 (1011001)
+43 + 47 = 90 (1011010)
+43 + 48 = 91 (1011011)
+43 + 49 = 92 (1011100)
+43 + 50 = 93 (1011101)
+43 + 51 = 94 (1011110)
+43 + 52 = 95 (1011111)
+43 + 53 = 96 (1100000)
+43 + 54 = 97 (1100001)
+43 + 55 = 98 (1100010)
+43 + 56 = 99 (1100011)
+43 + 57 = 100 (1100100)
+43 + 58 = 101 (1100101)
+43 + 59 = 102 (1100110)
+43 + 60 = 103 (1100111)
+43 + 61 = 104 (1101000)
+43 + 62 = 105 (1101001)
+43 + 63 = 106 (1101010)
+44 + 0 = 44 (0101100)
+44 + 1 = 45 (0101101)
+44 + 2 = 46 (0101110)
+44 + 3 = 47 (0101111)
+44 + 4 = 48 (0110000)
+44 + 5 = 49 (0110001)
+44 + 6 = 50 (0110010)
+44 + 7 = 51 (0110011)
+44 + 8 = 52 (0110100)
+44 + 9 = 53 (0110101)
+44 + 10 = 54 (0110110)
+44 + 11 = 55 (0110111)
+44 + 12 = 56 (0111000)
+44 + 13 = 57 (0111001)
+44 + 14 = 58 (0111010)
+44 + 15 = 59 (0111011)
+44 + 16 = 60 (0111100)
+44 + 17 = 61 (0111101)
+44 + 18 = 62 (0111110)
+44 + 19 = 63 (0111111)
+44 + 20 = 64 (1000000)
+44 + 21 = 65 (1000001)
+44 + 22 = 66 (1000010)
+44 + 23 = 67 (1000011)
+44 + 24 = 68 (1000100)
+44 + 25 = 69 (1000101)
+44 + 26 = 70 (1000110)
+44 + 27 = 71 (1000111)
+44 + 28 = 72 (1001000)
+44 + 29 = 73 (1001001)
+44 + 30 = 74 (1001010)
+44 + 31 = 75 (1001011)
+44 + 32 = 76 (1001100)
+44 + 33 = 77 (1001101)
+44 + 34 = 78 (1001110)
+44 + 35 = 79 (1001111)
+44 + 36 = 80 (1010000)
+44 + 37 = 81 (1010001)
+44 + 38 = 82 (1010010)
+44 + 39 = 83 (1010011)
+44 + 40 = 84 (1010100)
+44 + 41 = 85 (1010101)
+44 + 42 = 86 (1010110)
+44 + 43 = 87 (1010111)
+44 + 44 = 88 (1011000)
+44 + 45 = 89 (1011001)
+44 + 46 = 90 (1011010)
+44 + 47 = 91 (1011011)
+44 + 48 = 92 (1011100)
+44 + 49 = 93 (1011101)
+44 + 50 = 94 (1011110)
+44 + 51 = 95 (1011111)
+44 + 52 = 96 (1100000)
+44 + 53 = 97 (1100001)
+44 + 54 = 98 (1100010)
+44 + 55 = 99 (1100011)
+44 + 56 = 100 (1100100)
+44 + 57 = 101 (1100101)
+44 + 58 = 102 (1100110)
+44 + 59 = 103 (1100111)
+44 + 60 = 104 (1101000)
+44 + 61 = 105 (1101001)
+44 + 62 = 106 (1101010)
+44 + 63 = 107 (1101011)
+45 + 0 = 45 (0101101)
+45 + 1 = 46 (0101110)
+45 + 2 = 47 (0101111)
+45 + 3 = 48 (0110000)
+45 + 4 = 49 (0110001)
+45 + 5 = 50 (0110010)
+45 + 6 = 51 (0110011)
+45 + 7 = 52 (0110100)
+45 + 8 = 53 (0110101)
+45 + 9 = 54 (0110110)
+45 + 10 = 55 (0110111)
+45 + 11 = 56 (0111000)
+45 + 12 = 57 (0111001)
+45 + 13 = 58 (0111010)
+45 + 14 = 59 (0111011)
+45 + 15 = 60 (0111100)
+45 + 16 = 61 (0111101)
+45 + 17 = 62 (0111110)
+45 + 18 = 63 (0111111)
+45 + 19 = 64 (1000000)
+45 + 20 = 65 (1000001)
+45 + 21 = 66 (1000010)
+45 + 22 = 67 (1000011)
+45 + 23 = 68 (1000100)
+45 + 24 = 69 (1000101)
+45 + 25 = 70 (1000110)
+45 + 26 = 71 (1000111)
+45 + 27 = 72 (1001000)
+45 + 28 = 73 (1001001)
+45 + 29 = 74 (1001010)
+45 + 30 = 75 (1001011)
+45 + 31 = 76 (1001100)
+45 + 32 = 77 (1001101)
+45 + 33 = 78 (1001110)
+45 + 34 = 79 (1001111)
+45 + 35 = 80 (1010000)
+45 + 36 = 81 (1010001)
+45 + 37 = 82 (1010010)
+45 + 38 = 83 (1010011)
+45 + 39 = 84 (1010100)
+45 + 40 = 85 (1010101)
+45 + 41 = 86 (1010110)
+45 + 42 = 87 (1010111)
+45 + 43 = 88 (1011000)
+45 + 44 = 89 (1011001)
+45 + 45 = 90 (1011010)
+45 + 46 = 91 (1011011)
+45 + 47 = 92 (1011100)
+45 + 48 = 93 (1011101)
+45 + 49 = 94 (1011110)
+45 + 50 = 95 (1011111)
+45 + 51 = 96 (1100000)
+45 + 52 = 97 (1100001)
+45 + 53 = 98 (1100010)
+45 + 54 = 99 (1100011)
+45 + 55 = 100 (1100100)
+45 + 56 = 101 (1100101)
+45 + 57 = 102 (1100110)
+45 + 58 = 103 (1100111)
+45 + 59 = 104 (1101000)
+45 + 60 = 105 (1101001)
+45 + 61 = 106 (1101010)
+45 + 62 = 107 (1101011)
+45 + 63 = 108 (1101100)
+46 + 0 = 46 (0101110)
+46 + 1 = 47 (0101111)
+46 + 2 = 48 (0110000)
+46 + 3 = 49 (0110001)
+46 + 4 = 50 (0110010)
+46 + 5 = 51 (0110011)
+46 + 6 = 52 (0110100)
+46 + 7 = 53 (0110101)
+46 + 8 = 54 (0110110)
+46 + 9 = 55 (0110111)
+46 + 10 = 56 (0111000)
+46 + 11 = 57 (0111001)
+46 + 12 = 58 (0111010)
+46 + 13 = 59 (0111011)
+46 + 14 = 60 (0111100)
+46 + 15 = 61 (0111101)
+46 + 16 = 62 (0111110)
+46 + 17 = 63 (0111111)
+46 + 18 = 64 (1000000)
+46 + 19 = 65 (1000001)
+46 + 20 = 66 (1000010)
+46 + 21 = 67 (1000011)
+46 + 22 = 68 (1000100)
+46 + 23 = 69 (1000101)
+46 + 24 = 70 (1000110)
+46 + 25 = 71 (1000111)
+46 + 26 = 72 (1001000)
+46 + 27 = 73 (1001001)
+46 + 28 = 74 (1001010)
+46 + 29 = 75 (1001011)
+46 + 30 = 76 (1001100)
+46 + 31 = 77 (1001101)
+46 + 32 = 78 (1001110)
+46 + 33 = 79 (1001111)
+46 + 34 = 80 (1010000)
+46 + 35 = 81 (1010001)
+46 + 36 = 82 (1010010)
+46 + 37 = 83 (1010011)
+46 + 38 = 84 (1010100)
+46 + 39 = 85 (1010101)
+46 + 40 = 86 (1010110)
+46 + 41 = 87 (1010111)
+46 + 42 = 88 (1011000)
+46 + 43 = 89 (1011001)
+46 + 44 = 90 (1011010)
+46 + 45 = 91 (1011011)
+46 + 46 = 92 (1011100)
+46 + 47 = 93 (1011101)
+46 + 48 = 94 (1011110)
+46 + 49 = 95 (1011111)
+46 + 50 = 96 (1100000)
+46 + 51 = 97 (1100001)
+46 + 52 = 98 (1100010)
+46 + 53 = 99 (1100011)
+46 + 54 = 100 (1100100)
+46 + 55 = 101 (1100101)
+46 + 56 = 102 (1100110)
+46 + 57 = 103 (1100111)
+46 + 58 = 104 (1101000)
+46 + 59 = 105 (1101001)
+46 + 60 = 106 (1101010)
+46 + 61 = 107 (1101011)
+46 + 62 = 108 (1101100)
+46 + 63 = 109 (1101101)
+47 + 0 = 47 (0101111)
+47 + 1 = 48 (0110000)
+47 + 2 = 49 (0110001)
+47 + 3 = 50 (0110010)
+47 + 4 = 51 (0110011)
+47 + 5 = 52 (0110100)
+47 + 6 = 53 (0110101)
+47 + 7 = 54 (0110110)
+47 + 8 = 55 (0110111)
+47 + 9 = 56 (0111000)
+47 + 10 = 57 (0111001)
+47 + 11 = 58 (0111010)
+47 + 12 = 59 (0111011)
+47 + 13 = 60 (0111100)
+47 + 14 = 61 (0111101)
+47 + 15 = 62 (0111110)
+47 + 16 = 63 (0111111)
+47 + 17 = 64 (1000000)
+47 + 18 = 65 (1000001)
+47 + 19 = 66 (1000010)
+47 + 20 = 67 (1000011)
+47 + 21 = 68 (1000100)
+47 + 22 = 69 (1000101)
+47 + 23 = 70 (1000110)
+47 + 24 = 71 (1000111)
+47 + 25 = 72 (1001000)
+47 + 26 = 73 (1001001)
+47 + 27 = 74 (1001010)
+47 + 28 = 75 (1001011)
+47 + 29 = 76 (1001100)
+47 + 30 = 77 (1001101)
+47 + 31 = 78 (1001110)
+47 + 32 = 79 (1001111)
+47 + 33 = 80 (1010000)
+47 + 34 = 81 (1010001)
+47 + 35 = 82 (1010010)
+47 + 36 = 83 (1010011)
+47 + 37 = 84 (1010100)
+47 + 38 = 85 (1010101)
+47 + 39 = 86 (1010110)
+47 + 40 = 87 (1010111)
+47 + 41 = 88 (1011000)
+47 + 42 = 89 (1011001)
+47 + 43 = 90 (1011010)
+47 + 44 = 91 (1011011)
+47 + 45 = 92 (1011100)
+47 + 46 = 93 (1011101)
+47 + 47 = 94 (1011110)
+47 + 48 = 95 (1011111)
+47 + 49 = 96 (1100000)
+47 + 50 = 97 (1100001)
+47 + 51 = 98 (1100010)
+47 + 52 = 99 (1100011)
+47 + 53 = 100 (1100100)
+47 + 54 = 101 (1100101)
+47 + 55 = 102 (1100110)
+47 + 56 = 103 (1100111)
+47 + 57 = 104 (1101000)
+47 + 58 = 105 (1101001)
+47 + 59 = 106 (1101010)
+47 + 60 = 107 (1101011)
+47 + 61 = 108 (1101100)
+47 + 62 = 109 (1101101)
+47 + 63 = 110 (1101110)
+48 + 0 = 48 (0110000)
+48 + 1 = 49 (0110001)
+48 + 2 = 50 (0110010)
+48 + 3 = 51 (0110011)
+48 + 4 = 52 (0110100)
+48 + 5 = 53 (0110101)
+48 + 6 = 54 (0110110)
+48 + 7 = 55 (0110111)
+48 + 8 = 56 (0111000)
+48 + 9 = 57 (0111001)
+48 + 10 = 58 (0111010)
+48 + 11 = 59 (0111011)
+48 + 12 = 60 (0111100)
+48 + 13 = 61 (0111101)
+48 + 14 = 62 (0111110)
+48 + 15 = 63 (0111111)
+48 + 16 = 64 (1000000)
+48 + 17 = 65 (1000001)
+48 + 18 = 66 (1000010)
+48 + 19 = 67 (1000011)
+48 + 20 = 68 (1000100)
+48 + 21 = 69 (1000101)
+48 + 22 = 70 (1000110)
+48 + 23 = 71 (1000111)
+48 + 24 = 72 (1001000)
+48 + 25 = 73 (1001001)
+48 + 26 = 74 (1001010)
+48 + 27 = 75 (1001011)
+48 + 28 = 76 (1001100)
+48 + 29 = 77 (1001101)
+48 + 30 = 78 (1001110)
+48 + 31 = 79 (1001111)
+48 + 32 = 80 (1010000)
+48 + 33 = 81 (1010001)
+48 + 34 = 82 (1010010)
+48 + 35 = 83 (1010011)
+48 + 36 = 84 (1010100)
+48 + 37 = 85 (1010101)
+48 + 38 = 86 (1010110)
+48 + 39 = 87 (1010111)
+48 + 40 = 88 (1011000)
+48 + 41 = 89 (1011001)
+48 + 42 = 90 (1011010)
+48 + 43 = 91 (1011011)
+48 + 44 = 92 (1011100)
+48 + 45 = 93 (1011101)
+48 + 46 = 94 (1011110)
+48 + 47 = 95 (1011111)
+48 + 48 = 96 (1100000)
+48 + 49 = 97 (1100001)
+48 + 50 = 98 (1100010)
+48 + 51 = 99 (1100011)
+48 + 52 = 100 (1100100)
+48 + 53 = 101 (1100101)
+48 + 54 = 102 (1100110)
+48 + 55 = 103 (1100111)
+48 + 56 = 104 (1101000)
+48 + 57 = 105 (1101001)
+48 + 58 = 106 (1101010)
+48 + 59 = 107 (1101011)
+48 + 60 = 108 (1101100)
+48 + 61 = 109 (1101101)
+48 + 62 = 110 (1101110)
+48 + 63 = 111 (1101111)
+49 + 0 = 49 (0110001)
+49 + 1 = 50 (0110010)
+49 + 2 = 51 (0110011)
+49 + 3 = 52 (0110100)
+49 + 4 = 53 (0110101)
+49 + 5 = 54 (0110110)
+49 + 6 = 55 (0110111)
+49 + 7 = 56 (0111000)
+49 + 8 = 57 (0111001)
+49 + 9 = 58 (0111010)
+49 + 10 = 59 (0111011)
+49 + 11 = 60 (0111100)
+49 + 12 = 61 (0111101)
+49 + 13 = 62 (0111110)
+49 + 14 = 63 (0111111)
+49 + 15 = 64 (1000000)
+49 + 16 = 65 (1000001)
+49 + 17 = 66 (1000010)
+49 + 18 = 67 (1000011)
+49 + 19 = 68 (1000100)
+49 + 20 = 69 (1000101)
+49 + 21 = 70 (1000110)
+49 + 22 = 71 (1000111)
+49 + 23 = 72 (1001000)
+49 + 24 = 73 (1001001)
+49 + 25 = 74 (1001010)
+49 + 26 = 75 (1001011)
+49 + 27 = 76 (1001100)
+49 + 28 = 77 (1001101)
+49 + 29 = 78 (1001110)
+49 + 30 = 79 (1001111)
+49 + 31 = 80 (1010000)
+49 + 32 = 81 (1010001)
+49 + 33 = 82 (1010010)
+49 + 34 = 83 (1010011)
+49 + 35 = 84 (1010100)
+49 + 36 = 85 (1010101)
+49 + 37 = 86 (1010110)
+49 + 38 = 87 (1010111)
+49 + 39 = 88 (1011000)
+49 + 40 = 89 (1011001)
+49 + 41 = 90 (1011010)
+49 + 42 = 91 (1011011)
+49 + 43 = 92 (1011100)
+49 + 44 = 93 (1011101)
+49 + 45 = 94 (1011110)
+49 + 46 = 95 (1011111)
+49 + 47 = 96 (1100000)
+49 + 48 = 97 (1100001)
+49 + 49 = 98 (1100010)
+49 + 50 = 99 (1100011)
+49 + 51 = 100 (1100100)
+49 + 52 = 101 (1100101)
+49 + 53 = 102 (1100110)
+49 + 54 = 103 (1100111)
+49 + 55 = 104 (1101000)
+49 + 56 = 105 (1101001)
+49 + 57 = 106 (1101010)
+49 + 58 = 107 (1101011)
+49 + 59 = 108 (1101100)
+49 + 60 = 109 (1101101)
+49 + 61 = 110 (1101110)
+49 + 62 = 111 (1101111)
+49 + 63 = 112 (1110000)
+50 + 0 = 50 (0110010)
+50 + 1 = 51 (0110011)
+50 + 2 = 52 (0110100)
+50 + 3 = 53 (0110101)
+50 + 4 = 54 (0110110)
+50 + 5 = 55 (0110111)
+50 + 6 = 56 (0111000)
+50 + 7 = 57 (0111001)
+50 + 8 = 58 (0111010)
+50 + 9 = 59 (0111011)
+50 + 10 = 60 (0111100)
+50 + 11 = 61 (0111101)
+50 + 12 = 62 (0111110)
+50 + 13 = 63 (0111111)
+50 + 14 = 64 (1000000)
+50 + 15 = 65 (1000001)
+50 + 16 = 66 (1000010)
+50 + 17 = 67 (1000011)
+50 + 18 = 68 (1000100)
+50 + 19 = 69 (1000101)
+50 + 20 = 70 (1000110)
+50 + 21 = 71 (1000111)
+50 + 22 = 72 (1001000)
+50 + 23 = 73 (1001001)
+50 + 24 = 74 (1001010)
+50 + 25 = 75 (1001011)
+50 + 26 = 76 (1001100)
+50 + 27 = 77 (1001101)
+50 + 28 = 78 (1001110)
+50 + 29 = 79 (1001111)
+50 + 30 = 80 (1010000)
+50 + 31 = 81 (1010001)
+50 + 32 = 82 (1010010)
+50 + 33 = 83 (1010011)
+50 + 34 = 84 (1010100)
+50 + 35 = 85 (1010101)
+50 + 36 = 86 (1010110)
+50 + 37 = 87 (1010111)
+50 + 38 = 88 (1011000)
+50 + 39 = 89 (1011001)
+50 + 40 = 90 (1011010)
+50 + 41 = 91 (1011011)
+50 + 42 = 92 (1011100)
+50 + 43 = 93 (1011101)
+50 + 44 = 94 (1011110)
+50 + 45 = 95 (1011111)
+50 + 46 = 96 (1100000)
+50 + 47 = 97 (1100001)
+50 + 48 = 98 (1100010)
+50 + 49 = 99 (1100011)
+50 + 50 = 100 (1100100)
+50 + 51 = 101 (1100101)
+50 + 52 = 102 (1100110)
+50 + 53 = 103 (1100111)
+50 + 54 = 104 (1101000)
+50 + 55 = 105 (1101001)
+50 + 56 = 106 (1101010)
+50 + 57 = 107 (1101011)
+50 + 58 = 108 (1101100)
+50 + 59 = 109 (1101101)
+50 + 60 = 110 (1101110)
+50 + 61 = 111 (1101111)
+50 + 62 = 112 (1110000)
+50 + 63 = 113 (1110001)
+51 + 0 = 51 (0110011)
+51 + 1 = 52 (0110100)
+51 + 2 = 53 (0110101)
+51 + 3 = 54 (0110110)
+51 + 4 = 55 (0110111)
+51 + 5 = 56 (0111000)
+51 + 6 = 57 (0111001)
+51 + 7 = 58 (0111010)
+51 + 8 = 59 (0111011)
+51 + 9 = 60 (0111100)
+51 + 10 = 61 (0111101)
+51 + 11 = 62 (0111110)
+51 + 12 = 63 (0111111)
+51 + 13 = 64 (1000000)
+51 + 14 = 65 (1000001)
+51 + 15 = 66 (1000010)
+51 + 16 = 67 (1000011)
+51 + 17 = 68 (1000100)
+51 + 18 = 69 (1000101)
+51 + 19 = 70 (1000110)
+51 + 20 = 71 (1000111)
+51 + 21 = 72 (1001000)
+51 + 22 = 73 (1001001)
+51 + 23 = 74 (1001010)
+51 + 24 = 75 (1001011)
+51 + 25 = 76 (1001100)
+51 + 26 = 77 (1001101)
+51 + 27 = 78 (1001110)
+51 + 28 = 79 (1001111)
+51 + 29 = 80 (1010000)
+51 + 30 = 81 (1010001)
+51 + 31 = 82 (1010010)
+51 + 32 = 83 (1010011)
+51 + 33 = 84 (1010100)
+51 + 34 = 85 (1010101)
+51 + 35 = 86 (1010110)
+51 + 36 = 87 (1010111)
+51 + 37 = 88 (1011000)
+51 + 38 = 89 (1011001)
+51 + 39 = 90 (1011010)
+51 + 40 = 91 (1011011)
+51 + 41 = 92 (1011100)
+51 + 42 = 93 (1011101)
+51 + 43 = 94 (1011110)
+51 + 44 = 95 (1011111)
+51 + 45 = 96 (1100000)
+51 + 46 = 97 (1100001)
+51 + 47 = 98 (1100010)
+51 + 48 = 99 (1100011)
+51 + 49 = 100 (1100100)
+51 + 50 = 101 (1100101)
+51 + 51 = 102 (1100110)
+51 + 52 = 103 (1100111)
+51 + 53 = 104 (1101000)
+51 + 54 = 105 (1101001)
+51 + 55 = 106 (1101010)
+51 + 56 = 107 (1101011)
+51 + 57 = 108 (1101100)
+51 + 58 = 109 (1101101)
+51 + 59 = 110 (1101110)
+51 + 60 = 111 (1101111)
+51 + 61 = 112 (1110000)
+51 + 62 = 113 (1110001)
+51 + 63 = 114 (1110010)
+52 + 0 = 52 (0110100)
+52 + 1 = 53 (0110101)
+52 + 2 = 54 (0110110)
+52 + 3 = 55 (0110111)
+52 + 4 = 56 (0111000)
+52 + 5 = 57 (0111001)
+52 + 6 = 58 (0111010)
+52 + 7 = 59 (0111011)
+52 + 8 = 60 (0111100)
+52 + 9 = 61 (0111101)
+52 + 10 = 62 (0111110)
+52 + 11 = 63 (0111111)
+52 + 12 = 64 (1000000)
+52 + 13 = 65 (1000001)
+52 + 14 = 66 (1000010)
+52 + 15 = 67 (1000011)
+52 + 16 = 68 (1000100)
+52 + 17 = 69 (1000101)
+52 + 18 = 70 (1000110)
+52 + 19 = 71 (1000111)
+52 + 20 = 72 (1001000)
+52 + 21 = 73 (1001001)
+52 + 22 = 74 (1001010)
+52 + 23 = 75 (1001011)
+52 + 24 = 76 (1001100)
+52 + 25 = 77 (1001101)
+52 + 26 = 78 (1001110)
+52 + 27 = 79 (1001111)
+52 + 28 = 80 (1010000)
+52 + 29 = 81 (1010001)
+52 + 30 = 82 (1010010)
+52 + 31 = 83 (1010011)
+52 + 32 = 84 (1010100)
+52 + 33 = 85 (1010101)
+52 + 34 = 86 (1010110)
+52 + 35 = 87 (1010111)
+52 + 36 = 88 (1011000)
+52 + 37 = 89 (1011001)
+52 + 38 = 90 (1011010)
+52 + 39 = 91 (1011011)
+52 + 40 = 92 (1011100)
+52 + 41 = 93 (1011101)
+52 + 42 = 94 (1011110)
+52 + 43 = 95 (1011111)
+52 + 44 = 96 (1100000)
+52 + 45 = 97 (1100001)
+52 + 46 = 98 (1100010)
+52 + 47 = 99 (1100011)
+52 + 48 = 100 (1100100)
+52 + 49 = 101 (1100101)
+52 + 50 = 102 (1100110)
+52 + 51 = 103 (1100111)
+52 + 52 = 104 (1101000)
+52 + 53 = 105 (1101001)
+52 + 54 = 106 (1101010)
+52 + 55 = 107 (1101011)
+52 + 56 = 108 (1101100)
+52 + 57 = 109 (1101101)
+52 + 58 = 110 (1101110)
+52 + 59 = 111 (1101111)
+52 + 60 = 112 (1110000)
+52 + 61 = 113 (1110001)
+52 + 62 = 114 (1110010)
+52 + 63 = 115 (1110011)
+53 + 0 = 53 (0110101)
+53 + 1 = 54 (0110110)
+53 + 2 = 55 (0110111)
+53 + 3 = 56 (0111000)
+53 + 4 = 57 (0111001)
+53 + 5 = 58 (0111010)
+53 + 6 = 59 (0111011)
+53 + 7 = 60 (0111100)
+53 + 8 = 61 (0111101)
+53 + 9 = 62 (0111110)
+53 + 10 = 63 (0111111)
+53 + 11 = 64 (1000000)
+53 + 12 = 65 (1000001)
+53 + 13 = 66 (1000010)
+53 + 14 = 67 (1000011)
+53 + 15 = 68 (1000100)
+53 + 16 = 69 (1000101)
+53 + 17 = 70 (1000110)
+53 + 18 = 71 (1000111)
+53 + 19 = 72 (1001000)
+53 + 20 = 73 (1001001)
+53 + 21 = 74 (1001010)
+53 + 22 = 75 (1001011)
+53 + 23 = 76 (1001100)
+53 + 24 = 77 (1001101)
+53 + 25 = 78 (1001110)
+53 + 26 = 79 (1001111)
+53 + 27 = 80 (1010000)
+53 + 28 = 81 (1010001)
+53 + 29 = 82 (1010010)
+53 + 30 = 83 (1010011)
+53 + 31 = 84 (1010100)
+53 + 32 = 85 (1010101)
+53 + 33 = 86 (1010110)
+53 + 34 = 87 (1010111)
+53 + 35 = 88 (1011000)
+53 + 36 = 89 (1011001)
+53 + 37 = 90 (1011010)
+53 + 38 = 91 (1011011)
+53 + 39 = 92 (1011100)
+53 + 40 = 93 (1011101)
+53 + 41 = 94 (1011110)
+53 + 42 = 95 (1011111)
+53 + 43 = 96 (1100000)
+53 + 44 = 97 (1100001)
+53 + 45 = 98 (1100010)
+53 + 46 = 99 (1100011)
+53 + 47 = 100 (1100100)
+53 + 48 = 101 (1100101)
+53 + 49 = 102 (1100110)
+53 + 50 = 103 (1100111)
+53 + 51 = 104 (1101000)
+53 + 52 = 105 (1101001)
+53 + 53 = 106 (1101010)
+53 + 54 = 107 (1101011)
+53 + 55 = 108 (1101100)
+53 + 56 = 109 (1101101)
+53 + 57 = 110 (1101110)
+53 + 58 = 111 (1101111)
+53 + 59 = 112 (1110000)
+53 + 60 = 113 (1110001)
+53 + 61 = 114 (1110010)
+53 + 62 = 115 (1110011)
+53 + 63 = 116 (1110100)
+54 + 0 = 54 (0110110)
+54 + 1 = 55 (0110111)
+54 + 2 = 56 (0111000)
+54 + 3 = 57 (0111001)
+54 + 4 = 58 (0111010)
+54 + 5 = 59 (0111011)
+54 + 6 = 60 (0111100)
+54 + 7 = 61 (0111101)
+54 + 8 = 62 (0111110)
+54 + 9 = 63 (0111111)
+54 + 10 = 64 (1000000)
+54 + 11 = 65 (1000001)
+54 + 12 = 66 (1000010)
+54 + 13 = 67 (1000011)
+54 + 14 = 68 (1000100)
+54 + 15 = 69 (1000101)
+54 + 16 = 70 (1000110)
+54 + 17 = 71 (1000111)
+54 + 18 = 72 (1001000)
+54 + 19 = 73 (1001001)
+54 + 20 = 74 (1001010)
+54 + 21 = 75 (1001011)
+54 + 22 = 76 (1001100)
+54 + 23 = 77 (1001101)
+54 + 24 = 78 (1001110)
+54 + 25 = 79 (1001111)
+54 + 26 = 80 (1010000)
+54 + 27 = 81 (1010001)
+54 + 28 = 82 (1010010)
+54 + 29 = 83 (1010011)
+54 + 30 = 84 (1010100)
+54 + 31 = 85 (1010101)
+54 + 32 = 86 (1010110)
+54 + 33 = 87 (1010111)
+54 + 34 = 88 (1011000)
+54 + 35 = 89 (1011001)
+54 + 36 = 90 (1011010)
+54 + 37 = 91 (1011011)
+54 + 38 = 92 (1011100)
+54 + 39 = 93 (1011101)
+54 + 40 = 94 (1011110)
+54 + 41 = 95 (1011111)
+54 + 42 = 96 (1100000)
+54 + 43 = 97 (1100001)
+54 + 44 = 98 (1100010)
+54 + 45 = 99 (1100011)
+54 + 46 = 100 (1100100)
+54 + 47 = 101 (1100101)
+54 + 48 = 102 (1100110)
+54 + 49 = 103 (1100111)
+54 + 50 = 104 (1101000)
+54 + 51 = 105 (1101001)
+54 + 52 = 106 (1101010)
+54 + 53 = 107 (1101011)
+54 + 54 = 108 (1101100)
+54 + 55 = 109 (1101101)
+54 + 56 = 110 (1101110)
+54 + 57 = 111 (1101111)
+54 + 58 = 112 (1110000)
+54 + 59 = 113 (1110001)
+54 + 60 = 114 (1110010)
+54 + 61 = 115 (1110011)
+54 + 62 = 116 (1110100)
+54 + 63 = 117 (1110101)
+55 + 0 = 55 (0110111)
+55 + 1 = 56 (0111000)
+55 + 2 = 57 (0111001)
+55 + 3 = 58 (0111010)
+55 + 4 = 59 (0111011)
+55 + 5 = 60 (0111100)
+55 + 6 = 61 (0111101)
+55 + 7 = 62 (0111110)
+55 + 8 = 63 (0111111)
+55 + 9 = 64 (1000000)
+55 + 10 = 65 (1000001)
+55 + 11 = 66 (1000010)
+55 + 12 = 67 (1000011)
+55 + 13 = 68 (1000100)
+55 + 14 = 69 (1000101)
+55 + 15 = 70 (1000110)
+55 + 16 = 71 (1000111)
+55 + 17 = 72 (1001000)
+55 + 18 = 73 (1001001)
+55 + 19 = 74 (1001010)
+55 + 20 = 75 (1001011)
+55 + 21 = 76 (1001100)
+55 + 22 = 77 (1001101)
+55 + 23 = 78 (1001110)
+55 + 24 = 79 (1001111)
+55 + 25 = 80 (1010000)
+55 + 26 = 81 (1010001)
+55 + 27 = 82 (1010010)
+55 + 28 = 83 (1010011)
+55 + 29 = 84 (1010100)
+55 + 30 = 85 (1010101)
+55 + 31 = 86 (1010110)
+55 + 32 = 87 (1010111)
+55 + 33 = 88 (1011000)
+55 + 34 = 89 (1011001)
+55 + 35 = 90 (1011010)
+55 + 36 = 91 (1011011)
+55 + 37 = 92 (1011100)
+55 + 38 = 93 (1011101)
+55 + 39 = 94 (1011110)
+55 + 40 = 95 (1011111)
+55 + 41 = 96 (1100000)
+55 + 42 = 97 (1100001)
+55 + 43 = 98 (1100010)
+55 + 44 = 99 (1100011)
+55 + 45 = 100 (1100100)
+55 + 46 = 101 (1100101)
+55 + 47 = 102 (1100110)
+55 + 48 = 103 (1100111)
+55 + 49 = 104 (1101000)
+55 + 50 = 105 (1101001)
+55 + 51 = 106 (1101010)
+55 + 52 = 107 (1101011)
+55 + 53 = 108 (1101100)
+55 + 54 = 109 (1101101)
+55 + 55 = 110 (1101110)
+55 + 56 = 111 (1101111)
+55 + 57 = 112 (1110000)
+55 + 58 = 113 (1110001)
+55 + 59 = 114 (1110010)
+55 + 60 = 115 (1110011)
+55 + 61 = 116 (1110100)
+55 + 62 = 117 (1110101)
+55 + 63 = 118 (1110110)
+56 + 0 = 56 (0111000)
+56 + 1 = 57 (0111001)
+56 + 2 = 58 (0111010)
+56 + 3 = 59 (0111011)
+56 + 4 = 60 (0111100)
+56 + 5 = 61 (0111101)
+56 + 6 = 62 (0111110)
+56 + 7 = 63 (0111111)
+56 + 8 = 64 (1000000)
+56 + 9 = 65 (1000001)
+56 + 10 = 66 (1000010)
+56 + 11 = 67 (1000011)
+56 + 12 = 68 (1000100)
+56 + 13 = 69 (1000101)
+56 + 14 = 70 (1000110)
+56 + 15 = 71 (1000111)
+56 + 16 = 72 (1001000)
+56 + 17 = 73 (1001001)
+56 + 18 = 74 (1001010)
+56 + 19 = 75 (1001011)
+56 + 20 = 76 (1001100)
+56 + 21 = 77 (1001101)
+56 + 22 = 78 (1001110)
+56 + 23 = 79 (1001111)
+56 + 24 = 80 (1010000)
+56 + 25 = 81 (1010001)
+56 + 26 = 82 (1010010)
+56 + 27 = 83 (1010011)
+56 + 28 = 84 (1010100)
+56 + 29 = 85 (1010101)
+56 + 30 = 86 (1010110)
+56 + 31 = 87 (1010111)
+56 + 32 = 88 (1011000)
+56 + 33 = 89 (1011001)
+56 + 34 = 90 (1011010)
+56 + 35 = 91 (1011011)
+56 + 36 = 92 (1011100)
+56 + 37 = 93 (1011101)
+56 + 38 = 94 (1011110)
+56 + 39 = 95 (1011111)
+56 + 40 = 96 (1100000)
+56 + 41 = 97 (1100001)
+56 + 42 = 98 (1100010)
+56 + 43 = 99 (1100011)
+56 + 44 = 100 (1100100)
+56 + 45 = 101 (1100101)
+56 + 46 = 102 (1100110)
+56 + 47 = 103 (1100111)
+56 + 48 = 104 (1101000)
+56 + 49 = 105 (1101001)
+56 + 50 = 106 (1101010)
+56 + 51 = 107 (1101011)
+56 + 52 = 108 (1101100)
+56 + 53 = 109 (1101101)
+56 + 54 = 110 (1101110)
+56 + 55 = 111 (1101111)
+56 + 56 = 112 (1110000)
+56 + 57 = 113 (1110001)
+56 + 58 = 114 (1110010)
+56 + 59 = 115 (1110011)
+56 + 60 = 116 (1110100)
+56 + 61 = 117 (1110101)
+56 + 62 = 118 (1110110)
+56 + 63 = 119 (1110111)
+57 + 0 = 57 (0111001)
+57 + 1 = 58 (0111010)
+57 + 2 = 59 (0111011)
+57 + 3 = 60 (0111100)
+57 + 4 = 61 (0111101)
+57 + 5 = 62 (0111110)
+57 + 6 = 63 (0111111)
+57 + 7 = 64 (1000000)
+57 + 8 = 65 (1000001)
+57 + 9 = 66 (1000010)
+57 + 10 = 67 (1000011)
+57 + 11 = 68 (1000100)
+57 + 12 = 69 (1000101)
+57 + 13 = 70 (1000110)
+57 + 14 = 71 (1000111)
+57 + 15 = 72 (1001000)
+57 + 16 = 73 (1001001)
+57 + 17 = 74 (1001010)
+57 + 18 = 75 (1001011)
+57 + 19 = 76 (1001100)
+57 + 20 = 77 (1001101)
+57 + 21 = 78 (1001110)
+57 + 22 = 79 (1001111)
+57 + 23 = 80 (1010000)
+57 + 24 = 81 (1010001)
+57 + 25 = 82 (1010010)
+57 + 26 = 83 (1010011)
+57 + 27 = 84 (1010100)
+57 + 28 = 85 (1010101)
+57 + 29 = 86 (1010110)
+57 + 30 = 87 (1010111)
+57 + 31 = 88 (1011000)
+57 + 32 = 89 (1011001)
+57 + 33 = 90 (1011010)
+57 + 34 = 91 (1011011)
+57 + 35 = 92 (1011100)
+57 + 36 = 93 (1011101)
+57 + 37 = 94 (1011110)
+57 + 38 = 95 (1011111)
+57 + 39 = 96 (1100000)
+57 + 40 = 97 (1100001)
+57 + 41 = 98 (1100010)
+57 + 42 = 99 (1100011)
+57 + 43 = 100 (1100100)
+57 + 44 = 101 (1100101)
+57 + 45 = 102 (1100110)
+57 + 46 = 103 (1100111)
+57 + 47 = 104 (1101000)
+57 + 48 = 105 (1101001)
+57 + 49 = 106 (1101010)
+57 + 50 = 107 (1101011)
+57 + 51 = 108 (1101100)
+57 + 52 = 109 (1101101)
+57 + 53 = 110 (1101110)
+57 + 54 = 111 (1101111)
+57 + 55 = 112 (1110000)
+57 + 56 = 113 (1110001)
+57 + 57 = 114 (1110010)
+57 + 58 = 115 (1110011)
+57 + 59 = 116 (1110100)
+57 + 60 = 117 (1110101)
+57 + 61 = 118 (1110110)
+57 + 62 = 119 (1110111)
+57 + 63 = 120 (1111000)
+58 + 0 = 58 (0111010)
+58 + 1 = 59 (0111011)
+58 + 2 = 60 (0111100)
+58 + 3 = 61 (0111101)
+58 + 4 = 62 (0111110)
+58 + 5 = 63 (0111111)
+58 + 6 = 64 (1000000)
+58 + 7 = 65 (1000001)
+58 + 8 = 66 (1000010)
+58 + 9 = 67 (1000011)
+58 + 10 = 68 (1000100)
+58 + 11 = 69 (1000101)
+58 + 12 = 70 (1000110)
+58 + 13 = 71 (1000111)
+58 + 14 = 72 (1001000)
+58 + 15 = 73 (1001001)
+58 + 16 = 74 (1001010)
+58 + 17 = 75 (1001011)
+58 + 18 = 76 (1001100)
+58 + 19 = 77 (1001101)
+58 + 20 = 78 (1001110)
+58 + 21 = 79 (1001111)
+58 + 22 = 80 (1010000)
+58 + 23 = 81 (1010001)
+58 + 24 = 82 (1010010)
+58 + 25 = 83 (1010011)
+58 + 26 = 84 (1010100)
+58 + 27 = 85 (1010101)
+58 + 28 = 86 (1010110)
+58 + 29 = 87 (1010111)
+58 + 30 = 88 (1011000)
+58 + 31 = 89 (1011001)
+58 + 32 = 90 (1011010)
+58 + 33 = 91 (1011011)
+58 + 34 = 92 (1011100)
+58 + 35 = 93 (1011101)
+58 + 36 = 94 (1011110)
+58 + 37 = 95 (1011111)
+58 + 38 = 96 (1100000)
+58 + 39 = 97 (1100001)
+58 + 40 = 98 (1100010)
+58 + 41 = 99 (1100011)
+58 + 42 = 100 (1100100)
+58 + 43 = 101 (1100101)
+58 + 44 = 102 (1100110)
+58 + 45 = 103 (1100111)
+58 + 46 = 104 (1101000)
+58 + 47 = 105 (1101001)
+58 + 48 = 106 (1101010)
+58 + 49 = 107 (1101011)
+58 + 50 = 108 (1101100)
+58 + 51 = 109 (1101101)
+58 + 52 = 110 (1101110)
+58 + 53 = 111 (1101111)
+58 + 54 = 112 (1110000)
+58 + 55 = 113 (1110001)
+58 + 56 = 114 (1110010)
+58 + 57 = 115 (1110011)
+58 + 58 = 116 (1110100)
+58 + 59 = 117 (1110101)
+58 + 60 = 118 (1110110)
+58 + 61 = 119 (1110111)
+58 + 62 = 120 (1111000)
+58 + 63 = 121 (1111001)
+59 + 0 = 59 (0111011)
+59 + 1 = 60 (0111100)
+59 + 2 = 61 (0111101)
+59 + 3 = 62 (0111110)
+59 + 4 = 63 (0111111)
+59 + 5 = 64 (1000000)
+59 + 6 = 65 (1000001)
+59 + 7 = 66 (1000010)
+59 + 8 = 67 (1000011)
+59 + 9 = 68 (1000100)
+59 + 10 = 69 (1000101)
+59 + 11 = 70 (1000110)
+59 + 12 = 71 (1000111)
+59 + 13 = 72 (1001000)
+59 + 14 = 73 (1001001)
+59 + 15 = 74 (1001010)
+59 + 16 = 75 (1001011)
+59 + 17 = 76 (1001100)
+59 + 18 = 77 (1001101)
+59 + 19 = 78 (1001110)
+59 + 20 = 79 (1001111)
+59 + 21 = 80 (1010000)
+59 + 22 = 81 (1010001)
+59 + 23 = 82 (1010010)
+59 + 24 = 83 (1010011)
+59 + 25 = 84 (1010100)
+59 + 26 = 85 (1010101)
+59 + 27 = 86 (1010110)
+59 + 28 = 87 (1010111)
+59 + 29 = 88 (1011000)
+59 + 30 = 89 (1011001)
+59 + 31 = 90 (1011010)
+59 + 32 = 91 (1011011)
+59 + 33 = 92 (1011100)
+59 + 34 = 93 (1011101)
+59 + 35 = 94 (1011110)
+59 + 36 = 95 (1011111)
+59 + 37 = 96 (1100000)
+59 + 38 = 97 (1100001)
+59 + 39 = 98 (1100010)
+59 + 40 = 99 (1100011)
+59 + 41 = 100 (1100100)
+59 + 42 = 101 (1100101)
+59 + 43 = 102 (1100110)
+59 + 44 = 103 (1100111)
+59 + 45 = 104 (1101000)
+59 + 46 = 105 (1101001)
+59 + 47 = 106 (1101010)
+59 + 48 = 107 (1101011)
+59 + 49 = 108 (1101100)
+59 + 50 = 109 (1101101)
+59 + 51 = 110 (1101110)
+59 + 52 = 111 (1101111)
+59 + 53 = 112 (1110000)
+59 + 54 = 113 (1110001)
+59 + 55 = 114 (1110010)
+59 + 56 = 115 (1110011)
+59 + 57 = 116 (1110100)
+59 + 58 = 117 (1110101)
+59 + 59 = 118 (1110110)
+59 + 60 = 119 (1110111)
+59 + 61 = 120 (1111000)
+59 + 62 = 121 (1111001)
+59 + 63 = 122 (1111010)
+60 + 0 = 60 (0111100)
+60 + 1 = 61 (0111101)
+60 + 2 = 62 (0111110)
+60 + 3 = 63 (0111111)
+60 + 4 = 64 (1000000)
+60 + 5 = 65 (1000001)
+60 + 6 = 66 (1000010)
+60 + 7 = 67 (1000011)
+60 + 8 = 68 (1000100)
+60 + 9 = 69 (1000101)
+60 + 10 = 70 (1000110)
+60 + 11 = 71 (1000111)
+60 + 12 = 72 (1001000)
+60 + 13 = 73 (1001001)
+60 + 14 = 74 (1001010)
+60 + 15 = 75 (1001011)
+60 + 16 = 76 (1001100)
+60 + 17 = 77 (1001101)
+60 + 18 = 78 (1001110)
+60 + 19 = 79 (1001111)
+60 + 20 = 80 (1010000)
+60 + 21 = 81 (1010001)
+60 + 22 = 82 (1010010)
+60 + 23 = 83 (1010011)
+60 + 24 = 84 (1010100)
+60 + 25 = 85 (1010101)
+60 + 26 = 86 (1010110)
+60 + 27 = 87 (1010111)
+60 + 28 = 88 (1011000)
+60 + 29 = 89 (1011001)
+60 + 30 = 90 (1011010)
+60 + 31 = 91 (1011011)
+60 + 32 = 92 (1011100)
+60 + 33 = 93 (1011101)
+60 + 34 = 94 (1011110)
+60 + 35 = 95 (1011111)
+60 + 36 = 96 (1100000)
+60 + 37 = 97 (1100001)
+60 + 38 = 98 (1100010)
+60 + 39 = 99 (1100011)
+60 + 40 = 100 (1100100)
+60 + 41 = 101 (1100101)
+60 + 42 = 102 (1100110)
+60 + 43 = 103 (1100111)
+60 + 44 = 104 (1101000)
+60 + 45 = 105 (1101001)
+60 + 46 = 106 (1101010)
+60 + 47 = 107 (1101011)
+60 + 48 = 108 (1101100)
+60 + 49 = 109 (1101101)
+60 + 50 = 110 (1101110)
+60 + 51 = 111 (1101111)
+60 + 52 = 112 (1110000)
+60 + 53 = 113 (1110001)
+60 + 54 = 114 (1110010)
+60 + 55 = 115 (1110011)
+60 + 56 = 116 (1110100)
+60 + 57 = 117 (1110101)
+60 + 58 = 118 (1110110)
+60 + 59 = 119 (1110111)
+60 + 60 = 120 (1111000)
+60 + 61 = 121 (1111001)
+60 + 62 = 122 (1111010)
+60 + 63 = 123 (1111011)
+61 + 0 = 61 (0111101)
+61 + 1 = 62 (0111110)
+61 + 2 = 63 (0111111)
+61 + 3 = 64 (1000000)
+61 + 4 = 65 (1000001)
+61 + 5 = 66 (1000010)
+61 + 6 = 67 (1000011)
+61 + 7 = 68 (1000100)
+61 + 8 = 69 (1000101)
+61 + 9 = 70 (1000110)
+61 + 10 = 71 (1000111)
+61 + 11 = 72 (1001000)
+61 + 12 = 73 (1001001)
+61 + 13 = 74 (1001010)
+61 + 14 = 75 (1001011)
+61 + 15 = 76 (1001100)
+61 + 16 = 77 (1001101)
+61 + 17 = 78 (1001110)
+61 + 18 = 79 (1001111)
+61 + 19 = 80 (1010000)
+61 + 20 = 81 (1010001)
+61 + 21 = 82 (1010010)
+61 + 22 = 83 (1010011)
+61 + 23 = 84 (1010100)
+61 + 24 = 85 (1010101)
+61 + 25 = 86 (1010110)
+61 + 26 = 87 (1010111)
+61 + 27 = 88 (1011000)
+61 + 28 = 89 (1011001)
+61 + 29 = 90 (1011010)
+61 + 30 = 91 (1011011)
+61 + 31 = 92 (1011100)
+61 + 32 = 93 (1011101)
+61 + 33 = 94 (1011110)
+61 + 34 = 95 (1011111)
+61 + 35 = 96 (1100000)
+61 + 36 = 97 (1100001)
+61 + 37 = 98 (1100010)
+61 + 38 = 99 (1100011)
+61 + 39 = 100 (1100100)
+61 + 40 = 101 (1100101)
+61 + 41 = 102 (1100110)
+61 + 42 = 103 (1100111)
+61 + 43 = 104 (1101000)
+61 + 44 = 105 (1101001)
+61 + 45 = 106 (1101010)
+61 + 46 = 107 (1101011)
+61 + 47 = 108 (1101100)
+61 + 48 = 109 (1101101)
+61 + 49 = 110 (1101110)
+61 + 50 = 111 (1101111)
+61 + 51 = 112 (1110000)
+61 + 52 = 113 (1110001)
+61 + 53 = 114 (1110010)
+61 + 54 = 115 (1110011)
+61 + 55 = 116 (1110100)
+61 + 56 = 117 (1110101)
+61 + 57 = 118 (1110110)
+61 + 58 = 119 (1110111)
+61 + 59 = 120 (1111000)
+61 + 60 = 121 (1111001)
+61 + 61 = 122 (1111010)
+61 + 62 = 123 (1111011)
+61 + 63 = 124 (1111100)
+62 + 0 = 62 (0111110)
+62 + 1 = 63 (0111111)
+62 + 2 = 64 (1000000)
+62 + 3 = 65 (1000001)
+62 + 4 = 66 (1000010)
+62 + 5 = 67 (1000011)
+62 + 6 = 68 (1000100)
+62 + 7 = 69 (1000101)
+62 + 8 = 70 (1000110)
+62 + 9 = 71 (1000111)
+62 + 10 = 72 (1001000)
+62 + 11 = 73 (1001001)
+62 + 12 = 74 (1001010)
+62 + 13 = 75 (1001011)
+62 + 14 = 76 (1001100)
+62 + 15 = 77 (1001101)
+62 + 16 = 78 (1001110)
+62 + 17 = 79 (1001111)
+62 + 18 = 80 (1010000)
+62 + 19 = 81 (1010001)
+62 + 20 = 82 (1010010)
+62 + 21 = 83 (1010011)
+62 + 22 = 84 (1010100)
+62 + 23 = 85 (1010101)
+62 + 24 = 86 (1010110)
+62 + 25 = 87 (1010111)
+62 + 26 = 88 (1011000)
+62 + 27 = 89 (1011001)
+62 + 28 = 90 (1011010)
+62 + 29 = 91 (1011011)
+62 + 30 = 92 (1011100)
+62 + 31 = 93 (1011101)
+62 + 32 = 94 (1011110)
+62 + 33 = 95 (1011111)
+62 + 34 = 96 (1100000)
+62 + 35 = 97 (1100001)
+62 + 36 = 98 (1100010)
+62 + 37 = 99 (1100011)
+62 + 38 = 100 (1100100)
+62 + 39 = 101 (1100101)
+62 + 40 = 102 (1100110)
+62 + 41 = 103 (1100111)
+62 + 42 = 104 (1101000)
+62 + 43 = 105 (1101001)
+62 + 44 = 106 (1101010)
+62 + 45 = 107 (1101011)
+62 + 46 = 108 (1101100)
+62 + 47 = 109 (1101101)
+62 + 48 = 110 (1101110)
+62 + 49 = 111 (1101111)
+62 + 50 = 112 (1110000)
+62 + 51 = 113 (1110001)
+62 + 52 = 114 (1110010)
+62 + 53 = 115 (1110011)
+62 + 54 = 116 (1110100)
+62 + 55 = 117 (1110101)
+62 + 56 = 118 (1110110)
+62 + 57 = 119 (1110111)
+62 + 58 = 120 (1111000)
+62 + 59 = 121 (1111001)
+62 + 60 = 122 (1111010)
+62 + 61 = 123 (1111011)
+62 + 62 = 124 (1111100)
+62 + 63 = 125 (1111101)
+63 + 0 = 63 (0111111)
+63 + 1 = 64 (1000000)
+63 + 2 = 65 (1000001)
+63 + 3 = 66 (1000010)
+63 + 4 = 67 (1000011)
+63 + 5 = 68 (1000100)
+63 + 6 = 69 (1000101)
+63 + 7 = 70 (1000110)
+63 + 8 = 71 (1000111)
+63 + 9 = 72 (1001000)
+63 + 10 = 73 (1001001)
+63 + 11 = 74 (1001010)
+63 + 12 = 75 (1001011)
+63 + 13 = 76 (1001100)
+63 + 14 = 77 (1001101)
+63 + 15 = 78 (1001110)
+63 + 16 = 79 (1001111)
+63 + 17 = 80 (1010000)
+63 + 18 = 81 (1010001)
+63 + 19 = 82 (1010010)
+63 + 20 = 83 (1010011)
+63 + 21 = 84 (1010100)
+63 + 22 = 85 (1010101)
+63 + 23 = 86 (1010110)
+63 + 24 = 87 (1010111)
+63 + 25 = 88 (1011000)
+63 + 26 = 89 (1011001)
+63 + 27 = 90 (1011010)
+63 + 28 = 91 (1011011)
+63 + 29 = 92 (1011100)
+63 + 30 = 93 (1011101)
+63 + 31 = 94 (1011110)
+63 + 32 = 95 (1011111)
+63 + 33 = 96 (1100000)
+63 + 34 = 97 (1100001)
+63 + 35 = 98 (1100010)
+63 + 36 = 99 (1100011)
+63 + 37 = 100 (1100100)
+63 + 38 = 101 (1100101)
+63 + 39 = 102 (1100110)
+63 + 40 = 103 (1100111)
+63 + 41 = 104 (1101000)
+63 + 42 = 105 (1101001)
+63 + 43 = 106 (1101010)
+63 + 44 = 107 (1101011)
+63 + 45 = 108 (1101100)
+63 + 46 = 109 (1101101)
+63 + 47 = 110 (1101110)
+63 + 48 = 111 (1101111)
+63 + 49 = 112 (1110000)
+63 + 50 = 113 (1110001)
+63 + 51 = 114 (1110010)
+63 + 52 = 115 (1110011)
+63 + 53 = 116 (1110100)
+63 + 54 = 117 (1110101)
+63 + 55 = 118 (1110110)
+63 + 56 = 119 (1110111)
+63 + 57 = 120 (1111000)
+63 + 58 = 121 (1111001)
+63 + 59 = 122 (1111010)
+63 + 60 = 123 (1111011)
+63 + 61 = 124 (1111100)
+63 + 62 = 125 (1111101)
+63 + 63 = 126 (1111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/main.cpp
new file mode 100644
index 000000000..24eb43ae7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 7-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 7;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/stimgen.h
new file mode 100644
index 000000000..feeda4215
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/bits_to_bits/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector7& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector7& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/common.h
new file mode 100644
index 000000000..85b300c4d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<9> bool_vector9;
+
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+typedef sc_signal<bool_vector9> signal_bool_vector9;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/datawidth.cpp
new file mode 100644
index 000000000..e21c6eb6d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector6 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector9 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/datawidth.h
new file mode 100644
index 000000000..911b72c4f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector9& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector9& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/extension.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/extension.f
new file mode 100644
index 000000000..673123bd2
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/extension.f
@@ -0,0 +1,3 @@
+extension/datawidth.cpp
+extension/stimgen.cpp
+extension/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/golden/extension.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/golden/extension.log
new file mode 100644
index 000000000..529ae2755
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/golden/extension.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+16 + 0 = 16 (000010000)
+16 + 1 = 17 (000010001)
+16 + 2 = 18 (000010010)
+16 + 3 = 19 (000010011)
+16 + 4 = 20 (000010100)
+16 + 5 = 21 (000010101)
+16 + 6 = 22 (000010110)
+16 + 7 = 23 (000010111)
+16 + 8 = 24 (000011000)
+16 + 9 = 25 (000011001)
+16 + 10 = 26 (000011010)
+16 + 11 = 27 (000011011)
+16 + 12 = 28 (000011100)
+16 + 13 = 29 (000011101)
+16 + 14 = 30 (000011110)
+16 + 15 = 31 (000011111)
+16 + 16 = 32 (000100000)
+16 + 17 = 33 (000100001)
+16 + 18 = 34 (000100010)
+16 + 19 = 35 (000100011)
+16 + 20 = 36 (000100100)
+16 + 21 = 37 (000100101)
+16 + 22 = 38 (000100110)
+16 + 23 = 39 (000100111)
+16 + 24 = 40 (000101000)
+16 + 25 = 41 (000101001)
+16 + 26 = 42 (000101010)
+16 + 27 = 43 (000101011)
+16 + 28 = 44 (000101100)
+16 + 29 = 45 (000101101)
+16 + 30 = 46 (000101110)
+16 + 31 = 47 (000101111)
+16 + 32 = 48 (000110000)
+16 + 33 = 49 (000110001)
+16 + 34 = 50 (000110010)
+16 + 35 = 51 (000110011)
+16 + 36 = 52 (000110100)
+16 + 37 = 53 (000110101)
+16 + 38 = 54 (000110110)
+16 + 39 = 55 (000110111)
+16 + 40 = 56 (000111000)
+16 + 41 = 57 (000111001)
+16 + 42 = 58 (000111010)
+16 + 43 = 59 (000111011)
+16 + 44 = 60 (000111100)
+16 + 45 = 61 (000111101)
+16 + 46 = 62 (000111110)
+16 + 47 = 63 (000111111)
+16 + 48 = 64 (001000000)
+16 + 49 = 65 (001000001)
+16 + 50 = 66 (001000010)
+16 + 51 = 67 (001000011)
+16 + 52 = 68 (001000100)
+16 + 53 = 69 (001000101)
+16 + 54 = 70 (001000110)
+16 + 55 = 71 (001000111)
+16 + 56 = 72 (001001000)
+16 + 57 = 73 (001001001)
+16 + 58 = 74 (001001010)
+16 + 59 = 75 (001001011)
+16 + 60 = 76 (001001100)
+16 + 61 = 77 (001001101)
+16 + 62 = 78 (001001110)
+16 + 63 = 79 (001001111)
+17 + 0 = 17 (000010001)
+17 + 1 = 18 (000010010)
+17 + 2 = 19 (000010011)
+17 + 3 = 20 (000010100)
+17 + 4 = 21 (000010101)
+17 + 5 = 22 (000010110)
+17 + 6 = 23 (000010111)
+17 + 7 = 24 (000011000)
+17 + 8 = 25 (000011001)
+17 + 9 = 26 (000011010)
+17 + 10 = 27 (000011011)
+17 + 11 = 28 (000011100)
+17 + 12 = 29 (000011101)
+17 + 13 = 30 (000011110)
+17 + 14 = 31 (000011111)
+17 + 15 = 32 (000100000)
+17 + 16 = 33 (000100001)
+17 + 17 = 34 (000100010)
+17 + 18 = 35 (000100011)
+17 + 19 = 36 (000100100)
+17 + 20 = 37 (000100101)
+17 + 21 = 38 (000100110)
+17 + 22 = 39 (000100111)
+17 + 23 = 40 (000101000)
+17 + 24 = 41 (000101001)
+17 + 25 = 42 (000101010)
+17 + 26 = 43 (000101011)
+17 + 27 = 44 (000101100)
+17 + 28 = 45 (000101101)
+17 + 29 = 46 (000101110)
+17 + 30 = 47 (000101111)
+17 + 31 = 48 (000110000)
+17 + 32 = 49 (000110001)
+17 + 33 = 50 (000110010)
+17 + 34 = 51 (000110011)
+17 + 35 = 52 (000110100)
+17 + 36 = 53 (000110101)
+17 + 37 = 54 (000110110)
+17 + 38 = 55 (000110111)
+17 + 39 = 56 (000111000)
+17 + 40 = 57 (000111001)
+17 + 41 = 58 (000111010)
+17 + 42 = 59 (000111011)
+17 + 43 = 60 (000111100)
+17 + 44 = 61 (000111101)
+17 + 45 = 62 (000111110)
+17 + 46 = 63 (000111111)
+17 + 47 = 64 (001000000)
+17 + 48 = 65 (001000001)
+17 + 49 = 66 (001000010)
+17 + 50 = 67 (001000011)
+17 + 51 = 68 (001000100)
+17 + 52 = 69 (001000101)
+17 + 53 = 70 (001000110)
+17 + 54 = 71 (001000111)
+17 + 55 = 72 (001001000)
+17 + 56 = 73 (001001001)
+17 + 57 = 74 (001001010)
+17 + 58 = 75 (001001011)
+17 + 59 = 76 (001001100)
+17 + 60 = 77 (001001101)
+17 + 61 = 78 (001001110)
+17 + 62 = 79 (001001111)
+17 + 63 = 80 (001010000)
+18 + 0 = 18 (000010010)
+18 + 1 = 19 (000010011)
+18 + 2 = 20 (000010100)
+18 + 3 = 21 (000010101)
+18 + 4 = 22 (000010110)
+18 + 5 = 23 (000010111)
+18 + 6 = 24 (000011000)
+18 + 7 = 25 (000011001)
+18 + 8 = 26 (000011010)
+18 + 9 = 27 (000011011)
+18 + 10 = 28 (000011100)
+18 + 11 = 29 (000011101)
+18 + 12 = 30 (000011110)
+18 + 13 = 31 (000011111)
+18 + 14 = 32 (000100000)
+18 + 15 = 33 (000100001)
+18 + 16 = 34 (000100010)
+18 + 17 = 35 (000100011)
+18 + 18 = 36 (000100100)
+18 + 19 = 37 (000100101)
+18 + 20 = 38 (000100110)
+18 + 21 = 39 (000100111)
+18 + 22 = 40 (000101000)
+18 + 23 = 41 (000101001)
+18 + 24 = 42 (000101010)
+18 + 25 = 43 (000101011)
+18 + 26 = 44 (000101100)
+18 + 27 = 45 (000101101)
+18 + 28 = 46 (000101110)
+18 + 29 = 47 (000101111)
+18 + 30 = 48 (000110000)
+18 + 31 = 49 (000110001)
+18 + 32 = 50 (000110010)
+18 + 33 = 51 (000110011)
+18 + 34 = 52 (000110100)
+18 + 35 = 53 (000110101)
+18 + 36 = 54 (000110110)
+18 + 37 = 55 (000110111)
+18 + 38 = 56 (000111000)
+18 + 39 = 57 (000111001)
+18 + 40 = 58 (000111010)
+18 + 41 = 59 (000111011)
+18 + 42 = 60 (000111100)
+18 + 43 = 61 (000111101)
+18 + 44 = 62 (000111110)
+18 + 45 = 63 (000111111)
+18 + 46 = 64 (001000000)
+18 + 47 = 65 (001000001)
+18 + 48 = 66 (001000010)
+18 + 49 = 67 (001000011)
+18 + 50 = 68 (001000100)
+18 + 51 = 69 (001000101)
+18 + 52 = 70 (001000110)
+18 + 53 = 71 (001000111)
+18 + 54 = 72 (001001000)
+18 + 55 = 73 (001001001)
+18 + 56 = 74 (001001010)
+18 + 57 = 75 (001001011)
+18 + 58 = 76 (001001100)
+18 + 59 = 77 (001001101)
+18 + 60 = 78 (001001110)
+18 + 61 = 79 (001001111)
+18 + 62 = 80 (001010000)
+18 + 63 = 81 (001010001)
+19 + 0 = 19 (000010011)
+19 + 1 = 20 (000010100)
+19 + 2 = 21 (000010101)
+19 + 3 = 22 (000010110)
+19 + 4 = 23 (000010111)
+19 + 5 = 24 (000011000)
+19 + 6 = 25 (000011001)
+19 + 7 = 26 (000011010)
+19 + 8 = 27 (000011011)
+19 + 9 = 28 (000011100)
+19 + 10 = 29 (000011101)
+19 + 11 = 30 (000011110)
+19 + 12 = 31 (000011111)
+19 + 13 = 32 (000100000)
+19 + 14 = 33 (000100001)
+19 + 15 = 34 (000100010)
+19 + 16 = 35 (000100011)
+19 + 17 = 36 (000100100)
+19 + 18 = 37 (000100101)
+19 + 19 = 38 (000100110)
+19 + 20 = 39 (000100111)
+19 + 21 = 40 (000101000)
+19 + 22 = 41 (000101001)
+19 + 23 = 42 (000101010)
+19 + 24 = 43 (000101011)
+19 + 25 = 44 (000101100)
+19 + 26 = 45 (000101101)
+19 + 27 = 46 (000101110)
+19 + 28 = 47 (000101111)
+19 + 29 = 48 (000110000)
+19 + 30 = 49 (000110001)
+19 + 31 = 50 (000110010)
+19 + 32 = 51 (000110011)
+19 + 33 = 52 (000110100)
+19 + 34 = 53 (000110101)
+19 + 35 = 54 (000110110)
+19 + 36 = 55 (000110111)
+19 + 37 = 56 (000111000)
+19 + 38 = 57 (000111001)
+19 + 39 = 58 (000111010)
+19 + 40 = 59 (000111011)
+19 + 41 = 60 (000111100)
+19 + 42 = 61 (000111101)
+19 + 43 = 62 (000111110)
+19 + 44 = 63 (000111111)
+19 + 45 = 64 (001000000)
+19 + 46 = 65 (001000001)
+19 + 47 = 66 (001000010)
+19 + 48 = 67 (001000011)
+19 + 49 = 68 (001000100)
+19 + 50 = 69 (001000101)
+19 + 51 = 70 (001000110)
+19 + 52 = 71 (001000111)
+19 + 53 = 72 (001001000)
+19 + 54 = 73 (001001001)
+19 + 55 = 74 (001001010)
+19 + 56 = 75 (001001011)
+19 + 57 = 76 (001001100)
+19 + 58 = 77 (001001101)
+19 + 59 = 78 (001001110)
+19 + 60 = 79 (001001111)
+19 + 61 = 80 (001010000)
+19 + 62 = 81 (001010001)
+19 + 63 = 82 (001010010)
+20 + 0 = 20 (000010100)
+20 + 1 = 21 (000010101)
+20 + 2 = 22 (000010110)
+20 + 3 = 23 (000010111)
+20 + 4 = 24 (000011000)
+20 + 5 = 25 (000011001)
+20 + 6 = 26 (000011010)
+20 + 7 = 27 (000011011)
+20 + 8 = 28 (000011100)
+20 + 9 = 29 (000011101)
+20 + 10 = 30 (000011110)
+20 + 11 = 31 (000011111)
+20 + 12 = 32 (000100000)
+20 + 13 = 33 (000100001)
+20 + 14 = 34 (000100010)
+20 + 15 = 35 (000100011)
+20 + 16 = 36 (000100100)
+20 + 17 = 37 (000100101)
+20 + 18 = 38 (000100110)
+20 + 19 = 39 (000100111)
+20 + 20 = 40 (000101000)
+20 + 21 = 41 (000101001)
+20 + 22 = 42 (000101010)
+20 + 23 = 43 (000101011)
+20 + 24 = 44 (000101100)
+20 + 25 = 45 (000101101)
+20 + 26 = 46 (000101110)
+20 + 27 = 47 (000101111)
+20 + 28 = 48 (000110000)
+20 + 29 = 49 (000110001)
+20 + 30 = 50 (000110010)
+20 + 31 = 51 (000110011)
+20 + 32 = 52 (000110100)
+20 + 33 = 53 (000110101)
+20 + 34 = 54 (000110110)
+20 + 35 = 55 (000110111)
+20 + 36 = 56 (000111000)
+20 + 37 = 57 (000111001)
+20 + 38 = 58 (000111010)
+20 + 39 = 59 (000111011)
+20 + 40 = 60 (000111100)
+20 + 41 = 61 (000111101)
+20 + 42 = 62 (000111110)
+20 + 43 = 63 (000111111)
+20 + 44 = 64 (001000000)
+20 + 45 = 65 (001000001)
+20 + 46 = 66 (001000010)
+20 + 47 = 67 (001000011)
+20 + 48 = 68 (001000100)
+20 + 49 = 69 (001000101)
+20 + 50 = 70 (001000110)
+20 + 51 = 71 (001000111)
+20 + 52 = 72 (001001000)
+20 + 53 = 73 (001001001)
+20 + 54 = 74 (001001010)
+20 + 55 = 75 (001001011)
+20 + 56 = 76 (001001100)
+20 + 57 = 77 (001001101)
+20 + 58 = 78 (001001110)
+20 + 59 = 79 (001001111)
+20 + 60 = 80 (001010000)
+20 + 61 = 81 (001010001)
+20 + 62 = 82 (001010010)
+20 + 63 = 83 (001010011)
+21 + 0 = 21 (000010101)
+21 + 1 = 22 (000010110)
+21 + 2 = 23 (000010111)
+21 + 3 = 24 (000011000)
+21 + 4 = 25 (000011001)
+21 + 5 = 26 (000011010)
+21 + 6 = 27 (000011011)
+21 + 7 = 28 (000011100)
+21 + 8 = 29 (000011101)
+21 + 9 = 30 (000011110)
+21 + 10 = 31 (000011111)
+21 + 11 = 32 (000100000)
+21 + 12 = 33 (000100001)
+21 + 13 = 34 (000100010)
+21 + 14 = 35 (000100011)
+21 + 15 = 36 (000100100)
+21 + 16 = 37 (000100101)
+21 + 17 = 38 (000100110)
+21 + 18 = 39 (000100111)
+21 + 19 = 40 (000101000)
+21 + 20 = 41 (000101001)
+21 + 21 = 42 (000101010)
+21 + 22 = 43 (000101011)
+21 + 23 = 44 (000101100)
+21 + 24 = 45 (000101101)
+21 + 25 = 46 (000101110)
+21 + 26 = 47 (000101111)
+21 + 27 = 48 (000110000)
+21 + 28 = 49 (000110001)
+21 + 29 = 50 (000110010)
+21 + 30 = 51 (000110011)
+21 + 31 = 52 (000110100)
+21 + 32 = 53 (000110101)
+21 + 33 = 54 (000110110)
+21 + 34 = 55 (000110111)
+21 + 35 = 56 (000111000)
+21 + 36 = 57 (000111001)
+21 + 37 = 58 (000111010)
+21 + 38 = 59 (000111011)
+21 + 39 = 60 (000111100)
+21 + 40 = 61 (000111101)
+21 + 41 = 62 (000111110)
+21 + 42 = 63 (000111111)
+21 + 43 = 64 (001000000)
+21 + 44 = 65 (001000001)
+21 + 45 = 66 (001000010)
+21 + 46 = 67 (001000011)
+21 + 47 = 68 (001000100)
+21 + 48 = 69 (001000101)
+21 + 49 = 70 (001000110)
+21 + 50 = 71 (001000111)
+21 + 51 = 72 (001001000)
+21 + 52 = 73 (001001001)
+21 + 53 = 74 (001001010)
+21 + 54 = 75 (001001011)
+21 + 55 = 76 (001001100)
+21 + 56 = 77 (001001101)
+21 + 57 = 78 (001001110)
+21 + 58 = 79 (001001111)
+21 + 59 = 80 (001010000)
+21 + 60 = 81 (001010001)
+21 + 61 = 82 (001010010)
+21 + 62 = 83 (001010011)
+21 + 63 = 84 (001010100)
+22 + 0 = 22 (000010110)
+22 + 1 = 23 (000010111)
+22 + 2 = 24 (000011000)
+22 + 3 = 25 (000011001)
+22 + 4 = 26 (000011010)
+22 + 5 = 27 (000011011)
+22 + 6 = 28 (000011100)
+22 + 7 = 29 (000011101)
+22 + 8 = 30 (000011110)
+22 + 9 = 31 (000011111)
+22 + 10 = 32 (000100000)
+22 + 11 = 33 (000100001)
+22 + 12 = 34 (000100010)
+22 + 13 = 35 (000100011)
+22 + 14 = 36 (000100100)
+22 + 15 = 37 (000100101)
+22 + 16 = 38 (000100110)
+22 + 17 = 39 (000100111)
+22 + 18 = 40 (000101000)
+22 + 19 = 41 (000101001)
+22 + 20 = 42 (000101010)
+22 + 21 = 43 (000101011)
+22 + 22 = 44 (000101100)
+22 + 23 = 45 (000101101)
+22 + 24 = 46 (000101110)
+22 + 25 = 47 (000101111)
+22 + 26 = 48 (000110000)
+22 + 27 = 49 (000110001)
+22 + 28 = 50 (000110010)
+22 + 29 = 51 (000110011)
+22 + 30 = 52 (000110100)
+22 + 31 = 53 (000110101)
+22 + 32 = 54 (000110110)
+22 + 33 = 55 (000110111)
+22 + 34 = 56 (000111000)
+22 + 35 = 57 (000111001)
+22 + 36 = 58 (000111010)
+22 + 37 = 59 (000111011)
+22 + 38 = 60 (000111100)
+22 + 39 = 61 (000111101)
+22 + 40 = 62 (000111110)
+22 + 41 = 63 (000111111)
+22 + 42 = 64 (001000000)
+22 + 43 = 65 (001000001)
+22 + 44 = 66 (001000010)
+22 + 45 = 67 (001000011)
+22 + 46 = 68 (001000100)
+22 + 47 = 69 (001000101)
+22 + 48 = 70 (001000110)
+22 + 49 = 71 (001000111)
+22 + 50 = 72 (001001000)
+22 + 51 = 73 (001001001)
+22 + 52 = 74 (001001010)
+22 + 53 = 75 (001001011)
+22 + 54 = 76 (001001100)
+22 + 55 = 77 (001001101)
+22 + 56 = 78 (001001110)
+22 + 57 = 79 (001001111)
+22 + 58 = 80 (001010000)
+22 + 59 = 81 (001010001)
+22 + 60 = 82 (001010010)
+22 + 61 = 83 (001010011)
+22 + 62 = 84 (001010100)
+22 + 63 = 85 (001010101)
+23 + 0 = 23 (000010111)
+23 + 1 = 24 (000011000)
+23 + 2 = 25 (000011001)
+23 + 3 = 26 (000011010)
+23 + 4 = 27 (000011011)
+23 + 5 = 28 (000011100)
+23 + 6 = 29 (000011101)
+23 + 7 = 30 (000011110)
+23 + 8 = 31 (000011111)
+23 + 9 = 32 (000100000)
+23 + 10 = 33 (000100001)
+23 + 11 = 34 (000100010)
+23 + 12 = 35 (000100011)
+23 + 13 = 36 (000100100)
+23 + 14 = 37 (000100101)
+23 + 15 = 38 (000100110)
+23 + 16 = 39 (000100111)
+23 + 17 = 40 (000101000)
+23 + 18 = 41 (000101001)
+23 + 19 = 42 (000101010)
+23 + 20 = 43 (000101011)
+23 + 21 = 44 (000101100)
+23 + 22 = 45 (000101101)
+23 + 23 = 46 (000101110)
+23 + 24 = 47 (000101111)
+23 + 25 = 48 (000110000)
+23 + 26 = 49 (000110001)
+23 + 27 = 50 (000110010)
+23 + 28 = 51 (000110011)
+23 + 29 = 52 (000110100)
+23 + 30 = 53 (000110101)
+23 + 31 = 54 (000110110)
+23 + 32 = 55 (000110111)
+23 + 33 = 56 (000111000)
+23 + 34 = 57 (000111001)
+23 + 35 = 58 (000111010)
+23 + 36 = 59 (000111011)
+23 + 37 = 60 (000111100)
+23 + 38 = 61 (000111101)
+23 + 39 = 62 (000111110)
+23 + 40 = 63 (000111111)
+23 + 41 = 64 (001000000)
+23 + 42 = 65 (001000001)
+23 + 43 = 66 (001000010)
+23 + 44 = 67 (001000011)
+23 + 45 = 68 (001000100)
+23 + 46 = 69 (001000101)
+23 + 47 = 70 (001000110)
+23 + 48 = 71 (001000111)
+23 + 49 = 72 (001001000)
+23 + 50 = 73 (001001001)
+23 + 51 = 74 (001001010)
+23 + 52 = 75 (001001011)
+23 + 53 = 76 (001001100)
+23 + 54 = 77 (001001101)
+23 + 55 = 78 (001001110)
+23 + 56 = 79 (001001111)
+23 + 57 = 80 (001010000)
+23 + 58 = 81 (001010001)
+23 + 59 = 82 (001010010)
+23 + 60 = 83 (001010011)
+23 + 61 = 84 (001010100)
+23 + 62 = 85 (001010101)
+23 + 63 = 86 (001010110)
+24 + 0 = 24 (000011000)
+24 + 1 = 25 (000011001)
+24 + 2 = 26 (000011010)
+24 + 3 = 27 (000011011)
+24 + 4 = 28 (000011100)
+24 + 5 = 29 (000011101)
+24 + 6 = 30 (000011110)
+24 + 7 = 31 (000011111)
+24 + 8 = 32 (000100000)
+24 + 9 = 33 (000100001)
+24 + 10 = 34 (000100010)
+24 + 11 = 35 (000100011)
+24 + 12 = 36 (000100100)
+24 + 13 = 37 (000100101)
+24 + 14 = 38 (000100110)
+24 + 15 = 39 (000100111)
+24 + 16 = 40 (000101000)
+24 + 17 = 41 (000101001)
+24 + 18 = 42 (000101010)
+24 + 19 = 43 (000101011)
+24 + 20 = 44 (000101100)
+24 + 21 = 45 (000101101)
+24 + 22 = 46 (000101110)
+24 + 23 = 47 (000101111)
+24 + 24 = 48 (000110000)
+24 + 25 = 49 (000110001)
+24 + 26 = 50 (000110010)
+24 + 27 = 51 (000110011)
+24 + 28 = 52 (000110100)
+24 + 29 = 53 (000110101)
+24 + 30 = 54 (000110110)
+24 + 31 = 55 (000110111)
+24 + 32 = 56 (000111000)
+24 + 33 = 57 (000111001)
+24 + 34 = 58 (000111010)
+24 + 35 = 59 (000111011)
+24 + 36 = 60 (000111100)
+24 + 37 = 61 (000111101)
+24 + 38 = 62 (000111110)
+24 + 39 = 63 (000111111)
+24 + 40 = 64 (001000000)
+24 + 41 = 65 (001000001)
+24 + 42 = 66 (001000010)
+24 + 43 = 67 (001000011)
+24 + 44 = 68 (001000100)
+24 + 45 = 69 (001000101)
+24 + 46 = 70 (001000110)
+24 + 47 = 71 (001000111)
+24 + 48 = 72 (001001000)
+24 + 49 = 73 (001001001)
+24 + 50 = 74 (001001010)
+24 + 51 = 75 (001001011)
+24 + 52 = 76 (001001100)
+24 + 53 = 77 (001001101)
+24 + 54 = 78 (001001110)
+24 + 55 = 79 (001001111)
+24 + 56 = 80 (001010000)
+24 + 57 = 81 (001010001)
+24 + 58 = 82 (001010010)
+24 + 59 = 83 (001010011)
+24 + 60 = 84 (001010100)
+24 + 61 = 85 (001010101)
+24 + 62 = 86 (001010110)
+24 + 63 = 87 (001010111)
+25 + 0 = 25 (000011001)
+25 + 1 = 26 (000011010)
+25 + 2 = 27 (000011011)
+25 + 3 = 28 (000011100)
+25 + 4 = 29 (000011101)
+25 + 5 = 30 (000011110)
+25 + 6 = 31 (000011111)
+25 + 7 = 32 (000100000)
+25 + 8 = 33 (000100001)
+25 + 9 = 34 (000100010)
+25 + 10 = 35 (000100011)
+25 + 11 = 36 (000100100)
+25 + 12 = 37 (000100101)
+25 + 13 = 38 (000100110)
+25 + 14 = 39 (000100111)
+25 + 15 = 40 (000101000)
+25 + 16 = 41 (000101001)
+25 + 17 = 42 (000101010)
+25 + 18 = 43 (000101011)
+25 + 19 = 44 (000101100)
+25 + 20 = 45 (000101101)
+25 + 21 = 46 (000101110)
+25 + 22 = 47 (000101111)
+25 + 23 = 48 (000110000)
+25 + 24 = 49 (000110001)
+25 + 25 = 50 (000110010)
+25 + 26 = 51 (000110011)
+25 + 27 = 52 (000110100)
+25 + 28 = 53 (000110101)
+25 + 29 = 54 (000110110)
+25 + 30 = 55 (000110111)
+25 + 31 = 56 (000111000)
+25 + 32 = 57 (000111001)
+25 + 33 = 58 (000111010)
+25 + 34 = 59 (000111011)
+25 + 35 = 60 (000111100)
+25 + 36 = 61 (000111101)
+25 + 37 = 62 (000111110)
+25 + 38 = 63 (000111111)
+25 + 39 = 64 (001000000)
+25 + 40 = 65 (001000001)
+25 + 41 = 66 (001000010)
+25 + 42 = 67 (001000011)
+25 + 43 = 68 (001000100)
+25 + 44 = 69 (001000101)
+25 + 45 = 70 (001000110)
+25 + 46 = 71 (001000111)
+25 + 47 = 72 (001001000)
+25 + 48 = 73 (001001001)
+25 + 49 = 74 (001001010)
+25 + 50 = 75 (001001011)
+25 + 51 = 76 (001001100)
+25 + 52 = 77 (001001101)
+25 + 53 = 78 (001001110)
+25 + 54 = 79 (001001111)
+25 + 55 = 80 (001010000)
+25 + 56 = 81 (001010001)
+25 + 57 = 82 (001010010)
+25 + 58 = 83 (001010011)
+25 + 59 = 84 (001010100)
+25 + 60 = 85 (001010101)
+25 + 61 = 86 (001010110)
+25 + 62 = 87 (001010111)
+25 + 63 = 88 (001011000)
+26 + 0 = 26 (000011010)
+26 + 1 = 27 (000011011)
+26 + 2 = 28 (000011100)
+26 + 3 = 29 (000011101)
+26 + 4 = 30 (000011110)
+26 + 5 = 31 (000011111)
+26 + 6 = 32 (000100000)
+26 + 7 = 33 (000100001)
+26 + 8 = 34 (000100010)
+26 + 9 = 35 (000100011)
+26 + 10 = 36 (000100100)
+26 + 11 = 37 (000100101)
+26 + 12 = 38 (000100110)
+26 + 13 = 39 (000100111)
+26 + 14 = 40 (000101000)
+26 + 15 = 41 (000101001)
+26 + 16 = 42 (000101010)
+26 + 17 = 43 (000101011)
+26 + 18 = 44 (000101100)
+26 + 19 = 45 (000101101)
+26 + 20 = 46 (000101110)
+26 + 21 = 47 (000101111)
+26 + 22 = 48 (000110000)
+26 + 23 = 49 (000110001)
+26 + 24 = 50 (000110010)
+26 + 25 = 51 (000110011)
+26 + 26 = 52 (000110100)
+26 + 27 = 53 (000110101)
+26 + 28 = 54 (000110110)
+26 + 29 = 55 (000110111)
+26 + 30 = 56 (000111000)
+26 + 31 = 57 (000111001)
+26 + 32 = 58 (000111010)
+26 + 33 = 59 (000111011)
+26 + 34 = 60 (000111100)
+26 + 35 = 61 (000111101)
+26 + 36 = 62 (000111110)
+26 + 37 = 63 (000111111)
+26 + 38 = 64 (001000000)
+26 + 39 = 65 (001000001)
+26 + 40 = 66 (001000010)
+26 + 41 = 67 (001000011)
+26 + 42 = 68 (001000100)
+26 + 43 = 69 (001000101)
+26 + 44 = 70 (001000110)
+26 + 45 = 71 (001000111)
+26 + 46 = 72 (001001000)
+26 + 47 = 73 (001001001)
+26 + 48 = 74 (001001010)
+26 + 49 = 75 (001001011)
+26 + 50 = 76 (001001100)
+26 + 51 = 77 (001001101)
+26 + 52 = 78 (001001110)
+26 + 53 = 79 (001001111)
+26 + 54 = 80 (001010000)
+26 + 55 = 81 (001010001)
+26 + 56 = 82 (001010010)
+26 + 57 = 83 (001010011)
+26 + 58 = 84 (001010100)
+26 + 59 = 85 (001010101)
+26 + 60 = 86 (001010110)
+26 + 61 = 87 (001010111)
+26 + 62 = 88 (001011000)
+26 + 63 = 89 (001011001)
+27 + 0 = 27 (000011011)
+27 + 1 = 28 (000011100)
+27 + 2 = 29 (000011101)
+27 + 3 = 30 (000011110)
+27 + 4 = 31 (000011111)
+27 + 5 = 32 (000100000)
+27 + 6 = 33 (000100001)
+27 + 7 = 34 (000100010)
+27 + 8 = 35 (000100011)
+27 + 9 = 36 (000100100)
+27 + 10 = 37 (000100101)
+27 + 11 = 38 (000100110)
+27 + 12 = 39 (000100111)
+27 + 13 = 40 (000101000)
+27 + 14 = 41 (000101001)
+27 + 15 = 42 (000101010)
+27 + 16 = 43 (000101011)
+27 + 17 = 44 (000101100)
+27 + 18 = 45 (000101101)
+27 + 19 = 46 (000101110)
+27 + 20 = 47 (000101111)
+27 + 21 = 48 (000110000)
+27 + 22 = 49 (000110001)
+27 + 23 = 50 (000110010)
+27 + 24 = 51 (000110011)
+27 + 25 = 52 (000110100)
+27 + 26 = 53 (000110101)
+27 + 27 = 54 (000110110)
+27 + 28 = 55 (000110111)
+27 + 29 = 56 (000111000)
+27 + 30 = 57 (000111001)
+27 + 31 = 58 (000111010)
+27 + 32 = 59 (000111011)
+27 + 33 = 60 (000111100)
+27 + 34 = 61 (000111101)
+27 + 35 = 62 (000111110)
+27 + 36 = 63 (000111111)
+27 + 37 = 64 (001000000)
+27 + 38 = 65 (001000001)
+27 + 39 = 66 (001000010)
+27 + 40 = 67 (001000011)
+27 + 41 = 68 (001000100)
+27 + 42 = 69 (001000101)
+27 + 43 = 70 (001000110)
+27 + 44 = 71 (001000111)
+27 + 45 = 72 (001001000)
+27 + 46 = 73 (001001001)
+27 + 47 = 74 (001001010)
+27 + 48 = 75 (001001011)
+27 + 49 = 76 (001001100)
+27 + 50 = 77 (001001101)
+27 + 51 = 78 (001001110)
+27 + 52 = 79 (001001111)
+27 + 53 = 80 (001010000)
+27 + 54 = 81 (001010001)
+27 + 55 = 82 (001010010)
+27 + 56 = 83 (001010011)
+27 + 57 = 84 (001010100)
+27 + 58 = 85 (001010101)
+27 + 59 = 86 (001010110)
+27 + 60 = 87 (001010111)
+27 + 61 = 88 (001011000)
+27 + 62 = 89 (001011001)
+27 + 63 = 90 (001011010)
+28 + 0 = 28 (000011100)
+28 + 1 = 29 (000011101)
+28 + 2 = 30 (000011110)
+28 + 3 = 31 (000011111)
+28 + 4 = 32 (000100000)
+28 + 5 = 33 (000100001)
+28 + 6 = 34 (000100010)
+28 + 7 = 35 (000100011)
+28 + 8 = 36 (000100100)
+28 + 9 = 37 (000100101)
+28 + 10 = 38 (000100110)
+28 + 11 = 39 (000100111)
+28 + 12 = 40 (000101000)
+28 + 13 = 41 (000101001)
+28 + 14 = 42 (000101010)
+28 + 15 = 43 (000101011)
+28 + 16 = 44 (000101100)
+28 + 17 = 45 (000101101)
+28 + 18 = 46 (000101110)
+28 + 19 = 47 (000101111)
+28 + 20 = 48 (000110000)
+28 + 21 = 49 (000110001)
+28 + 22 = 50 (000110010)
+28 + 23 = 51 (000110011)
+28 + 24 = 52 (000110100)
+28 + 25 = 53 (000110101)
+28 + 26 = 54 (000110110)
+28 + 27 = 55 (000110111)
+28 + 28 = 56 (000111000)
+28 + 29 = 57 (000111001)
+28 + 30 = 58 (000111010)
+28 + 31 = 59 (000111011)
+28 + 32 = 60 (000111100)
+28 + 33 = 61 (000111101)
+28 + 34 = 62 (000111110)
+28 + 35 = 63 (000111111)
+28 + 36 = 64 (001000000)
+28 + 37 = 65 (001000001)
+28 + 38 = 66 (001000010)
+28 + 39 = 67 (001000011)
+28 + 40 = 68 (001000100)
+28 + 41 = 69 (001000101)
+28 + 42 = 70 (001000110)
+28 + 43 = 71 (001000111)
+28 + 44 = 72 (001001000)
+28 + 45 = 73 (001001001)
+28 + 46 = 74 (001001010)
+28 + 47 = 75 (001001011)
+28 + 48 = 76 (001001100)
+28 + 49 = 77 (001001101)
+28 + 50 = 78 (001001110)
+28 + 51 = 79 (001001111)
+28 + 52 = 80 (001010000)
+28 + 53 = 81 (001010001)
+28 + 54 = 82 (001010010)
+28 + 55 = 83 (001010011)
+28 + 56 = 84 (001010100)
+28 + 57 = 85 (001010101)
+28 + 58 = 86 (001010110)
+28 + 59 = 87 (001010111)
+28 + 60 = 88 (001011000)
+28 + 61 = 89 (001011001)
+28 + 62 = 90 (001011010)
+28 + 63 = 91 (001011011)
+29 + 0 = 29 (000011101)
+29 + 1 = 30 (000011110)
+29 + 2 = 31 (000011111)
+29 + 3 = 32 (000100000)
+29 + 4 = 33 (000100001)
+29 + 5 = 34 (000100010)
+29 + 6 = 35 (000100011)
+29 + 7 = 36 (000100100)
+29 + 8 = 37 (000100101)
+29 + 9 = 38 (000100110)
+29 + 10 = 39 (000100111)
+29 + 11 = 40 (000101000)
+29 + 12 = 41 (000101001)
+29 + 13 = 42 (000101010)
+29 + 14 = 43 (000101011)
+29 + 15 = 44 (000101100)
+29 + 16 = 45 (000101101)
+29 + 17 = 46 (000101110)
+29 + 18 = 47 (000101111)
+29 + 19 = 48 (000110000)
+29 + 20 = 49 (000110001)
+29 + 21 = 50 (000110010)
+29 + 22 = 51 (000110011)
+29 + 23 = 52 (000110100)
+29 + 24 = 53 (000110101)
+29 + 25 = 54 (000110110)
+29 + 26 = 55 (000110111)
+29 + 27 = 56 (000111000)
+29 + 28 = 57 (000111001)
+29 + 29 = 58 (000111010)
+29 + 30 = 59 (000111011)
+29 + 31 = 60 (000111100)
+29 + 32 = 61 (000111101)
+29 + 33 = 62 (000111110)
+29 + 34 = 63 (000111111)
+29 + 35 = 64 (001000000)
+29 + 36 = 65 (001000001)
+29 + 37 = 66 (001000010)
+29 + 38 = 67 (001000011)
+29 + 39 = 68 (001000100)
+29 + 40 = 69 (001000101)
+29 + 41 = 70 (001000110)
+29 + 42 = 71 (001000111)
+29 + 43 = 72 (001001000)
+29 + 44 = 73 (001001001)
+29 + 45 = 74 (001001010)
+29 + 46 = 75 (001001011)
+29 + 47 = 76 (001001100)
+29 + 48 = 77 (001001101)
+29 + 49 = 78 (001001110)
+29 + 50 = 79 (001001111)
+29 + 51 = 80 (001010000)
+29 + 52 = 81 (001010001)
+29 + 53 = 82 (001010010)
+29 + 54 = 83 (001010011)
+29 + 55 = 84 (001010100)
+29 + 56 = 85 (001010101)
+29 + 57 = 86 (001010110)
+29 + 58 = 87 (001010111)
+29 + 59 = 88 (001011000)
+29 + 60 = 89 (001011001)
+29 + 61 = 90 (001011010)
+29 + 62 = 91 (001011011)
+29 + 63 = 92 (001011100)
+30 + 0 = 30 (000011110)
+30 + 1 = 31 (000011111)
+30 + 2 = 32 (000100000)
+30 + 3 = 33 (000100001)
+30 + 4 = 34 (000100010)
+30 + 5 = 35 (000100011)
+30 + 6 = 36 (000100100)
+30 + 7 = 37 (000100101)
+30 + 8 = 38 (000100110)
+30 + 9 = 39 (000100111)
+30 + 10 = 40 (000101000)
+30 + 11 = 41 (000101001)
+30 + 12 = 42 (000101010)
+30 + 13 = 43 (000101011)
+30 + 14 = 44 (000101100)
+30 + 15 = 45 (000101101)
+30 + 16 = 46 (000101110)
+30 + 17 = 47 (000101111)
+30 + 18 = 48 (000110000)
+30 + 19 = 49 (000110001)
+30 + 20 = 50 (000110010)
+30 + 21 = 51 (000110011)
+30 + 22 = 52 (000110100)
+30 + 23 = 53 (000110101)
+30 + 24 = 54 (000110110)
+30 + 25 = 55 (000110111)
+30 + 26 = 56 (000111000)
+30 + 27 = 57 (000111001)
+30 + 28 = 58 (000111010)
+30 + 29 = 59 (000111011)
+30 + 30 = 60 (000111100)
+30 + 31 = 61 (000111101)
+30 + 32 = 62 (000111110)
+30 + 33 = 63 (000111111)
+30 + 34 = 64 (001000000)
+30 + 35 = 65 (001000001)
+30 + 36 = 66 (001000010)
+30 + 37 = 67 (001000011)
+30 + 38 = 68 (001000100)
+30 + 39 = 69 (001000101)
+30 + 40 = 70 (001000110)
+30 + 41 = 71 (001000111)
+30 + 42 = 72 (001001000)
+30 + 43 = 73 (001001001)
+30 + 44 = 74 (001001010)
+30 + 45 = 75 (001001011)
+30 + 46 = 76 (001001100)
+30 + 47 = 77 (001001101)
+30 + 48 = 78 (001001110)
+30 + 49 = 79 (001001111)
+30 + 50 = 80 (001010000)
+30 + 51 = 81 (001010001)
+30 + 52 = 82 (001010010)
+30 + 53 = 83 (001010011)
+30 + 54 = 84 (001010100)
+30 + 55 = 85 (001010101)
+30 + 56 = 86 (001010110)
+30 + 57 = 87 (001010111)
+30 + 58 = 88 (001011000)
+30 + 59 = 89 (001011001)
+30 + 60 = 90 (001011010)
+30 + 61 = 91 (001011011)
+30 + 62 = 92 (001011100)
+30 + 63 = 93 (001011101)
+31 + 0 = 31 (000011111)
+31 + 1 = 32 (000100000)
+31 + 2 = 33 (000100001)
+31 + 3 = 34 (000100010)
+31 + 4 = 35 (000100011)
+31 + 5 = 36 (000100100)
+31 + 6 = 37 (000100101)
+31 + 7 = 38 (000100110)
+31 + 8 = 39 (000100111)
+31 + 9 = 40 (000101000)
+31 + 10 = 41 (000101001)
+31 + 11 = 42 (000101010)
+31 + 12 = 43 (000101011)
+31 + 13 = 44 (000101100)
+31 + 14 = 45 (000101101)
+31 + 15 = 46 (000101110)
+31 + 16 = 47 (000101111)
+31 + 17 = 48 (000110000)
+31 + 18 = 49 (000110001)
+31 + 19 = 50 (000110010)
+31 + 20 = 51 (000110011)
+31 + 21 = 52 (000110100)
+31 + 22 = 53 (000110101)
+31 + 23 = 54 (000110110)
+31 + 24 = 55 (000110111)
+31 + 25 = 56 (000111000)
+31 + 26 = 57 (000111001)
+31 + 27 = 58 (000111010)
+31 + 28 = 59 (000111011)
+31 + 29 = 60 (000111100)
+31 + 30 = 61 (000111101)
+31 + 31 = 62 (000111110)
+31 + 32 = 63 (000111111)
+31 + 33 = 64 (001000000)
+31 + 34 = 65 (001000001)
+31 + 35 = 66 (001000010)
+31 + 36 = 67 (001000011)
+31 + 37 = 68 (001000100)
+31 + 38 = 69 (001000101)
+31 + 39 = 70 (001000110)
+31 + 40 = 71 (001000111)
+31 + 41 = 72 (001001000)
+31 + 42 = 73 (001001001)
+31 + 43 = 74 (001001010)
+31 + 44 = 75 (001001011)
+31 + 45 = 76 (001001100)
+31 + 46 = 77 (001001101)
+31 + 47 = 78 (001001110)
+31 + 48 = 79 (001001111)
+31 + 49 = 80 (001010000)
+31 + 50 = 81 (001010001)
+31 + 51 = 82 (001010010)
+31 + 52 = 83 (001010011)
+31 + 53 = 84 (001010100)
+31 + 54 = 85 (001010101)
+31 + 55 = 86 (001010110)
+31 + 56 = 87 (001010111)
+31 + 57 = 88 (001011000)
+31 + 58 = 89 (001011001)
+31 + 59 = 90 (001011010)
+31 + 60 = 91 (001011011)
+31 + 61 = 92 (001011100)
+31 + 62 = 93 (001011101)
+31 + 63 = 94 (001011110)
+32 + 0 = 32 (000100000)
+32 + 1 = 33 (000100001)
+32 + 2 = 34 (000100010)
+32 + 3 = 35 (000100011)
+32 + 4 = 36 (000100100)
+32 + 5 = 37 (000100101)
+32 + 6 = 38 (000100110)
+32 + 7 = 39 (000100111)
+32 + 8 = 40 (000101000)
+32 + 9 = 41 (000101001)
+32 + 10 = 42 (000101010)
+32 + 11 = 43 (000101011)
+32 + 12 = 44 (000101100)
+32 + 13 = 45 (000101101)
+32 + 14 = 46 (000101110)
+32 + 15 = 47 (000101111)
+32 + 16 = 48 (000110000)
+32 + 17 = 49 (000110001)
+32 + 18 = 50 (000110010)
+32 + 19 = 51 (000110011)
+32 + 20 = 52 (000110100)
+32 + 21 = 53 (000110101)
+32 + 22 = 54 (000110110)
+32 + 23 = 55 (000110111)
+32 + 24 = 56 (000111000)
+32 + 25 = 57 (000111001)
+32 + 26 = 58 (000111010)
+32 + 27 = 59 (000111011)
+32 + 28 = 60 (000111100)
+32 + 29 = 61 (000111101)
+32 + 30 = 62 (000111110)
+32 + 31 = 63 (000111111)
+32 + 32 = 64 (001000000)
+32 + 33 = 65 (001000001)
+32 + 34 = 66 (001000010)
+32 + 35 = 67 (001000011)
+32 + 36 = 68 (001000100)
+32 + 37 = 69 (001000101)
+32 + 38 = 70 (001000110)
+32 + 39 = 71 (001000111)
+32 + 40 = 72 (001001000)
+32 + 41 = 73 (001001001)
+32 + 42 = 74 (001001010)
+32 + 43 = 75 (001001011)
+32 + 44 = 76 (001001100)
+32 + 45 = 77 (001001101)
+32 + 46 = 78 (001001110)
+32 + 47 = 79 (001001111)
+32 + 48 = 80 (001010000)
+32 + 49 = 81 (001010001)
+32 + 50 = 82 (001010010)
+32 + 51 = 83 (001010011)
+32 + 52 = 84 (001010100)
+32 + 53 = 85 (001010101)
+32 + 54 = 86 (001010110)
+32 + 55 = 87 (001010111)
+32 + 56 = 88 (001011000)
+32 + 57 = 89 (001011001)
+32 + 58 = 90 (001011010)
+32 + 59 = 91 (001011011)
+32 + 60 = 92 (001011100)
+32 + 61 = 93 (001011101)
+32 + 62 = 94 (001011110)
+32 + 63 = 95 (001011111)
+33 + 0 = 33 (000100001)
+33 + 1 = 34 (000100010)
+33 + 2 = 35 (000100011)
+33 + 3 = 36 (000100100)
+33 + 4 = 37 (000100101)
+33 + 5 = 38 (000100110)
+33 + 6 = 39 (000100111)
+33 + 7 = 40 (000101000)
+33 + 8 = 41 (000101001)
+33 + 9 = 42 (000101010)
+33 + 10 = 43 (000101011)
+33 + 11 = 44 (000101100)
+33 + 12 = 45 (000101101)
+33 + 13 = 46 (000101110)
+33 + 14 = 47 (000101111)
+33 + 15 = 48 (000110000)
+33 + 16 = 49 (000110001)
+33 + 17 = 50 (000110010)
+33 + 18 = 51 (000110011)
+33 + 19 = 52 (000110100)
+33 + 20 = 53 (000110101)
+33 + 21 = 54 (000110110)
+33 + 22 = 55 (000110111)
+33 + 23 = 56 (000111000)
+33 + 24 = 57 (000111001)
+33 + 25 = 58 (000111010)
+33 + 26 = 59 (000111011)
+33 + 27 = 60 (000111100)
+33 + 28 = 61 (000111101)
+33 + 29 = 62 (000111110)
+33 + 30 = 63 (000111111)
+33 + 31 = 64 (001000000)
+33 + 32 = 65 (001000001)
+33 + 33 = 66 (001000010)
+33 + 34 = 67 (001000011)
+33 + 35 = 68 (001000100)
+33 + 36 = 69 (001000101)
+33 + 37 = 70 (001000110)
+33 + 38 = 71 (001000111)
+33 + 39 = 72 (001001000)
+33 + 40 = 73 (001001001)
+33 + 41 = 74 (001001010)
+33 + 42 = 75 (001001011)
+33 + 43 = 76 (001001100)
+33 + 44 = 77 (001001101)
+33 + 45 = 78 (001001110)
+33 + 46 = 79 (001001111)
+33 + 47 = 80 (001010000)
+33 + 48 = 81 (001010001)
+33 + 49 = 82 (001010010)
+33 + 50 = 83 (001010011)
+33 + 51 = 84 (001010100)
+33 + 52 = 85 (001010101)
+33 + 53 = 86 (001010110)
+33 + 54 = 87 (001010111)
+33 + 55 = 88 (001011000)
+33 + 56 = 89 (001011001)
+33 + 57 = 90 (001011010)
+33 + 58 = 91 (001011011)
+33 + 59 = 92 (001011100)
+33 + 60 = 93 (001011101)
+33 + 61 = 94 (001011110)
+33 + 62 = 95 (001011111)
+33 + 63 = 96 (001100000)
+34 + 0 = 34 (000100010)
+34 + 1 = 35 (000100011)
+34 + 2 = 36 (000100100)
+34 + 3 = 37 (000100101)
+34 + 4 = 38 (000100110)
+34 + 5 = 39 (000100111)
+34 + 6 = 40 (000101000)
+34 + 7 = 41 (000101001)
+34 + 8 = 42 (000101010)
+34 + 9 = 43 (000101011)
+34 + 10 = 44 (000101100)
+34 + 11 = 45 (000101101)
+34 + 12 = 46 (000101110)
+34 + 13 = 47 (000101111)
+34 + 14 = 48 (000110000)
+34 + 15 = 49 (000110001)
+34 + 16 = 50 (000110010)
+34 + 17 = 51 (000110011)
+34 + 18 = 52 (000110100)
+34 + 19 = 53 (000110101)
+34 + 20 = 54 (000110110)
+34 + 21 = 55 (000110111)
+34 + 22 = 56 (000111000)
+34 + 23 = 57 (000111001)
+34 + 24 = 58 (000111010)
+34 + 25 = 59 (000111011)
+34 + 26 = 60 (000111100)
+34 + 27 = 61 (000111101)
+34 + 28 = 62 (000111110)
+34 + 29 = 63 (000111111)
+34 + 30 = 64 (001000000)
+34 + 31 = 65 (001000001)
+34 + 32 = 66 (001000010)
+34 + 33 = 67 (001000011)
+34 + 34 = 68 (001000100)
+34 + 35 = 69 (001000101)
+34 + 36 = 70 (001000110)
+34 + 37 = 71 (001000111)
+34 + 38 = 72 (001001000)
+34 + 39 = 73 (001001001)
+34 + 40 = 74 (001001010)
+34 + 41 = 75 (001001011)
+34 + 42 = 76 (001001100)
+34 + 43 = 77 (001001101)
+34 + 44 = 78 (001001110)
+34 + 45 = 79 (001001111)
+34 + 46 = 80 (001010000)
+34 + 47 = 81 (001010001)
+34 + 48 = 82 (001010010)
+34 + 49 = 83 (001010011)
+34 + 50 = 84 (001010100)
+34 + 51 = 85 (001010101)
+34 + 52 = 86 (001010110)
+34 + 53 = 87 (001010111)
+34 + 54 = 88 (001011000)
+34 + 55 = 89 (001011001)
+34 + 56 = 90 (001011010)
+34 + 57 = 91 (001011011)
+34 + 58 = 92 (001011100)
+34 + 59 = 93 (001011101)
+34 + 60 = 94 (001011110)
+34 + 61 = 95 (001011111)
+34 + 62 = 96 (001100000)
+34 + 63 = 97 (001100001)
+35 + 0 = 35 (000100011)
+35 + 1 = 36 (000100100)
+35 + 2 = 37 (000100101)
+35 + 3 = 38 (000100110)
+35 + 4 = 39 (000100111)
+35 + 5 = 40 (000101000)
+35 + 6 = 41 (000101001)
+35 + 7 = 42 (000101010)
+35 + 8 = 43 (000101011)
+35 + 9 = 44 (000101100)
+35 + 10 = 45 (000101101)
+35 + 11 = 46 (000101110)
+35 + 12 = 47 (000101111)
+35 + 13 = 48 (000110000)
+35 + 14 = 49 (000110001)
+35 + 15 = 50 (000110010)
+35 + 16 = 51 (000110011)
+35 + 17 = 52 (000110100)
+35 + 18 = 53 (000110101)
+35 + 19 = 54 (000110110)
+35 + 20 = 55 (000110111)
+35 + 21 = 56 (000111000)
+35 + 22 = 57 (000111001)
+35 + 23 = 58 (000111010)
+35 + 24 = 59 (000111011)
+35 + 25 = 60 (000111100)
+35 + 26 = 61 (000111101)
+35 + 27 = 62 (000111110)
+35 + 28 = 63 (000111111)
+35 + 29 = 64 (001000000)
+35 + 30 = 65 (001000001)
+35 + 31 = 66 (001000010)
+35 + 32 = 67 (001000011)
+35 + 33 = 68 (001000100)
+35 + 34 = 69 (001000101)
+35 + 35 = 70 (001000110)
+35 + 36 = 71 (001000111)
+35 + 37 = 72 (001001000)
+35 + 38 = 73 (001001001)
+35 + 39 = 74 (001001010)
+35 + 40 = 75 (001001011)
+35 + 41 = 76 (001001100)
+35 + 42 = 77 (001001101)
+35 + 43 = 78 (001001110)
+35 + 44 = 79 (001001111)
+35 + 45 = 80 (001010000)
+35 + 46 = 81 (001010001)
+35 + 47 = 82 (001010010)
+35 + 48 = 83 (001010011)
+35 + 49 = 84 (001010100)
+35 + 50 = 85 (001010101)
+35 + 51 = 86 (001010110)
+35 + 52 = 87 (001010111)
+35 + 53 = 88 (001011000)
+35 + 54 = 89 (001011001)
+35 + 55 = 90 (001011010)
+35 + 56 = 91 (001011011)
+35 + 57 = 92 (001011100)
+35 + 58 = 93 (001011101)
+35 + 59 = 94 (001011110)
+35 + 60 = 95 (001011111)
+35 + 61 = 96 (001100000)
+35 + 62 = 97 (001100001)
+35 + 63 = 98 (001100010)
+36 + 0 = 36 (000100100)
+36 + 1 = 37 (000100101)
+36 + 2 = 38 (000100110)
+36 + 3 = 39 (000100111)
+36 + 4 = 40 (000101000)
+36 + 5 = 41 (000101001)
+36 + 6 = 42 (000101010)
+36 + 7 = 43 (000101011)
+36 + 8 = 44 (000101100)
+36 + 9 = 45 (000101101)
+36 + 10 = 46 (000101110)
+36 + 11 = 47 (000101111)
+36 + 12 = 48 (000110000)
+36 + 13 = 49 (000110001)
+36 + 14 = 50 (000110010)
+36 + 15 = 51 (000110011)
+36 + 16 = 52 (000110100)
+36 + 17 = 53 (000110101)
+36 + 18 = 54 (000110110)
+36 + 19 = 55 (000110111)
+36 + 20 = 56 (000111000)
+36 + 21 = 57 (000111001)
+36 + 22 = 58 (000111010)
+36 + 23 = 59 (000111011)
+36 + 24 = 60 (000111100)
+36 + 25 = 61 (000111101)
+36 + 26 = 62 (000111110)
+36 + 27 = 63 (000111111)
+36 + 28 = 64 (001000000)
+36 + 29 = 65 (001000001)
+36 + 30 = 66 (001000010)
+36 + 31 = 67 (001000011)
+36 + 32 = 68 (001000100)
+36 + 33 = 69 (001000101)
+36 + 34 = 70 (001000110)
+36 + 35 = 71 (001000111)
+36 + 36 = 72 (001001000)
+36 + 37 = 73 (001001001)
+36 + 38 = 74 (001001010)
+36 + 39 = 75 (001001011)
+36 + 40 = 76 (001001100)
+36 + 41 = 77 (001001101)
+36 + 42 = 78 (001001110)
+36 + 43 = 79 (001001111)
+36 + 44 = 80 (001010000)
+36 + 45 = 81 (001010001)
+36 + 46 = 82 (001010010)
+36 + 47 = 83 (001010011)
+36 + 48 = 84 (001010100)
+36 + 49 = 85 (001010101)
+36 + 50 = 86 (001010110)
+36 + 51 = 87 (001010111)
+36 + 52 = 88 (001011000)
+36 + 53 = 89 (001011001)
+36 + 54 = 90 (001011010)
+36 + 55 = 91 (001011011)
+36 + 56 = 92 (001011100)
+36 + 57 = 93 (001011101)
+36 + 58 = 94 (001011110)
+36 + 59 = 95 (001011111)
+36 + 60 = 96 (001100000)
+36 + 61 = 97 (001100001)
+36 + 62 = 98 (001100010)
+36 + 63 = 99 (001100011)
+37 + 0 = 37 (000100101)
+37 + 1 = 38 (000100110)
+37 + 2 = 39 (000100111)
+37 + 3 = 40 (000101000)
+37 + 4 = 41 (000101001)
+37 + 5 = 42 (000101010)
+37 + 6 = 43 (000101011)
+37 + 7 = 44 (000101100)
+37 + 8 = 45 (000101101)
+37 + 9 = 46 (000101110)
+37 + 10 = 47 (000101111)
+37 + 11 = 48 (000110000)
+37 + 12 = 49 (000110001)
+37 + 13 = 50 (000110010)
+37 + 14 = 51 (000110011)
+37 + 15 = 52 (000110100)
+37 + 16 = 53 (000110101)
+37 + 17 = 54 (000110110)
+37 + 18 = 55 (000110111)
+37 + 19 = 56 (000111000)
+37 + 20 = 57 (000111001)
+37 + 21 = 58 (000111010)
+37 + 22 = 59 (000111011)
+37 + 23 = 60 (000111100)
+37 + 24 = 61 (000111101)
+37 + 25 = 62 (000111110)
+37 + 26 = 63 (000111111)
+37 + 27 = 64 (001000000)
+37 + 28 = 65 (001000001)
+37 + 29 = 66 (001000010)
+37 + 30 = 67 (001000011)
+37 + 31 = 68 (001000100)
+37 + 32 = 69 (001000101)
+37 + 33 = 70 (001000110)
+37 + 34 = 71 (001000111)
+37 + 35 = 72 (001001000)
+37 + 36 = 73 (001001001)
+37 + 37 = 74 (001001010)
+37 + 38 = 75 (001001011)
+37 + 39 = 76 (001001100)
+37 + 40 = 77 (001001101)
+37 + 41 = 78 (001001110)
+37 + 42 = 79 (001001111)
+37 + 43 = 80 (001010000)
+37 + 44 = 81 (001010001)
+37 + 45 = 82 (001010010)
+37 + 46 = 83 (001010011)
+37 + 47 = 84 (001010100)
+37 + 48 = 85 (001010101)
+37 + 49 = 86 (001010110)
+37 + 50 = 87 (001010111)
+37 + 51 = 88 (001011000)
+37 + 52 = 89 (001011001)
+37 + 53 = 90 (001011010)
+37 + 54 = 91 (001011011)
+37 + 55 = 92 (001011100)
+37 + 56 = 93 (001011101)
+37 + 57 = 94 (001011110)
+37 + 58 = 95 (001011111)
+37 + 59 = 96 (001100000)
+37 + 60 = 97 (001100001)
+37 + 61 = 98 (001100010)
+37 + 62 = 99 (001100011)
+37 + 63 = 100 (001100100)
+38 + 0 = 38 (000100110)
+38 + 1 = 39 (000100111)
+38 + 2 = 40 (000101000)
+38 + 3 = 41 (000101001)
+38 + 4 = 42 (000101010)
+38 + 5 = 43 (000101011)
+38 + 6 = 44 (000101100)
+38 + 7 = 45 (000101101)
+38 + 8 = 46 (000101110)
+38 + 9 = 47 (000101111)
+38 + 10 = 48 (000110000)
+38 + 11 = 49 (000110001)
+38 + 12 = 50 (000110010)
+38 + 13 = 51 (000110011)
+38 + 14 = 52 (000110100)
+38 + 15 = 53 (000110101)
+38 + 16 = 54 (000110110)
+38 + 17 = 55 (000110111)
+38 + 18 = 56 (000111000)
+38 + 19 = 57 (000111001)
+38 + 20 = 58 (000111010)
+38 + 21 = 59 (000111011)
+38 + 22 = 60 (000111100)
+38 + 23 = 61 (000111101)
+38 + 24 = 62 (000111110)
+38 + 25 = 63 (000111111)
+38 + 26 = 64 (001000000)
+38 + 27 = 65 (001000001)
+38 + 28 = 66 (001000010)
+38 + 29 = 67 (001000011)
+38 + 30 = 68 (001000100)
+38 + 31 = 69 (001000101)
+38 + 32 = 70 (001000110)
+38 + 33 = 71 (001000111)
+38 + 34 = 72 (001001000)
+38 + 35 = 73 (001001001)
+38 + 36 = 74 (001001010)
+38 + 37 = 75 (001001011)
+38 + 38 = 76 (001001100)
+38 + 39 = 77 (001001101)
+38 + 40 = 78 (001001110)
+38 + 41 = 79 (001001111)
+38 + 42 = 80 (001010000)
+38 + 43 = 81 (001010001)
+38 + 44 = 82 (001010010)
+38 + 45 = 83 (001010011)
+38 + 46 = 84 (001010100)
+38 + 47 = 85 (001010101)
+38 + 48 = 86 (001010110)
+38 + 49 = 87 (001010111)
+38 + 50 = 88 (001011000)
+38 + 51 = 89 (001011001)
+38 + 52 = 90 (001011010)
+38 + 53 = 91 (001011011)
+38 + 54 = 92 (001011100)
+38 + 55 = 93 (001011101)
+38 + 56 = 94 (001011110)
+38 + 57 = 95 (001011111)
+38 + 58 = 96 (001100000)
+38 + 59 = 97 (001100001)
+38 + 60 = 98 (001100010)
+38 + 61 = 99 (001100011)
+38 + 62 = 100 (001100100)
+38 + 63 = 101 (001100101)
+39 + 0 = 39 (000100111)
+39 + 1 = 40 (000101000)
+39 + 2 = 41 (000101001)
+39 + 3 = 42 (000101010)
+39 + 4 = 43 (000101011)
+39 + 5 = 44 (000101100)
+39 + 6 = 45 (000101101)
+39 + 7 = 46 (000101110)
+39 + 8 = 47 (000101111)
+39 + 9 = 48 (000110000)
+39 + 10 = 49 (000110001)
+39 + 11 = 50 (000110010)
+39 + 12 = 51 (000110011)
+39 + 13 = 52 (000110100)
+39 + 14 = 53 (000110101)
+39 + 15 = 54 (000110110)
+39 + 16 = 55 (000110111)
+39 + 17 = 56 (000111000)
+39 + 18 = 57 (000111001)
+39 + 19 = 58 (000111010)
+39 + 20 = 59 (000111011)
+39 + 21 = 60 (000111100)
+39 + 22 = 61 (000111101)
+39 + 23 = 62 (000111110)
+39 + 24 = 63 (000111111)
+39 + 25 = 64 (001000000)
+39 + 26 = 65 (001000001)
+39 + 27 = 66 (001000010)
+39 + 28 = 67 (001000011)
+39 + 29 = 68 (001000100)
+39 + 30 = 69 (001000101)
+39 + 31 = 70 (001000110)
+39 + 32 = 71 (001000111)
+39 + 33 = 72 (001001000)
+39 + 34 = 73 (001001001)
+39 + 35 = 74 (001001010)
+39 + 36 = 75 (001001011)
+39 + 37 = 76 (001001100)
+39 + 38 = 77 (001001101)
+39 + 39 = 78 (001001110)
+39 + 40 = 79 (001001111)
+39 + 41 = 80 (001010000)
+39 + 42 = 81 (001010001)
+39 + 43 = 82 (001010010)
+39 + 44 = 83 (001010011)
+39 + 45 = 84 (001010100)
+39 + 46 = 85 (001010101)
+39 + 47 = 86 (001010110)
+39 + 48 = 87 (001010111)
+39 + 49 = 88 (001011000)
+39 + 50 = 89 (001011001)
+39 + 51 = 90 (001011010)
+39 + 52 = 91 (001011011)
+39 + 53 = 92 (001011100)
+39 + 54 = 93 (001011101)
+39 + 55 = 94 (001011110)
+39 + 56 = 95 (001011111)
+39 + 57 = 96 (001100000)
+39 + 58 = 97 (001100001)
+39 + 59 = 98 (001100010)
+39 + 60 = 99 (001100011)
+39 + 61 = 100 (001100100)
+39 + 62 = 101 (001100101)
+39 + 63 = 102 (001100110)
+40 + 0 = 40 (000101000)
+40 + 1 = 41 (000101001)
+40 + 2 = 42 (000101010)
+40 + 3 = 43 (000101011)
+40 + 4 = 44 (000101100)
+40 + 5 = 45 (000101101)
+40 + 6 = 46 (000101110)
+40 + 7 = 47 (000101111)
+40 + 8 = 48 (000110000)
+40 + 9 = 49 (000110001)
+40 + 10 = 50 (000110010)
+40 + 11 = 51 (000110011)
+40 + 12 = 52 (000110100)
+40 + 13 = 53 (000110101)
+40 + 14 = 54 (000110110)
+40 + 15 = 55 (000110111)
+40 + 16 = 56 (000111000)
+40 + 17 = 57 (000111001)
+40 + 18 = 58 (000111010)
+40 + 19 = 59 (000111011)
+40 + 20 = 60 (000111100)
+40 + 21 = 61 (000111101)
+40 + 22 = 62 (000111110)
+40 + 23 = 63 (000111111)
+40 + 24 = 64 (001000000)
+40 + 25 = 65 (001000001)
+40 + 26 = 66 (001000010)
+40 + 27 = 67 (001000011)
+40 + 28 = 68 (001000100)
+40 + 29 = 69 (001000101)
+40 + 30 = 70 (001000110)
+40 + 31 = 71 (001000111)
+40 + 32 = 72 (001001000)
+40 + 33 = 73 (001001001)
+40 + 34 = 74 (001001010)
+40 + 35 = 75 (001001011)
+40 + 36 = 76 (001001100)
+40 + 37 = 77 (001001101)
+40 + 38 = 78 (001001110)
+40 + 39 = 79 (001001111)
+40 + 40 = 80 (001010000)
+40 + 41 = 81 (001010001)
+40 + 42 = 82 (001010010)
+40 + 43 = 83 (001010011)
+40 + 44 = 84 (001010100)
+40 + 45 = 85 (001010101)
+40 + 46 = 86 (001010110)
+40 + 47 = 87 (001010111)
+40 + 48 = 88 (001011000)
+40 + 49 = 89 (001011001)
+40 + 50 = 90 (001011010)
+40 + 51 = 91 (001011011)
+40 + 52 = 92 (001011100)
+40 + 53 = 93 (001011101)
+40 + 54 = 94 (001011110)
+40 + 55 = 95 (001011111)
+40 + 56 = 96 (001100000)
+40 + 57 = 97 (001100001)
+40 + 58 = 98 (001100010)
+40 + 59 = 99 (001100011)
+40 + 60 = 100 (001100100)
+40 + 61 = 101 (001100101)
+40 + 62 = 102 (001100110)
+40 + 63 = 103 (001100111)
+41 + 0 = 41 (000101001)
+41 + 1 = 42 (000101010)
+41 + 2 = 43 (000101011)
+41 + 3 = 44 (000101100)
+41 + 4 = 45 (000101101)
+41 + 5 = 46 (000101110)
+41 + 6 = 47 (000101111)
+41 + 7 = 48 (000110000)
+41 + 8 = 49 (000110001)
+41 + 9 = 50 (000110010)
+41 + 10 = 51 (000110011)
+41 + 11 = 52 (000110100)
+41 + 12 = 53 (000110101)
+41 + 13 = 54 (000110110)
+41 + 14 = 55 (000110111)
+41 + 15 = 56 (000111000)
+41 + 16 = 57 (000111001)
+41 + 17 = 58 (000111010)
+41 + 18 = 59 (000111011)
+41 + 19 = 60 (000111100)
+41 + 20 = 61 (000111101)
+41 + 21 = 62 (000111110)
+41 + 22 = 63 (000111111)
+41 + 23 = 64 (001000000)
+41 + 24 = 65 (001000001)
+41 + 25 = 66 (001000010)
+41 + 26 = 67 (001000011)
+41 + 27 = 68 (001000100)
+41 + 28 = 69 (001000101)
+41 + 29 = 70 (001000110)
+41 + 30 = 71 (001000111)
+41 + 31 = 72 (001001000)
+41 + 32 = 73 (001001001)
+41 + 33 = 74 (001001010)
+41 + 34 = 75 (001001011)
+41 + 35 = 76 (001001100)
+41 + 36 = 77 (001001101)
+41 + 37 = 78 (001001110)
+41 + 38 = 79 (001001111)
+41 + 39 = 80 (001010000)
+41 + 40 = 81 (001010001)
+41 + 41 = 82 (001010010)
+41 + 42 = 83 (001010011)
+41 + 43 = 84 (001010100)
+41 + 44 = 85 (001010101)
+41 + 45 = 86 (001010110)
+41 + 46 = 87 (001010111)
+41 + 47 = 88 (001011000)
+41 + 48 = 89 (001011001)
+41 + 49 = 90 (001011010)
+41 + 50 = 91 (001011011)
+41 + 51 = 92 (001011100)
+41 + 52 = 93 (001011101)
+41 + 53 = 94 (001011110)
+41 + 54 = 95 (001011111)
+41 + 55 = 96 (001100000)
+41 + 56 = 97 (001100001)
+41 + 57 = 98 (001100010)
+41 + 58 = 99 (001100011)
+41 + 59 = 100 (001100100)
+41 + 60 = 101 (001100101)
+41 + 61 = 102 (001100110)
+41 + 62 = 103 (001100111)
+41 + 63 = 104 (001101000)
+42 + 0 = 42 (000101010)
+42 + 1 = 43 (000101011)
+42 + 2 = 44 (000101100)
+42 + 3 = 45 (000101101)
+42 + 4 = 46 (000101110)
+42 + 5 = 47 (000101111)
+42 + 6 = 48 (000110000)
+42 + 7 = 49 (000110001)
+42 + 8 = 50 (000110010)
+42 + 9 = 51 (000110011)
+42 + 10 = 52 (000110100)
+42 + 11 = 53 (000110101)
+42 + 12 = 54 (000110110)
+42 + 13 = 55 (000110111)
+42 + 14 = 56 (000111000)
+42 + 15 = 57 (000111001)
+42 + 16 = 58 (000111010)
+42 + 17 = 59 (000111011)
+42 + 18 = 60 (000111100)
+42 + 19 = 61 (000111101)
+42 + 20 = 62 (000111110)
+42 + 21 = 63 (000111111)
+42 + 22 = 64 (001000000)
+42 + 23 = 65 (001000001)
+42 + 24 = 66 (001000010)
+42 + 25 = 67 (001000011)
+42 + 26 = 68 (001000100)
+42 + 27 = 69 (001000101)
+42 + 28 = 70 (001000110)
+42 + 29 = 71 (001000111)
+42 + 30 = 72 (001001000)
+42 + 31 = 73 (001001001)
+42 + 32 = 74 (001001010)
+42 + 33 = 75 (001001011)
+42 + 34 = 76 (001001100)
+42 + 35 = 77 (001001101)
+42 + 36 = 78 (001001110)
+42 + 37 = 79 (001001111)
+42 + 38 = 80 (001010000)
+42 + 39 = 81 (001010001)
+42 + 40 = 82 (001010010)
+42 + 41 = 83 (001010011)
+42 + 42 = 84 (001010100)
+42 + 43 = 85 (001010101)
+42 + 44 = 86 (001010110)
+42 + 45 = 87 (001010111)
+42 + 46 = 88 (001011000)
+42 + 47 = 89 (001011001)
+42 + 48 = 90 (001011010)
+42 + 49 = 91 (001011011)
+42 + 50 = 92 (001011100)
+42 + 51 = 93 (001011101)
+42 + 52 = 94 (001011110)
+42 + 53 = 95 (001011111)
+42 + 54 = 96 (001100000)
+42 + 55 = 97 (001100001)
+42 + 56 = 98 (001100010)
+42 + 57 = 99 (001100011)
+42 + 58 = 100 (001100100)
+42 + 59 = 101 (001100101)
+42 + 60 = 102 (001100110)
+42 + 61 = 103 (001100111)
+42 + 62 = 104 (001101000)
+42 + 63 = 105 (001101001)
+43 + 0 = 43 (000101011)
+43 + 1 = 44 (000101100)
+43 + 2 = 45 (000101101)
+43 + 3 = 46 (000101110)
+43 + 4 = 47 (000101111)
+43 + 5 = 48 (000110000)
+43 + 6 = 49 (000110001)
+43 + 7 = 50 (000110010)
+43 + 8 = 51 (000110011)
+43 + 9 = 52 (000110100)
+43 + 10 = 53 (000110101)
+43 + 11 = 54 (000110110)
+43 + 12 = 55 (000110111)
+43 + 13 = 56 (000111000)
+43 + 14 = 57 (000111001)
+43 + 15 = 58 (000111010)
+43 + 16 = 59 (000111011)
+43 + 17 = 60 (000111100)
+43 + 18 = 61 (000111101)
+43 + 19 = 62 (000111110)
+43 + 20 = 63 (000111111)
+43 + 21 = 64 (001000000)
+43 + 22 = 65 (001000001)
+43 + 23 = 66 (001000010)
+43 + 24 = 67 (001000011)
+43 + 25 = 68 (001000100)
+43 + 26 = 69 (001000101)
+43 + 27 = 70 (001000110)
+43 + 28 = 71 (001000111)
+43 + 29 = 72 (001001000)
+43 + 30 = 73 (001001001)
+43 + 31 = 74 (001001010)
+43 + 32 = 75 (001001011)
+43 + 33 = 76 (001001100)
+43 + 34 = 77 (001001101)
+43 + 35 = 78 (001001110)
+43 + 36 = 79 (001001111)
+43 + 37 = 80 (001010000)
+43 + 38 = 81 (001010001)
+43 + 39 = 82 (001010010)
+43 + 40 = 83 (001010011)
+43 + 41 = 84 (001010100)
+43 + 42 = 85 (001010101)
+43 + 43 = 86 (001010110)
+43 + 44 = 87 (001010111)
+43 + 45 = 88 (001011000)
+43 + 46 = 89 (001011001)
+43 + 47 = 90 (001011010)
+43 + 48 = 91 (001011011)
+43 + 49 = 92 (001011100)
+43 + 50 = 93 (001011101)
+43 + 51 = 94 (001011110)
+43 + 52 = 95 (001011111)
+43 + 53 = 96 (001100000)
+43 + 54 = 97 (001100001)
+43 + 55 = 98 (001100010)
+43 + 56 = 99 (001100011)
+43 + 57 = 100 (001100100)
+43 + 58 = 101 (001100101)
+43 + 59 = 102 (001100110)
+43 + 60 = 103 (001100111)
+43 + 61 = 104 (001101000)
+43 + 62 = 105 (001101001)
+43 + 63 = 106 (001101010)
+44 + 0 = 44 (000101100)
+44 + 1 = 45 (000101101)
+44 + 2 = 46 (000101110)
+44 + 3 = 47 (000101111)
+44 + 4 = 48 (000110000)
+44 + 5 = 49 (000110001)
+44 + 6 = 50 (000110010)
+44 + 7 = 51 (000110011)
+44 + 8 = 52 (000110100)
+44 + 9 = 53 (000110101)
+44 + 10 = 54 (000110110)
+44 + 11 = 55 (000110111)
+44 + 12 = 56 (000111000)
+44 + 13 = 57 (000111001)
+44 + 14 = 58 (000111010)
+44 + 15 = 59 (000111011)
+44 + 16 = 60 (000111100)
+44 + 17 = 61 (000111101)
+44 + 18 = 62 (000111110)
+44 + 19 = 63 (000111111)
+44 + 20 = 64 (001000000)
+44 + 21 = 65 (001000001)
+44 + 22 = 66 (001000010)
+44 + 23 = 67 (001000011)
+44 + 24 = 68 (001000100)
+44 + 25 = 69 (001000101)
+44 + 26 = 70 (001000110)
+44 + 27 = 71 (001000111)
+44 + 28 = 72 (001001000)
+44 + 29 = 73 (001001001)
+44 + 30 = 74 (001001010)
+44 + 31 = 75 (001001011)
+44 + 32 = 76 (001001100)
+44 + 33 = 77 (001001101)
+44 + 34 = 78 (001001110)
+44 + 35 = 79 (001001111)
+44 + 36 = 80 (001010000)
+44 + 37 = 81 (001010001)
+44 + 38 = 82 (001010010)
+44 + 39 = 83 (001010011)
+44 + 40 = 84 (001010100)
+44 + 41 = 85 (001010101)
+44 + 42 = 86 (001010110)
+44 + 43 = 87 (001010111)
+44 + 44 = 88 (001011000)
+44 + 45 = 89 (001011001)
+44 + 46 = 90 (001011010)
+44 + 47 = 91 (001011011)
+44 + 48 = 92 (001011100)
+44 + 49 = 93 (001011101)
+44 + 50 = 94 (001011110)
+44 + 51 = 95 (001011111)
+44 + 52 = 96 (001100000)
+44 + 53 = 97 (001100001)
+44 + 54 = 98 (001100010)
+44 + 55 = 99 (001100011)
+44 + 56 = 100 (001100100)
+44 + 57 = 101 (001100101)
+44 + 58 = 102 (001100110)
+44 + 59 = 103 (001100111)
+44 + 60 = 104 (001101000)
+44 + 61 = 105 (001101001)
+44 + 62 = 106 (001101010)
+44 + 63 = 107 (001101011)
+45 + 0 = 45 (000101101)
+45 + 1 = 46 (000101110)
+45 + 2 = 47 (000101111)
+45 + 3 = 48 (000110000)
+45 + 4 = 49 (000110001)
+45 + 5 = 50 (000110010)
+45 + 6 = 51 (000110011)
+45 + 7 = 52 (000110100)
+45 + 8 = 53 (000110101)
+45 + 9 = 54 (000110110)
+45 + 10 = 55 (000110111)
+45 + 11 = 56 (000111000)
+45 + 12 = 57 (000111001)
+45 + 13 = 58 (000111010)
+45 + 14 = 59 (000111011)
+45 + 15 = 60 (000111100)
+45 + 16 = 61 (000111101)
+45 + 17 = 62 (000111110)
+45 + 18 = 63 (000111111)
+45 + 19 = 64 (001000000)
+45 + 20 = 65 (001000001)
+45 + 21 = 66 (001000010)
+45 + 22 = 67 (001000011)
+45 + 23 = 68 (001000100)
+45 + 24 = 69 (001000101)
+45 + 25 = 70 (001000110)
+45 + 26 = 71 (001000111)
+45 + 27 = 72 (001001000)
+45 + 28 = 73 (001001001)
+45 + 29 = 74 (001001010)
+45 + 30 = 75 (001001011)
+45 + 31 = 76 (001001100)
+45 + 32 = 77 (001001101)
+45 + 33 = 78 (001001110)
+45 + 34 = 79 (001001111)
+45 + 35 = 80 (001010000)
+45 + 36 = 81 (001010001)
+45 + 37 = 82 (001010010)
+45 + 38 = 83 (001010011)
+45 + 39 = 84 (001010100)
+45 + 40 = 85 (001010101)
+45 + 41 = 86 (001010110)
+45 + 42 = 87 (001010111)
+45 + 43 = 88 (001011000)
+45 + 44 = 89 (001011001)
+45 + 45 = 90 (001011010)
+45 + 46 = 91 (001011011)
+45 + 47 = 92 (001011100)
+45 + 48 = 93 (001011101)
+45 + 49 = 94 (001011110)
+45 + 50 = 95 (001011111)
+45 + 51 = 96 (001100000)
+45 + 52 = 97 (001100001)
+45 + 53 = 98 (001100010)
+45 + 54 = 99 (001100011)
+45 + 55 = 100 (001100100)
+45 + 56 = 101 (001100101)
+45 + 57 = 102 (001100110)
+45 + 58 = 103 (001100111)
+45 + 59 = 104 (001101000)
+45 + 60 = 105 (001101001)
+45 + 61 = 106 (001101010)
+45 + 62 = 107 (001101011)
+45 + 63 = 108 (001101100)
+46 + 0 = 46 (000101110)
+46 + 1 = 47 (000101111)
+46 + 2 = 48 (000110000)
+46 + 3 = 49 (000110001)
+46 + 4 = 50 (000110010)
+46 + 5 = 51 (000110011)
+46 + 6 = 52 (000110100)
+46 + 7 = 53 (000110101)
+46 + 8 = 54 (000110110)
+46 + 9 = 55 (000110111)
+46 + 10 = 56 (000111000)
+46 + 11 = 57 (000111001)
+46 + 12 = 58 (000111010)
+46 + 13 = 59 (000111011)
+46 + 14 = 60 (000111100)
+46 + 15 = 61 (000111101)
+46 + 16 = 62 (000111110)
+46 + 17 = 63 (000111111)
+46 + 18 = 64 (001000000)
+46 + 19 = 65 (001000001)
+46 + 20 = 66 (001000010)
+46 + 21 = 67 (001000011)
+46 + 22 = 68 (001000100)
+46 + 23 = 69 (001000101)
+46 + 24 = 70 (001000110)
+46 + 25 = 71 (001000111)
+46 + 26 = 72 (001001000)
+46 + 27 = 73 (001001001)
+46 + 28 = 74 (001001010)
+46 + 29 = 75 (001001011)
+46 + 30 = 76 (001001100)
+46 + 31 = 77 (001001101)
+46 + 32 = 78 (001001110)
+46 + 33 = 79 (001001111)
+46 + 34 = 80 (001010000)
+46 + 35 = 81 (001010001)
+46 + 36 = 82 (001010010)
+46 + 37 = 83 (001010011)
+46 + 38 = 84 (001010100)
+46 + 39 = 85 (001010101)
+46 + 40 = 86 (001010110)
+46 + 41 = 87 (001010111)
+46 + 42 = 88 (001011000)
+46 + 43 = 89 (001011001)
+46 + 44 = 90 (001011010)
+46 + 45 = 91 (001011011)
+46 + 46 = 92 (001011100)
+46 + 47 = 93 (001011101)
+46 + 48 = 94 (001011110)
+46 + 49 = 95 (001011111)
+46 + 50 = 96 (001100000)
+46 + 51 = 97 (001100001)
+46 + 52 = 98 (001100010)
+46 + 53 = 99 (001100011)
+46 + 54 = 100 (001100100)
+46 + 55 = 101 (001100101)
+46 + 56 = 102 (001100110)
+46 + 57 = 103 (001100111)
+46 + 58 = 104 (001101000)
+46 + 59 = 105 (001101001)
+46 + 60 = 106 (001101010)
+46 + 61 = 107 (001101011)
+46 + 62 = 108 (001101100)
+46 + 63 = 109 (001101101)
+47 + 0 = 47 (000101111)
+47 + 1 = 48 (000110000)
+47 + 2 = 49 (000110001)
+47 + 3 = 50 (000110010)
+47 + 4 = 51 (000110011)
+47 + 5 = 52 (000110100)
+47 + 6 = 53 (000110101)
+47 + 7 = 54 (000110110)
+47 + 8 = 55 (000110111)
+47 + 9 = 56 (000111000)
+47 + 10 = 57 (000111001)
+47 + 11 = 58 (000111010)
+47 + 12 = 59 (000111011)
+47 + 13 = 60 (000111100)
+47 + 14 = 61 (000111101)
+47 + 15 = 62 (000111110)
+47 + 16 = 63 (000111111)
+47 + 17 = 64 (001000000)
+47 + 18 = 65 (001000001)
+47 + 19 = 66 (001000010)
+47 + 20 = 67 (001000011)
+47 + 21 = 68 (001000100)
+47 + 22 = 69 (001000101)
+47 + 23 = 70 (001000110)
+47 + 24 = 71 (001000111)
+47 + 25 = 72 (001001000)
+47 + 26 = 73 (001001001)
+47 + 27 = 74 (001001010)
+47 + 28 = 75 (001001011)
+47 + 29 = 76 (001001100)
+47 + 30 = 77 (001001101)
+47 + 31 = 78 (001001110)
+47 + 32 = 79 (001001111)
+47 + 33 = 80 (001010000)
+47 + 34 = 81 (001010001)
+47 + 35 = 82 (001010010)
+47 + 36 = 83 (001010011)
+47 + 37 = 84 (001010100)
+47 + 38 = 85 (001010101)
+47 + 39 = 86 (001010110)
+47 + 40 = 87 (001010111)
+47 + 41 = 88 (001011000)
+47 + 42 = 89 (001011001)
+47 + 43 = 90 (001011010)
+47 + 44 = 91 (001011011)
+47 + 45 = 92 (001011100)
+47 + 46 = 93 (001011101)
+47 + 47 = 94 (001011110)
+47 + 48 = 95 (001011111)
+47 + 49 = 96 (001100000)
+47 + 50 = 97 (001100001)
+47 + 51 = 98 (001100010)
+47 + 52 = 99 (001100011)
+47 + 53 = 100 (001100100)
+47 + 54 = 101 (001100101)
+47 + 55 = 102 (001100110)
+47 + 56 = 103 (001100111)
+47 + 57 = 104 (001101000)
+47 + 58 = 105 (001101001)
+47 + 59 = 106 (001101010)
+47 + 60 = 107 (001101011)
+47 + 61 = 108 (001101100)
+47 + 62 = 109 (001101101)
+47 + 63 = 110 (001101110)
+48 + 0 = 48 (000110000)
+48 + 1 = 49 (000110001)
+48 + 2 = 50 (000110010)
+48 + 3 = 51 (000110011)
+48 + 4 = 52 (000110100)
+48 + 5 = 53 (000110101)
+48 + 6 = 54 (000110110)
+48 + 7 = 55 (000110111)
+48 + 8 = 56 (000111000)
+48 + 9 = 57 (000111001)
+48 + 10 = 58 (000111010)
+48 + 11 = 59 (000111011)
+48 + 12 = 60 (000111100)
+48 + 13 = 61 (000111101)
+48 + 14 = 62 (000111110)
+48 + 15 = 63 (000111111)
+48 + 16 = 64 (001000000)
+48 + 17 = 65 (001000001)
+48 + 18 = 66 (001000010)
+48 + 19 = 67 (001000011)
+48 + 20 = 68 (001000100)
+48 + 21 = 69 (001000101)
+48 + 22 = 70 (001000110)
+48 + 23 = 71 (001000111)
+48 + 24 = 72 (001001000)
+48 + 25 = 73 (001001001)
+48 + 26 = 74 (001001010)
+48 + 27 = 75 (001001011)
+48 + 28 = 76 (001001100)
+48 + 29 = 77 (001001101)
+48 + 30 = 78 (001001110)
+48 + 31 = 79 (001001111)
+48 + 32 = 80 (001010000)
+48 + 33 = 81 (001010001)
+48 + 34 = 82 (001010010)
+48 + 35 = 83 (001010011)
+48 + 36 = 84 (001010100)
+48 + 37 = 85 (001010101)
+48 + 38 = 86 (001010110)
+48 + 39 = 87 (001010111)
+48 + 40 = 88 (001011000)
+48 + 41 = 89 (001011001)
+48 + 42 = 90 (001011010)
+48 + 43 = 91 (001011011)
+48 + 44 = 92 (001011100)
+48 + 45 = 93 (001011101)
+48 + 46 = 94 (001011110)
+48 + 47 = 95 (001011111)
+48 + 48 = 96 (001100000)
+48 + 49 = 97 (001100001)
+48 + 50 = 98 (001100010)
+48 + 51 = 99 (001100011)
+48 + 52 = 100 (001100100)
+48 + 53 = 101 (001100101)
+48 + 54 = 102 (001100110)
+48 + 55 = 103 (001100111)
+48 + 56 = 104 (001101000)
+48 + 57 = 105 (001101001)
+48 + 58 = 106 (001101010)
+48 + 59 = 107 (001101011)
+48 + 60 = 108 (001101100)
+48 + 61 = 109 (001101101)
+48 + 62 = 110 (001101110)
+48 + 63 = 111 (001101111)
+49 + 0 = 49 (000110001)
+49 + 1 = 50 (000110010)
+49 + 2 = 51 (000110011)
+49 + 3 = 52 (000110100)
+49 + 4 = 53 (000110101)
+49 + 5 = 54 (000110110)
+49 + 6 = 55 (000110111)
+49 + 7 = 56 (000111000)
+49 + 8 = 57 (000111001)
+49 + 9 = 58 (000111010)
+49 + 10 = 59 (000111011)
+49 + 11 = 60 (000111100)
+49 + 12 = 61 (000111101)
+49 + 13 = 62 (000111110)
+49 + 14 = 63 (000111111)
+49 + 15 = 64 (001000000)
+49 + 16 = 65 (001000001)
+49 + 17 = 66 (001000010)
+49 + 18 = 67 (001000011)
+49 + 19 = 68 (001000100)
+49 + 20 = 69 (001000101)
+49 + 21 = 70 (001000110)
+49 + 22 = 71 (001000111)
+49 + 23 = 72 (001001000)
+49 + 24 = 73 (001001001)
+49 + 25 = 74 (001001010)
+49 + 26 = 75 (001001011)
+49 + 27 = 76 (001001100)
+49 + 28 = 77 (001001101)
+49 + 29 = 78 (001001110)
+49 + 30 = 79 (001001111)
+49 + 31 = 80 (001010000)
+49 + 32 = 81 (001010001)
+49 + 33 = 82 (001010010)
+49 + 34 = 83 (001010011)
+49 + 35 = 84 (001010100)
+49 + 36 = 85 (001010101)
+49 + 37 = 86 (001010110)
+49 + 38 = 87 (001010111)
+49 + 39 = 88 (001011000)
+49 + 40 = 89 (001011001)
+49 + 41 = 90 (001011010)
+49 + 42 = 91 (001011011)
+49 + 43 = 92 (001011100)
+49 + 44 = 93 (001011101)
+49 + 45 = 94 (001011110)
+49 + 46 = 95 (001011111)
+49 + 47 = 96 (001100000)
+49 + 48 = 97 (001100001)
+49 + 49 = 98 (001100010)
+49 + 50 = 99 (001100011)
+49 + 51 = 100 (001100100)
+49 + 52 = 101 (001100101)
+49 + 53 = 102 (001100110)
+49 + 54 = 103 (001100111)
+49 + 55 = 104 (001101000)
+49 + 56 = 105 (001101001)
+49 + 57 = 106 (001101010)
+49 + 58 = 107 (001101011)
+49 + 59 = 108 (001101100)
+49 + 60 = 109 (001101101)
+49 + 61 = 110 (001101110)
+49 + 62 = 111 (001101111)
+49 + 63 = 112 (001110000)
+50 + 0 = 50 (000110010)
+50 + 1 = 51 (000110011)
+50 + 2 = 52 (000110100)
+50 + 3 = 53 (000110101)
+50 + 4 = 54 (000110110)
+50 + 5 = 55 (000110111)
+50 + 6 = 56 (000111000)
+50 + 7 = 57 (000111001)
+50 + 8 = 58 (000111010)
+50 + 9 = 59 (000111011)
+50 + 10 = 60 (000111100)
+50 + 11 = 61 (000111101)
+50 + 12 = 62 (000111110)
+50 + 13 = 63 (000111111)
+50 + 14 = 64 (001000000)
+50 + 15 = 65 (001000001)
+50 + 16 = 66 (001000010)
+50 + 17 = 67 (001000011)
+50 + 18 = 68 (001000100)
+50 + 19 = 69 (001000101)
+50 + 20 = 70 (001000110)
+50 + 21 = 71 (001000111)
+50 + 22 = 72 (001001000)
+50 + 23 = 73 (001001001)
+50 + 24 = 74 (001001010)
+50 + 25 = 75 (001001011)
+50 + 26 = 76 (001001100)
+50 + 27 = 77 (001001101)
+50 + 28 = 78 (001001110)
+50 + 29 = 79 (001001111)
+50 + 30 = 80 (001010000)
+50 + 31 = 81 (001010001)
+50 + 32 = 82 (001010010)
+50 + 33 = 83 (001010011)
+50 + 34 = 84 (001010100)
+50 + 35 = 85 (001010101)
+50 + 36 = 86 (001010110)
+50 + 37 = 87 (001010111)
+50 + 38 = 88 (001011000)
+50 + 39 = 89 (001011001)
+50 + 40 = 90 (001011010)
+50 + 41 = 91 (001011011)
+50 + 42 = 92 (001011100)
+50 + 43 = 93 (001011101)
+50 + 44 = 94 (001011110)
+50 + 45 = 95 (001011111)
+50 + 46 = 96 (001100000)
+50 + 47 = 97 (001100001)
+50 + 48 = 98 (001100010)
+50 + 49 = 99 (001100011)
+50 + 50 = 100 (001100100)
+50 + 51 = 101 (001100101)
+50 + 52 = 102 (001100110)
+50 + 53 = 103 (001100111)
+50 + 54 = 104 (001101000)
+50 + 55 = 105 (001101001)
+50 + 56 = 106 (001101010)
+50 + 57 = 107 (001101011)
+50 + 58 = 108 (001101100)
+50 + 59 = 109 (001101101)
+50 + 60 = 110 (001101110)
+50 + 61 = 111 (001101111)
+50 + 62 = 112 (001110000)
+50 + 63 = 113 (001110001)
+51 + 0 = 51 (000110011)
+51 + 1 = 52 (000110100)
+51 + 2 = 53 (000110101)
+51 + 3 = 54 (000110110)
+51 + 4 = 55 (000110111)
+51 + 5 = 56 (000111000)
+51 + 6 = 57 (000111001)
+51 + 7 = 58 (000111010)
+51 + 8 = 59 (000111011)
+51 + 9 = 60 (000111100)
+51 + 10 = 61 (000111101)
+51 + 11 = 62 (000111110)
+51 + 12 = 63 (000111111)
+51 + 13 = 64 (001000000)
+51 + 14 = 65 (001000001)
+51 + 15 = 66 (001000010)
+51 + 16 = 67 (001000011)
+51 + 17 = 68 (001000100)
+51 + 18 = 69 (001000101)
+51 + 19 = 70 (001000110)
+51 + 20 = 71 (001000111)
+51 + 21 = 72 (001001000)
+51 + 22 = 73 (001001001)
+51 + 23 = 74 (001001010)
+51 + 24 = 75 (001001011)
+51 + 25 = 76 (001001100)
+51 + 26 = 77 (001001101)
+51 + 27 = 78 (001001110)
+51 + 28 = 79 (001001111)
+51 + 29 = 80 (001010000)
+51 + 30 = 81 (001010001)
+51 + 31 = 82 (001010010)
+51 + 32 = 83 (001010011)
+51 + 33 = 84 (001010100)
+51 + 34 = 85 (001010101)
+51 + 35 = 86 (001010110)
+51 + 36 = 87 (001010111)
+51 + 37 = 88 (001011000)
+51 + 38 = 89 (001011001)
+51 + 39 = 90 (001011010)
+51 + 40 = 91 (001011011)
+51 + 41 = 92 (001011100)
+51 + 42 = 93 (001011101)
+51 + 43 = 94 (001011110)
+51 + 44 = 95 (001011111)
+51 + 45 = 96 (001100000)
+51 + 46 = 97 (001100001)
+51 + 47 = 98 (001100010)
+51 + 48 = 99 (001100011)
+51 + 49 = 100 (001100100)
+51 + 50 = 101 (001100101)
+51 + 51 = 102 (001100110)
+51 + 52 = 103 (001100111)
+51 + 53 = 104 (001101000)
+51 + 54 = 105 (001101001)
+51 + 55 = 106 (001101010)
+51 + 56 = 107 (001101011)
+51 + 57 = 108 (001101100)
+51 + 58 = 109 (001101101)
+51 + 59 = 110 (001101110)
+51 + 60 = 111 (001101111)
+51 + 61 = 112 (001110000)
+51 + 62 = 113 (001110001)
+51 + 63 = 114 (001110010)
+52 + 0 = 52 (000110100)
+52 + 1 = 53 (000110101)
+52 + 2 = 54 (000110110)
+52 + 3 = 55 (000110111)
+52 + 4 = 56 (000111000)
+52 + 5 = 57 (000111001)
+52 + 6 = 58 (000111010)
+52 + 7 = 59 (000111011)
+52 + 8 = 60 (000111100)
+52 + 9 = 61 (000111101)
+52 + 10 = 62 (000111110)
+52 + 11 = 63 (000111111)
+52 + 12 = 64 (001000000)
+52 + 13 = 65 (001000001)
+52 + 14 = 66 (001000010)
+52 + 15 = 67 (001000011)
+52 + 16 = 68 (001000100)
+52 + 17 = 69 (001000101)
+52 + 18 = 70 (001000110)
+52 + 19 = 71 (001000111)
+52 + 20 = 72 (001001000)
+52 + 21 = 73 (001001001)
+52 + 22 = 74 (001001010)
+52 + 23 = 75 (001001011)
+52 + 24 = 76 (001001100)
+52 + 25 = 77 (001001101)
+52 + 26 = 78 (001001110)
+52 + 27 = 79 (001001111)
+52 + 28 = 80 (001010000)
+52 + 29 = 81 (001010001)
+52 + 30 = 82 (001010010)
+52 + 31 = 83 (001010011)
+52 + 32 = 84 (001010100)
+52 + 33 = 85 (001010101)
+52 + 34 = 86 (001010110)
+52 + 35 = 87 (001010111)
+52 + 36 = 88 (001011000)
+52 + 37 = 89 (001011001)
+52 + 38 = 90 (001011010)
+52 + 39 = 91 (001011011)
+52 + 40 = 92 (001011100)
+52 + 41 = 93 (001011101)
+52 + 42 = 94 (001011110)
+52 + 43 = 95 (001011111)
+52 + 44 = 96 (001100000)
+52 + 45 = 97 (001100001)
+52 + 46 = 98 (001100010)
+52 + 47 = 99 (001100011)
+52 + 48 = 100 (001100100)
+52 + 49 = 101 (001100101)
+52 + 50 = 102 (001100110)
+52 + 51 = 103 (001100111)
+52 + 52 = 104 (001101000)
+52 + 53 = 105 (001101001)
+52 + 54 = 106 (001101010)
+52 + 55 = 107 (001101011)
+52 + 56 = 108 (001101100)
+52 + 57 = 109 (001101101)
+52 + 58 = 110 (001101110)
+52 + 59 = 111 (001101111)
+52 + 60 = 112 (001110000)
+52 + 61 = 113 (001110001)
+52 + 62 = 114 (001110010)
+52 + 63 = 115 (001110011)
+53 + 0 = 53 (000110101)
+53 + 1 = 54 (000110110)
+53 + 2 = 55 (000110111)
+53 + 3 = 56 (000111000)
+53 + 4 = 57 (000111001)
+53 + 5 = 58 (000111010)
+53 + 6 = 59 (000111011)
+53 + 7 = 60 (000111100)
+53 + 8 = 61 (000111101)
+53 + 9 = 62 (000111110)
+53 + 10 = 63 (000111111)
+53 + 11 = 64 (001000000)
+53 + 12 = 65 (001000001)
+53 + 13 = 66 (001000010)
+53 + 14 = 67 (001000011)
+53 + 15 = 68 (001000100)
+53 + 16 = 69 (001000101)
+53 + 17 = 70 (001000110)
+53 + 18 = 71 (001000111)
+53 + 19 = 72 (001001000)
+53 + 20 = 73 (001001001)
+53 + 21 = 74 (001001010)
+53 + 22 = 75 (001001011)
+53 + 23 = 76 (001001100)
+53 + 24 = 77 (001001101)
+53 + 25 = 78 (001001110)
+53 + 26 = 79 (001001111)
+53 + 27 = 80 (001010000)
+53 + 28 = 81 (001010001)
+53 + 29 = 82 (001010010)
+53 + 30 = 83 (001010011)
+53 + 31 = 84 (001010100)
+53 + 32 = 85 (001010101)
+53 + 33 = 86 (001010110)
+53 + 34 = 87 (001010111)
+53 + 35 = 88 (001011000)
+53 + 36 = 89 (001011001)
+53 + 37 = 90 (001011010)
+53 + 38 = 91 (001011011)
+53 + 39 = 92 (001011100)
+53 + 40 = 93 (001011101)
+53 + 41 = 94 (001011110)
+53 + 42 = 95 (001011111)
+53 + 43 = 96 (001100000)
+53 + 44 = 97 (001100001)
+53 + 45 = 98 (001100010)
+53 + 46 = 99 (001100011)
+53 + 47 = 100 (001100100)
+53 + 48 = 101 (001100101)
+53 + 49 = 102 (001100110)
+53 + 50 = 103 (001100111)
+53 + 51 = 104 (001101000)
+53 + 52 = 105 (001101001)
+53 + 53 = 106 (001101010)
+53 + 54 = 107 (001101011)
+53 + 55 = 108 (001101100)
+53 + 56 = 109 (001101101)
+53 + 57 = 110 (001101110)
+53 + 58 = 111 (001101111)
+53 + 59 = 112 (001110000)
+53 + 60 = 113 (001110001)
+53 + 61 = 114 (001110010)
+53 + 62 = 115 (001110011)
+53 + 63 = 116 (001110100)
+54 + 0 = 54 (000110110)
+54 + 1 = 55 (000110111)
+54 + 2 = 56 (000111000)
+54 + 3 = 57 (000111001)
+54 + 4 = 58 (000111010)
+54 + 5 = 59 (000111011)
+54 + 6 = 60 (000111100)
+54 + 7 = 61 (000111101)
+54 + 8 = 62 (000111110)
+54 + 9 = 63 (000111111)
+54 + 10 = 64 (001000000)
+54 + 11 = 65 (001000001)
+54 + 12 = 66 (001000010)
+54 + 13 = 67 (001000011)
+54 + 14 = 68 (001000100)
+54 + 15 = 69 (001000101)
+54 + 16 = 70 (001000110)
+54 + 17 = 71 (001000111)
+54 + 18 = 72 (001001000)
+54 + 19 = 73 (001001001)
+54 + 20 = 74 (001001010)
+54 + 21 = 75 (001001011)
+54 + 22 = 76 (001001100)
+54 + 23 = 77 (001001101)
+54 + 24 = 78 (001001110)
+54 + 25 = 79 (001001111)
+54 + 26 = 80 (001010000)
+54 + 27 = 81 (001010001)
+54 + 28 = 82 (001010010)
+54 + 29 = 83 (001010011)
+54 + 30 = 84 (001010100)
+54 + 31 = 85 (001010101)
+54 + 32 = 86 (001010110)
+54 + 33 = 87 (001010111)
+54 + 34 = 88 (001011000)
+54 + 35 = 89 (001011001)
+54 + 36 = 90 (001011010)
+54 + 37 = 91 (001011011)
+54 + 38 = 92 (001011100)
+54 + 39 = 93 (001011101)
+54 + 40 = 94 (001011110)
+54 + 41 = 95 (001011111)
+54 + 42 = 96 (001100000)
+54 + 43 = 97 (001100001)
+54 + 44 = 98 (001100010)
+54 + 45 = 99 (001100011)
+54 + 46 = 100 (001100100)
+54 + 47 = 101 (001100101)
+54 + 48 = 102 (001100110)
+54 + 49 = 103 (001100111)
+54 + 50 = 104 (001101000)
+54 + 51 = 105 (001101001)
+54 + 52 = 106 (001101010)
+54 + 53 = 107 (001101011)
+54 + 54 = 108 (001101100)
+54 + 55 = 109 (001101101)
+54 + 56 = 110 (001101110)
+54 + 57 = 111 (001101111)
+54 + 58 = 112 (001110000)
+54 + 59 = 113 (001110001)
+54 + 60 = 114 (001110010)
+54 + 61 = 115 (001110011)
+54 + 62 = 116 (001110100)
+54 + 63 = 117 (001110101)
+55 + 0 = 55 (000110111)
+55 + 1 = 56 (000111000)
+55 + 2 = 57 (000111001)
+55 + 3 = 58 (000111010)
+55 + 4 = 59 (000111011)
+55 + 5 = 60 (000111100)
+55 + 6 = 61 (000111101)
+55 + 7 = 62 (000111110)
+55 + 8 = 63 (000111111)
+55 + 9 = 64 (001000000)
+55 + 10 = 65 (001000001)
+55 + 11 = 66 (001000010)
+55 + 12 = 67 (001000011)
+55 + 13 = 68 (001000100)
+55 + 14 = 69 (001000101)
+55 + 15 = 70 (001000110)
+55 + 16 = 71 (001000111)
+55 + 17 = 72 (001001000)
+55 + 18 = 73 (001001001)
+55 + 19 = 74 (001001010)
+55 + 20 = 75 (001001011)
+55 + 21 = 76 (001001100)
+55 + 22 = 77 (001001101)
+55 + 23 = 78 (001001110)
+55 + 24 = 79 (001001111)
+55 + 25 = 80 (001010000)
+55 + 26 = 81 (001010001)
+55 + 27 = 82 (001010010)
+55 + 28 = 83 (001010011)
+55 + 29 = 84 (001010100)
+55 + 30 = 85 (001010101)
+55 + 31 = 86 (001010110)
+55 + 32 = 87 (001010111)
+55 + 33 = 88 (001011000)
+55 + 34 = 89 (001011001)
+55 + 35 = 90 (001011010)
+55 + 36 = 91 (001011011)
+55 + 37 = 92 (001011100)
+55 + 38 = 93 (001011101)
+55 + 39 = 94 (001011110)
+55 + 40 = 95 (001011111)
+55 + 41 = 96 (001100000)
+55 + 42 = 97 (001100001)
+55 + 43 = 98 (001100010)
+55 + 44 = 99 (001100011)
+55 + 45 = 100 (001100100)
+55 + 46 = 101 (001100101)
+55 + 47 = 102 (001100110)
+55 + 48 = 103 (001100111)
+55 + 49 = 104 (001101000)
+55 + 50 = 105 (001101001)
+55 + 51 = 106 (001101010)
+55 + 52 = 107 (001101011)
+55 + 53 = 108 (001101100)
+55 + 54 = 109 (001101101)
+55 + 55 = 110 (001101110)
+55 + 56 = 111 (001101111)
+55 + 57 = 112 (001110000)
+55 + 58 = 113 (001110001)
+55 + 59 = 114 (001110010)
+55 + 60 = 115 (001110011)
+55 + 61 = 116 (001110100)
+55 + 62 = 117 (001110101)
+55 + 63 = 118 (001110110)
+56 + 0 = 56 (000111000)
+56 + 1 = 57 (000111001)
+56 + 2 = 58 (000111010)
+56 + 3 = 59 (000111011)
+56 + 4 = 60 (000111100)
+56 + 5 = 61 (000111101)
+56 + 6 = 62 (000111110)
+56 + 7 = 63 (000111111)
+56 + 8 = 64 (001000000)
+56 + 9 = 65 (001000001)
+56 + 10 = 66 (001000010)
+56 + 11 = 67 (001000011)
+56 + 12 = 68 (001000100)
+56 + 13 = 69 (001000101)
+56 + 14 = 70 (001000110)
+56 + 15 = 71 (001000111)
+56 + 16 = 72 (001001000)
+56 + 17 = 73 (001001001)
+56 + 18 = 74 (001001010)
+56 + 19 = 75 (001001011)
+56 + 20 = 76 (001001100)
+56 + 21 = 77 (001001101)
+56 + 22 = 78 (001001110)
+56 + 23 = 79 (001001111)
+56 + 24 = 80 (001010000)
+56 + 25 = 81 (001010001)
+56 + 26 = 82 (001010010)
+56 + 27 = 83 (001010011)
+56 + 28 = 84 (001010100)
+56 + 29 = 85 (001010101)
+56 + 30 = 86 (001010110)
+56 + 31 = 87 (001010111)
+56 + 32 = 88 (001011000)
+56 + 33 = 89 (001011001)
+56 + 34 = 90 (001011010)
+56 + 35 = 91 (001011011)
+56 + 36 = 92 (001011100)
+56 + 37 = 93 (001011101)
+56 + 38 = 94 (001011110)
+56 + 39 = 95 (001011111)
+56 + 40 = 96 (001100000)
+56 + 41 = 97 (001100001)
+56 + 42 = 98 (001100010)
+56 + 43 = 99 (001100011)
+56 + 44 = 100 (001100100)
+56 + 45 = 101 (001100101)
+56 + 46 = 102 (001100110)
+56 + 47 = 103 (001100111)
+56 + 48 = 104 (001101000)
+56 + 49 = 105 (001101001)
+56 + 50 = 106 (001101010)
+56 + 51 = 107 (001101011)
+56 + 52 = 108 (001101100)
+56 + 53 = 109 (001101101)
+56 + 54 = 110 (001101110)
+56 + 55 = 111 (001101111)
+56 + 56 = 112 (001110000)
+56 + 57 = 113 (001110001)
+56 + 58 = 114 (001110010)
+56 + 59 = 115 (001110011)
+56 + 60 = 116 (001110100)
+56 + 61 = 117 (001110101)
+56 + 62 = 118 (001110110)
+56 + 63 = 119 (001110111)
+57 + 0 = 57 (000111001)
+57 + 1 = 58 (000111010)
+57 + 2 = 59 (000111011)
+57 + 3 = 60 (000111100)
+57 + 4 = 61 (000111101)
+57 + 5 = 62 (000111110)
+57 + 6 = 63 (000111111)
+57 + 7 = 64 (001000000)
+57 + 8 = 65 (001000001)
+57 + 9 = 66 (001000010)
+57 + 10 = 67 (001000011)
+57 + 11 = 68 (001000100)
+57 + 12 = 69 (001000101)
+57 + 13 = 70 (001000110)
+57 + 14 = 71 (001000111)
+57 + 15 = 72 (001001000)
+57 + 16 = 73 (001001001)
+57 + 17 = 74 (001001010)
+57 + 18 = 75 (001001011)
+57 + 19 = 76 (001001100)
+57 + 20 = 77 (001001101)
+57 + 21 = 78 (001001110)
+57 + 22 = 79 (001001111)
+57 + 23 = 80 (001010000)
+57 + 24 = 81 (001010001)
+57 + 25 = 82 (001010010)
+57 + 26 = 83 (001010011)
+57 + 27 = 84 (001010100)
+57 + 28 = 85 (001010101)
+57 + 29 = 86 (001010110)
+57 + 30 = 87 (001010111)
+57 + 31 = 88 (001011000)
+57 + 32 = 89 (001011001)
+57 + 33 = 90 (001011010)
+57 + 34 = 91 (001011011)
+57 + 35 = 92 (001011100)
+57 + 36 = 93 (001011101)
+57 + 37 = 94 (001011110)
+57 + 38 = 95 (001011111)
+57 + 39 = 96 (001100000)
+57 + 40 = 97 (001100001)
+57 + 41 = 98 (001100010)
+57 + 42 = 99 (001100011)
+57 + 43 = 100 (001100100)
+57 + 44 = 101 (001100101)
+57 + 45 = 102 (001100110)
+57 + 46 = 103 (001100111)
+57 + 47 = 104 (001101000)
+57 + 48 = 105 (001101001)
+57 + 49 = 106 (001101010)
+57 + 50 = 107 (001101011)
+57 + 51 = 108 (001101100)
+57 + 52 = 109 (001101101)
+57 + 53 = 110 (001101110)
+57 + 54 = 111 (001101111)
+57 + 55 = 112 (001110000)
+57 + 56 = 113 (001110001)
+57 + 57 = 114 (001110010)
+57 + 58 = 115 (001110011)
+57 + 59 = 116 (001110100)
+57 + 60 = 117 (001110101)
+57 + 61 = 118 (001110110)
+57 + 62 = 119 (001110111)
+57 + 63 = 120 (001111000)
+58 + 0 = 58 (000111010)
+58 + 1 = 59 (000111011)
+58 + 2 = 60 (000111100)
+58 + 3 = 61 (000111101)
+58 + 4 = 62 (000111110)
+58 + 5 = 63 (000111111)
+58 + 6 = 64 (001000000)
+58 + 7 = 65 (001000001)
+58 + 8 = 66 (001000010)
+58 + 9 = 67 (001000011)
+58 + 10 = 68 (001000100)
+58 + 11 = 69 (001000101)
+58 + 12 = 70 (001000110)
+58 + 13 = 71 (001000111)
+58 + 14 = 72 (001001000)
+58 + 15 = 73 (001001001)
+58 + 16 = 74 (001001010)
+58 + 17 = 75 (001001011)
+58 + 18 = 76 (001001100)
+58 + 19 = 77 (001001101)
+58 + 20 = 78 (001001110)
+58 + 21 = 79 (001001111)
+58 + 22 = 80 (001010000)
+58 + 23 = 81 (001010001)
+58 + 24 = 82 (001010010)
+58 + 25 = 83 (001010011)
+58 + 26 = 84 (001010100)
+58 + 27 = 85 (001010101)
+58 + 28 = 86 (001010110)
+58 + 29 = 87 (001010111)
+58 + 30 = 88 (001011000)
+58 + 31 = 89 (001011001)
+58 + 32 = 90 (001011010)
+58 + 33 = 91 (001011011)
+58 + 34 = 92 (001011100)
+58 + 35 = 93 (001011101)
+58 + 36 = 94 (001011110)
+58 + 37 = 95 (001011111)
+58 + 38 = 96 (001100000)
+58 + 39 = 97 (001100001)
+58 + 40 = 98 (001100010)
+58 + 41 = 99 (001100011)
+58 + 42 = 100 (001100100)
+58 + 43 = 101 (001100101)
+58 + 44 = 102 (001100110)
+58 + 45 = 103 (001100111)
+58 + 46 = 104 (001101000)
+58 + 47 = 105 (001101001)
+58 + 48 = 106 (001101010)
+58 + 49 = 107 (001101011)
+58 + 50 = 108 (001101100)
+58 + 51 = 109 (001101101)
+58 + 52 = 110 (001101110)
+58 + 53 = 111 (001101111)
+58 + 54 = 112 (001110000)
+58 + 55 = 113 (001110001)
+58 + 56 = 114 (001110010)
+58 + 57 = 115 (001110011)
+58 + 58 = 116 (001110100)
+58 + 59 = 117 (001110101)
+58 + 60 = 118 (001110110)
+58 + 61 = 119 (001110111)
+58 + 62 = 120 (001111000)
+58 + 63 = 121 (001111001)
+59 + 0 = 59 (000111011)
+59 + 1 = 60 (000111100)
+59 + 2 = 61 (000111101)
+59 + 3 = 62 (000111110)
+59 + 4 = 63 (000111111)
+59 + 5 = 64 (001000000)
+59 + 6 = 65 (001000001)
+59 + 7 = 66 (001000010)
+59 + 8 = 67 (001000011)
+59 + 9 = 68 (001000100)
+59 + 10 = 69 (001000101)
+59 + 11 = 70 (001000110)
+59 + 12 = 71 (001000111)
+59 + 13 = 72 (001001000)
+59 + 14 = 73 (001001001)
+59 + 15 = 74 (001001010)
+59 + 16 = 75 (001001011)
+59 + 17 = 76 (001001100)
+59 + 18 = 77 (001001101)
+59 + 19 = 78 (001001110)
+59 + 20 = 79 (001001111)
+59 + 21 = 80 (001010000)
+59 + 22 = 81 (001010001)
+59 + 23 = 82 (001010010)
+59 + 24 = 83 (001010011)
+59 + 25 = 84 (001010100)
+59 + 26 = 85 (001010101)
+59 + 27 = 86 (001010110)
+59 + 28 = 87 (001010111)
+59 + 29 = 88 (001011000)
+59 + 30 = 89 (001011001)
+59 + 31 = 90 (001011010)
+59 + 32 = 91 (001011011)
+59 + 33 = 92 (001011100)
+59 + 34 = 93 (001011101)
+59 + 35 = 94 (001011110)
+59 + 36 = 95 (001011111)
+59 + 37 = 96 (001100000)
+59 + 38 = 97 (001100001)
+59 + 39 = 98 (001100010)
+59 + 40 = 99 (001100011)
+59 + 41 = 100 (001100100)
+59 + 42 = 101 (001100101)
+59 + 43 = 102 (001100110)
+59 + 44 = 103 (001100111)
+59 + 45 = 104 (001101000)
+59 + 46 = 105 (001101001)
+59 + 47 = 106 (001101010)
+59 + 48 = 107 (001101011)
+59 + 49 = 108 (001101100)
+59 + 50 = 109 (001101101)
+59 + 51 = 110 (001101110)
+59 + 52 = 111 (001101111)
+59 + 53 = 112 (001110000)
+59 + 54 = 113 (001110001)
+59 + 55 = 114 (001110010)
+59 + 56 = 115 (001110011)
+59 + 57 = 116 (001110100)
+59 + 58 = 117 (001110101)
+59 + 59 = 118 (001110110)
+59 + 60 = 119 (001110111)
+59 + 61 = 120 (001111000)
+59 + 62 = 121 (001111001)
+59 + 63 = 122 (001111010)
+60 + 0 = 60 (000111100)
+60 + 1 = 61 (000111101)
+60 + 2 = 62 (000111110)
+60 + 3 = 63 (000111111)
+60 + 4 = 64 (001000000)
+60 + 5 = 65 (001000001)
+60 + 6 = 66 (001000010)
+60 + 7 = 67 (001000011)
+60 + 8 = 68 (001000100)
+60 + 9 = 69 (001000101)
+60 + 10 = 70 (001000110)
+60 + 11 = 71 (001000111)
+60 + 12 = 72 (001001000)
+60 + 13 = 73 (001001001)
+60 + 14 = 74 (001001010)
+60 + 15 = 75 (001001011)
+60 + 16 = 76 (001001100)
+60 + 17 = 77 (001001101)
+60 + 18 = 78 (001001110)
+60 + 19 = 79 (001001111)
+60 + 20 = 80 (001010000)
+60 + 21 = 81 (001010001)
+60 + 22 = 82 (001010010)
+60 + 23 = 83 (001010011)
+60 + 24 = 84 (001010100)
+60 + 25 = 85 (001010101)
+60 + 26 = 86 (001010110)
+60 + 27 = 87 (001010111)
+60 + 28 = 88 (001011000)
+60 + 29 = 89 (001011001)
+60 + 30 = 90 (001011010)
+60 + 31 = 91 (001011011)
+60 + 32 = 92 (001011100)
+60 + 33 = 93 (001011101)
+60 + 34 = 94 (001011110)
+60 + 35 = 95 (001011111)
+60 + 36 = 96 (001100000)
+60 + 37 = 97 (001100001)
+60 + 38 = 98 (001100010)
+60 + 39 = 99 (001100011)
+60 + 40 = 100 (001100100)
+60 + 41 = 101 (001100101)
+60 + 42 = 102 (001100110)
+60 + 43 = 103 (001100111)
+60 + 44 = 104 (001101000)
+60 + 45 = 105 (001101001)
+60 + 46 = 106 (001101010)
+60 + 47 = 107 (001101011)
+60 + 48 = 108 (001101100)
+60 + 49 = 109 (001101101)
+60 + 50 = 110 (001101110)
+60 + 51 = 111 (001101111)
+60 + 52 = 112 (001110000)
+60 + 53 = 113 (001110001)
+60 + 54 = 114 (001110010)
+60 + 55 = 115 (001110011)
+60 + 56 = 116 (001110100)
+60 + 57 = 117 (001110101)
+60 + 58 = 118 (001110110)
+60 + 59 = 119 (001110111)
+60 + 60 = 120 (001111000)
+60 + 61 = 121 (001111001)
+60 + 62 = 122 (001111010)
+60 + 63 = 123 (001111011)
+61 + 0 = 61 (000111101)
+61 + 1 = 62 (000111110)
+61 + 2 = 63 (000111111)
+61 + 3 = 64 (001000000)
+61 + 4 = 65 (001000001)
+61 + 5 = 66 (001000010)
+61 + 6 = 67 (001000011)
+61 + 7 = 68 (001000100)
+61 + 8 = 69 (001000101)
+61 + 9 = 70 (001000110)
+61 + 10 = 71 (001000111)
+61 + 11 = 72 (001001000)
+61 + 12 = 73 (001001001)
+61 + 13 = 74 (001001010)
+61 + 14 = 75 (001001011)
+61 + 15 = 76 (001001100)
+61 + 16 = 77 (001001101)
+61 + 17 = 78 (001001110)
+61 + 18 = 79 (001001111)
+61 + 19 = 80 (001010000)
+61 + 20 = 81 (001010001)
+61 + 21 = 82 (001010010)
+61 + 22 = 83 (001010011)
+61 + 23 = 84 (001010100)
+61 + 24 = 85 (001010101)
+61 + 25 = 86 (001010110)
+61 + 26 = 87 (001010111)
+61 + 27 = 88 (001011000)
+61 + 28 = 89 (001011001)
+61 + 29 = 90 (001011010)
+61 + 30 = 91 (001011011)
+61 + 31 = 92 (001011100)
+61 + 32 = 93 (001011101)
+61 + 33 = 94 (001011110)
+61 + 34 = 95 (001011111)
+61 + 35 = 96 (001100000)
+61 + 36 = 97 (001100001)
+61 + 37 = 98 (001100010)
+61 + 38 = 99 (001100011)
+61 + 39 = 100 (001100100)
+61 + 40 = 101 (001100101)
+61 + 41 = 102 (001100110)
+61 + 42 = 103 (001100111)
+61 + 43 = 104 (001101000)
+61 + 44 = 105 (001101001)
+61 + 45 = 106 (001101010)
+61 + 46 = 107 (001101011)
+61 + 47 = 108 (001101100)
+61 + 48 = 109 (001101101)
+61 + 49 = 110 (001101110)
+61 + 50 = 111 (001101111)
+61 + 51 = 112 (001110000)
+61 + 52 = 113 (001110001)
+61 + 53 = 114 (001110010)
+61 + 54 = 115 (001110011)
+61 + 55 = 116 (001110100)
+61 + 56 = 117 (001110101)
+61 + 57 = 118 (001110110)
+61 + 58 = 119 (001110111)
+61 + 59 = 120 (001111000)
+61 + 60 = 121 (001111001)
+61 + 61 = 122 (001111010)
+61 + 62 = 123 (001111011)
+61 + 63 = 124 (001111100)
+62 + 0 = 62 (000111110)
+62 + 1 = 63 (000111111)
+62 + 2 = 64 (001000000)
+62 + 3 = 65 (001000001)
+62 + 4 = 66 (001000010)
+62 + 5 = 67 (001000011)
+62 + 6 = 68 (001000100)
+62 + 7 = 69 (001000101)
+62 + 8 = 70 (001000110)
+62 + 9 = 71 (001000111)
+62 + 10 = 72 (001001000)
+62 + 11 = 73 (001001001)
+62 + 12 = 74 (001001010)
+62 + 13 = 75 (001001011)
+62 + 14 = 76 (001001100)
+62 + 15 = 77 (001001101)
+62 + 16 = 78 (001001110)
+62 + 17 = 79 (001001111)
+62 + 18 = 80 (001010000)
+62 + 19 = 81 (001010001)
+62 + 20 = 82 (001010010)
+62 + 21 = 83 (001010011)
+62 + 22 = 84 (001010100)
+62 + 23 = 85 (001010101)
+62 + 24 = 86 (001010110)
+62 + 25 = 87 (001010111)
+62 + 26 = 88 (001011000)
+62 + 27 = 89 (001011001)
+62 + 28 = 90 (001011010)
+62 + 29 = 91 (001011011)
+62 + 30 = 92 (001011100)
+62 + 31 = 93 (001011101)
+62 + 32 = 94 (001011110)
+62 + 33 = 95 (001011111)
+62 + 34 = 96 (001100000)
+62 + 35 = 97 (001100001)
+62 + 36 = 98 (001100010)
+62 + 37 = 99 (001100011)
+62 + 38 = 100 (001100100)
+62 + 39 = 101 (001100101)
+62 + 40 = 102 (001100110)
+62 + 41 = 103 (001100111)
+62 + 42 = 104 (001101000)
+62 + 43 = 105 (001101001)
+62 + 44 = 106 (001101010)
+62 + 45 = 107 (001101011)
+62 + 46 = 108 (001101100)
+62 + 47 = 109 (001101101)
+62 + 48 = 110 (001101110)
+62 + 49 = 111 (001101111)
+62 + 50 = 112 (001110000)
+62 + 51 = 113 (001110001)
+62 + 52 = 114 (001110010)
+62 + 53 = 115 (001110011)
+62 + 54 = 116 (001110100)
+62 + 55 = 117 (001110101)
+62 + 56 = 118 (001110110)
+62 + 57 = 119 (001110111)
+62 + 58 = 120 (001111000)
+62 + 59 = 121 (001111001)
+62 + 60 = 122 (001111010)
+62 + 61 = 123 (001111011)
+62 + 62 = 124 (001111100)
+62 + 63 = 125 (001111101)
+63 + 0 = 63 (000111111)
+63 + 1 = 64 (001000000)
+63 + 2 = 65 (001000001)
+63 + 3 = 66 (001000010)
+63 + 4 = 67 (001000011)
+63 + 5 = 68 (001000100)
+63 + 6 = 69 (001000101)
+63 + 7 = 70 (001000110)
+63 + 8 = 71 (001000111)
+63 + 9 = 72 (001001000)
+63 + 10 = 73 (001001001)
+63 + 11 = 74 (001001010)
+63 + 12 = 75 (001001011)
+63 + 13 = 76 (001001100)
+63 + 14 = 77 (001001101)
+63 + 15 = 78 (001001110)
+63 + 16 = 79 (001001111)
+63 + 17 = 80 (001010000)
+63 + 18 = 81 (001010001)
+63 + 19 = 82 (001010010)
+63 + 20 = 83 (001010011)
+63 + 21 = 84 (001010100)
+63 + 22 = 85 (001010101)
+63 + 23 = 86 (001010110)
+63 + 24 = 87 (001010111)
+63 + 25 = 88 (001011000)
+63 + 26 = 89 (001011001)
+63 + 27 = 90 (001011010)
+63 + 28 = 91 (001011011)
+63 + 29 = 92 (001011100)
+63 + 30 = 93 (001011101)
+63 + 31 = 94 (001011110)
+63 + 32 = 95 (001011111)
+63 + 33 = 96 (001100000)
+63 + 34 = 97 (001100001)
+63 + 35 = 98 (001100010)
+63 + 36 = 99 (001100011)
+63 + 37 = 100 (001100100)
+63 + 38 = 101 (001100101)
+63 + 39 = 102 (001100110)
+63 + 40 = 103 (001100111)
+63 + 41 = 104 (001101000)
+63 + 42 = 105 (001101001)
+63 + 43 = 106 (001101010)
+63 + 44 = 107 (001101011)
+63 + 45 = 108 (001101100)
+63 + 46 = 109 (001101101)
+63 + 47 = 110 (001101110)
+63 + 48 = 111 (001101111)
+63 + 49 = 112 (001110000)
+63 + 50 = 113 (001110001)
+63 + 51 = 114 (001110010)
+63 + 52 = 115 (001110011)
+63 + 53 = 116 (001110100)
+63 + 54 = 117 (001110101)
+63 + 55 = 118 (001110110)
+63 + 56 = 119 (001110111)
+63 + 57 = 120 (001111000)
+63 + 58 = 121 (001111001)
+63 + 59 = 122 (001111010)
+63 + 60 = 123 (001111011)
+63 + 61 = 124 (001111100)
+63 + 62 = 125 (001111101)
+63 + 63 = 126 (001111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/main.cpp
new file mode 100644
index 000000000..5c1049d14
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 9-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 9;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector9 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/stimgen.h
new file mode 100644
index 000000000..3988984dd
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/extension/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector9& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector9& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/common.h
new file mode 100644
index 000000000..e838eacda
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/common.h
@@ -0,0 +1,47 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<6> bool_vector;
+
+typedef sc_signal<bool_vector> signal_bool_vector;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/datawidth.cpp
new file mode 100644
index 000000000..0bf98cd87
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector tmp_a;
+ bool_vector tmp_b;
+ bool_vector tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/datawidth.h
new file mode 100644
index 000000000..a8aaf9061
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector& in1;
+ const signal_bool_vector& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector& IN1,
+ const signal_bool_vector& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/golden/lost_carry.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/golden/lost_carry.log
new file mode 100644
index 000000000..32a6933bf
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/golden/lost_carry.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+16 + 0 = 16 (010000)
+16 + 1 = 17 (010001)
+16 + 2 = 18 (010010)
+16 + 3 = 19 (010011)
+16 + 4 = 20 (010100)
+16 + 5 = 21 (010101)
+16 + 6 = 22 (010110)
+16 + 7 = 23 (010111)
+16 + 8 = 24 (011000)
+16 + 9 = 25 (011001)
+16 + 10 = 26 (011010)
+16 + 11 = 27 (011011)
+16 + 12 = 28 (011100)
+16 + 13 = 29 (011101)
+16 + 14 = 30 (011110)
+16 + 15 = 31 (011111)
+16 + 16 = 32 (100000)
+16 + 17 = 33 (100001)
+16 + 18 = 34 (100010)
+16 + 19 = 35 (100011)
+16 + 20 = 36 (100100)
+16 + 21 = 37 (100101)
+16 + 22 = 38 (100110)
+16 + 23 = 39 (100111)
+16 + 24 = 40 (101000)
+16 + 25 = 41 (101001)
+16 + 26 = 42 (101010)
+16 + 27 = 43 (101011)
+16 + 28 = 44 (101100)
+16 + 29 = 45 (101101)
+16 + 30 = 46 (101110)
+16 + 31 = 47 (101111)
+16 + 32 = 48 (110000)
+16 + 33 = 49 (110001)
+16 + 34 = 50 (110010)
+16 + 35 = 51 (110011)
+16 + 36 = 52 (110100)
+16 + 37 = 53 (110101)
+16 + 38 = 54 (110110)
+16 + 39 = 55 (110111)
+16 + 40 = 56 (111000)
+16 + 41 = 57 (111001)
+16 + 42 = 58 (111010)
+16 + 43 = 59 (111011)
+16 + 44 = 60 (111100)
+16 + 45 = 61 (111101)
+16 + 46 = 62 (111110)
+16 + 47 = 63 (111111)
+16 + 48 = 0 (000000)
+16 + 49 = 1 (000001)
+16 + 50 = 2 (000010)
+16 + 51 = 3 (000011)
+16 + 52 = 4 (000100)
+16 + 53 = 5 (000101)
+16 + 54 = 6 (000110)
+16 + 55 = 7 (000111)
+16 + 56 = 8 (001000)
+16 + 57 = 9 (001001)
+16 + 58 = 10 (001010)
+16 + 59 = 11 (001011)
+16 + 60 = 12 (001100)
+16 + 61 = 13 (001101)
+16 + 62 = 14 (001110)
+16 + 63 = 15 (001111)
+17 + 0 = 17 (010001)
+17 + 1 = 18 (010010)
+17 + 2 = 19 (010011)
+17 + 3 = 20 (010100)
+17 + 4 = 21 (010101)
+17 + 5 = 22 (010110)
+17 + 6 = 23 (010111)
+17 + 7 = 24 (011000)
+17 + 8 = 25 (011001)
+17 + 9 = 26 (011010)
+17 + 10 = 27 (011011)
+17 + 11 = 28 (011100)
+17 + 12 = 29 (011101)
+17 + 13 = 30 (011110)
+17 + 14 = 31 (011111)
+17 + 15 = 32 (100000)
+17 + 16 = 33 (100001)
+17 + 17 = 34 (100010)
+17 + 18 = 35 (100011)
+17 + 19 = 36 (100100)
+17 + 20 = 37 (100101)
+17 + 21 = 38 (100110)
+17 + 22 = 39 (100111)
+17 + 23 = 40 (101000)
+17 + 24 = 41 (101001)
+17 + 25 = 42 (101010)
+17 + 26 = 43 (101011)
+17 + 27 = 44 (101100)
+17 + 28 = 45 (101101)
+17 + 29 = 46 (101110)
+17 + 30 = 47 (101111)
+17 + 31 = 48 (110000)
+17 + 32 = 49 (110001)
+17 + 33 = 50 (110010)
+17 + 34 = 51 (110011)
+17 + 35 = 52 (110100)
+17 + 36 = 53 (110101)
+17 + 37 = 54 (110110)
+17 + 38 = 55 (110111)
+17 + 39 = 56 (111000)
+17 + 40 = 57 (111001)
+17 + 41 = 58 (111010)
+17 + 42 = 59 (111011)
+17 + 43 = 60 (111100)
+17 + 44 = 61 (111101)
+17 + 45 = 62 (111110)
+17 + 46 = 63 (111111)
+17 + 47 = 0 (000000)
+17 + 48 = 1 (000001)
+17 + 49 = 2 (000010)
+17 + 50 = 3 (000011)
+17 + 51 = 4 (000100)
+17 + 52 = 5 (000101)
+17 + 53 = 6 (000110)
+17 + 54 = 7 (000111)
+17 + 55 = 8 (001000)
+17 + 56 = 9 (001001)
+17 + 57 = 10 (001010)
+17 + 58 = 11 (001011)
+17 + 59 = 12 (001100)
+17 + 60 = 13 (001101)
+17 + 61 = 14 (001110)
+17 + 62 = 15 (001111)
+17 + 63 = 16 (010000)
+18 + 0 = 18 (010010)
+18 + 1 = 19 (010011)
+18 + 2 = 20 (010100)
+18 + 3 = 21 (010101)
+18 + 4 = 22 (010110)
+18 + 5 = 23 (010111)
+18 + 6 = 24 (011000)
+18 + 7 = 25 (011001)
+18 + 8 = 26 (011010)
+18 + 9 = 27 (011011)
+18 + 10 = 28 (011100)
+18 + 11 = 29 (011101)
+18 + 12 = 30 (011110)
+18 + 13 = 31 (011111)
+18 + 14 = 32 (100000)
+18 + 15 = 33 (100001)
+18 + 16 = 34 (100010)
+18 + 17 = 35 (100011)
+18 + 18 = 36 (100100)
+18 + 19 = 37 (100101)
+18 + 20 = 38 (100110)
+18 + 21 = 39 (100111)
+18 + 22 = 40 (101000)
+18 + 23 = 41 (101001)
+18 + 24 = 42 (101010)
+18 + 25 = 43 (101011)
+18 + 26 = 44 (101100)
+18 + 27 = 45 (101101)
+18 + 28 = 46 (101110)
+18 + 29 = 47 (101111)
+18 + 30 = 48 (110000)
+18 + 31 = 49 (110001)
+18 + 32 = 50 (110010)
+18 + 33 = 51 (110011)
+18 + 34 = 52 (110100)
+18 + 35 = 53 (110101)
+18 + 36 = 54 (110110)
+18 + 37 = 55 (110111)
+18 + 38 = 56 (111000)
+18 + 39 = 57 (111001)
+18 + 40 = 58 (111010)
+18 + 41 = 59 (111011)
+18 + 42 = 60 (111100)
+18 + 43 = 61 (111101)
+18 + 44 = 62 (111110)
+18 + 45 = 63 (111111)
+18 + 46 = 0 (000000)
+18 + 47 = 1 (000001)
+18 + 48 = 2 (000010)
+18 + 49 = 3 (000011)
+18 + 50 = 4 (000100)
+18 + 51 = 5 (000101)
+18 + 52 = 6 (000110)
+18 + 53 = 7 (000111)
+18 + 54 = 8 (001000)
+18 + 55 = 9 (001001)
+18 + 56 = 10 (001010)
+18 + 57 = 11 (001011)
+18 + 58 = 12 (001100)
+18 + 59 = 13 (001101)
+18 + 60 = 14 (001110)
+18 + 61 = 15 (001111)
+18 + 62 = 16 (010000)
+18 + 63 = 17 (010001)
+19 + 0 = 19 (010011)
+19 + 1 = 20 (010100)
+19 + 2 = 21 (010101)
+19 + 3 = 22 (010110)
+19 + 4 = 23 (010111)
+19 + 5 = 24 (011000)
+19 + 6 = 25 (011001)
+19 + 7 = 26 (011010)
+19 + 8 = 27 (011011)
+19 + 9 = 28 (011100)
+19 + 10 = 29 (011101)
+19 + 11 = 30 (011110)
+19 + 12 = 31 (011111)
+19 + 13 = 32 (100000)
+19 + 14 = 33 (100001)
+19 + 15 = 34 (100010)
+19 + 16 = 35 (100011)
+19 + 17 = 36 (100100)
+19 + 18 = 37 (100101)
+19 + 19 = 38 (100110)
+19 + 20 = 39 (100111)
+19 + 21 = 40 (101000)
+19 + 22 = 41 (101001)
+19 + 23 = 42 (101010)
+19 + 24 = 43 (101011)
+19 + 25 = 44 (101100)
+19 + 26 = 45 (101101)
+19 + 27 = 46 (101110)
+19 + 28 = 47 (101111)
+19 + 29 = 48 (110000)
+19 + 30 = 49 (110001)
+19 + 31 = 50 (110010)
+19 + 32 = 51 (110011)
+19 + 33 = 52 (110100)
+19 + 34 = 53 (110101)
+19 + 35 = 54 (110110)
+19 + 36 = 55 (110111)
+19 + 37 = 56 (111000)
+19 + 38 = 57 (111001)
+19 + 39 = 58 (111010)
+19 + 40 = 59 (111011)
+19 + 41 = 60 (111100)
+19 + 42 = 61 (111101)
+19 + 43 = 62 (111110)
+19 + 44 = 63 (111111)
+19 + 45 = 0 (000000)
+19 + 46 = 1 (000001)
+19 + 47 = 2 (000010)
+19 + 48 = 3 (000011)
+19 + 49 = 4 (000100)
+19 + 50 = 5 (000101)
+19 + 51 = 6 (000110)
+19 + 52 = 7 (000111)
+19 + 53 = 8 (001000)
+19 + 54 = 9 (001001)
+19 + 55 = 10 (001010)
+19 + 56 = 11 (001011)
+19 + 57 = 12 (001100)
+19 + 58 = 13 (001101)
+19 + 59 = 14 (001110)
+19 + 60 = 15 (001111)
+19 + 61 = 16 (010000)
+19 + 62 = 17 (010001)
+19 + 63 = 18 (010010)
+20 + 0 = 20 (010100)
+20 + 1 = 21 (010101)
+20 + 2 = 22 (010110)
+20 + 3 = 23 (010111)
+20 + 4 = 24 (011000)
+20 + 5 = 25 (011001)
+20 + 6 = 26 (011010)
+20 + 7 = 27 (011011)
+20 + 8 = 28 (011100)
+20 + 9 = 29 (011101)
+20 + 10 = 30 (011110)
+20 + 11 = 31 (011111)
+20 + 12 = 32 (100000)
+20 + 13 = 33 (100001)
+20 + 14 = 34 (100010)
+20 + 15 = 35 (100011)
+20 + 16 = 36 (100100)
+20 + 17 = 37 (100101)
+20 + 18 = 38 (100110)
+20 + 19 = 39 (100111)
+20 + 20 = 40 (101000)
+20 + 21 = 41 (101001)
+20 + 22 = 42 (101010)
+20 + 23 = 43 (101011)
+20 + 24 = 44 (101100)
+20 + 25 = 45 (101101)
+20 + 26 = 46 (101110)
+20 + 27 = 47 (101111)
+20 + 28 = 48 (110000)
+20 + 29 = 49 (110001)
+20 + 30 = 50 (110010)
+20 + 31 = 51 (110011)
+20 + 32 = 52 (110100)
+20 + 33 = 53 (110101)
+20 + 34 = 54 (110110)
+20 + 35 = 55 (110111)
+20 + 36 = 56 (111000)
+20 + 37 = 57 (111001)
+20 + 38 = 58 (111010)
+20 + 39 = 59 (111011)
+20 + 40 = 60 (111100)
+20 + 41 = 61 (111101)
+20 + 42 = 62 (111110)
+20 + 43 = 63 (111111)
+20 + 44 = 0 (000000)
+20 + 45 = 1 (000001)
+20 + 46 = 2 (000010)
+20 + 47 = 3 (000011)
+20 + 48 = 4 (000100)
+20 + 49 = 5 (000101)
+20 + 50 = 6 (000110)
+20 + 51 = 7 (000111)
+20 + 52 = 8 (001000)
+20 + 53 = 9 (001001)
+20 + 54 = 10 (001010)
+20 + 55 = 11 (001011)
+20 + 56 = 12 (001100)
+20 + 57 = 13 (001101)
+20 + 58 = 14 (001110)
+20 + 59 = 15 (001111)
+20 + 60 = 16 (010000)
+20 + 61 = 17 (010001)
+20 + 62 = 18 (010010)
+20 + 63 = 19 (010011)
+21 + 0 = 21 (010101)
+21 + 1 = 22 (010110)
+21 + 2 = 23 (010111)
+21 + 3 = 24 (011000)
+21 + 4 = 25 (011001)
+21 + 5 = 26 (011010)
+21 + 6 = 27 (011011)
+21 + 7 = 28 (011100)
+21 + 8 = 29 (011101)
+21 + 9 = 30 (011110)
+21 + 10 = 31 (011111)
+21 + 11 = 32 (100000)
+21 + 12 = 33 (100001)
+21 + 13 = 34 (100010)
+21 + 14 = 35 (100011)
+21 + 15 = 36 (100100)
+21 + 16 = 37 (100101)
+21 + 17 = 38 (100110)
+21 + 18 = 39 (100111)
+21 + 19 = 40 (101000)
+21 + 20 = 41 (101001)
+21 + 21 = 42 (101010)
+21 + 22 = 43 (101011)
+21 + 23 = 44 (101100)
+21 + 24 = 45 (101101)
+21 + 25 = 46 (101110)
+21 + 26 = 47 (101111)
+21 + 27 = 48 (110000)
+21 + 28 = 49 (110001)
+21 + 29 = 50 (110010)
+21 + 30 = 51 (110011)
+21 + 31 = 52 (110100)
+21 + 32 = 53 (110101)
+21 + 33 = 54 (110110)
+21 + 34 = 55 (110111)
+21 + 35 = 56 (111000)
+21 + 36 = 57 (111001)
+21 + 37 = 58 (111010)
+21 + 38 = 59 (111011)
+21 + 39 = 60 (111100)
+21 + 40 = 61 (111101)
+21 + 41 = 62 (111110)
+21 + 42 = 63 (111111)
+21 + 43 = 0 (000000)
+21 + 44 = 1 (000001)
+21 + 45 = 2 (000010)
+21 + 46 = 3 (000011)
+21 + 47 = 4 (000100)
+21 + 48 = 5 (000101)
+21 + 49 = 6 (000110)
+21 + 50 = 7 (000111)
+21 + 51 = 8 (001000)
+21 + 52 = 9 (001001)
+21 + 53 = 10 (001010)
+21 + 54 = 11 (001011)
+21 + 55 = 12 (001100)
+21 + 56 = 13 (001101)
+21 + 57 = 14 (001110)
+21 + 58 = 15 (001111)
+21 + 59 = 16 (010000)
+21 + 60 = 17 (010001)
+21 + 61 = 18 (010010)
+21 + 62 = 19 (010011)
+21 + 63 = 20 (010100)
+22 + 0 = 22 (010110)
+22 + 1 = 23 (010111)
+22 + 2 = 24 (011000)
+22 + 3 = 25 (011001)
+22 + 4 = 26 (011010)
+22 + 5 = 27 (011011)
+22 + 6 = 28 (011100)
+22 + 7 = 29 (011101)
+22 + 8 = 30 (011110)
+22 + 9 = 31 (011111)
+22 + 10 = 32 (100000)
+22 + 11 = 33 (100001)
+22 + 12 = 34 (100010)
+22 + 13 = 35 (100011)
+22 + 14 = 36 (100100)
+22 + 15 = 37 (100101)
+22 + 16 = 38 (100110)
+22 + 17 = 39 (100111)
+22 + 18 = 40 (101000)
+22 + 19 = 41 (101001)
+22 + 20 = 42 (101010)
+22 + 21 = 43 (101011)
+22 + 22 = 44 (101100)
+22 + 23 = 45 (101101)
+22 + 24 = 46 (101110)
+22 + 25 = 47 (101111)
+22 + 26 = 48 (110000)
+22 + 27 = 49 (110001)
+22 + 28 = 50 (110010)
+22 + 29 = 51 (110011)
+22 + 30 = 52 (110100)
+22 + 31 = 53 (110101)
+22 + 32 = 54 (110110)
+22 + 33 = 55 (110111)
+22 + 34 = 56 (111000)
+22 + 35 = 57 (111001)
+22 + 36 = 58 (111010)
+22 + 37 = 59 (111011)
+22 + 38 = 60 (111100)
+22 + 39 = 61 (111101)
+22 + 40 = 62 (111110)
+22 + 41 = 63 (111111)
+22 + 42 = 0 (000000)
+22 + 43 = 1 (000001)
+22 + 44 = 2 (000010)
+22 + 45 = 3 (000011)
+22 + 46 = 4 (000100)
+22 + 47 = 5 (000101)
+22 + 48 = 6 (000110)
+22 + 49 = 7 (000111)
+22 + 50 = 8 (001000)
+22 + 51 = 9 (001001)
+22 + 52 = 10 (001010)
+22 + 53 = 11 (001011)
+22 + 54 = 12 (001100)
+22 + 55 = 13 (001101)
+22 + 56 = 14 (001110)
+22 + 57 = 15 (001111)
+22 + 58 = 16 (010000)
+22 + 59 = 17 (010001)
+22 + 60 = 18 (010010)
+22 + 61 = 19 (010011)
+22 + 62 = 20 (010100)
+22 + 63 = 21 (010101)
+23 + 0 = 23 (010111)
+23 + 1 = 24 (011000)
+23 + 2 = 25 (011001)
+23 + 3 = 26 (011010)
+23 + 4 = 27 (011011)
+23 + 5 = 28 (011100)
+23 + 6 = 29 (011101)
+23 + 7 = 30 (011110)
+23 + 8 = 31 (011111)
+23 + 9 = 32 (100000)
+23 + 10 = 33 (100001)
+23 + 11 = 34 (100010)
+23 + 12 = 35 (100011)
+23 + 13 = 36 (100100)
+23 + 14 = 37 (100101)
+23 + 15 = 38 (100110)
+23 + 16 = 39 (100111)
+23 + 17 = 40 (101000)
+23 + 18 = 41 (101001)
+23 + 19 = 42 (101010)
+23 + 20 = 43 (101011)
+23 + 21 = 44 (101100)
+23 + 22 = 45 (101101)
+23 + 23 = 46 (101110)
+23 + 24 = 47 (101111)
+23 + 25 = 48 (110000)
+23 + 26 = 49 (110001)
+23 + 27 = 50 (110010)
+23 + 28 = 51 (110011)
+23 + 29 = 52 (110100)
+23 + 30 = 53 (110101)
+23 + 31 = 54 (110110)
+23 + 32 = 55 (110111)
+23 + 33 = 56 (111000)
+23 + 34 = 57 (111001)
+23 + 35 = 58 (111010)
+23 + 36 = 59 (111011)
+23 + 37 = 60 (111100)
+23 + 38 = 61 (111101)
+23 + 39 = 62 (111110)
+23 + 40 = 63 (111111)
+23 + 41 = 0 (000000)
+23 + 42 = 1 (000001)
+23 + 43 = 2 (000010)
+23 + 44 = 3 (000011)
+23 + 45 = 4 (000100)
+23 + 46 = 5 (000101)
+23 + 47 = 6 (000110)
+23 + 48 = 7 (000111)
+23 + 49 = 8 (001000)
+23 + 50 = 9 (001001)
+23 + 51 = 10 (001010)
+23 + 52 = 11 (001011)
+23 + 53 = 12 (001100)
+23 + 54 = 13 (001101)
+23 + 55 = 14 (001110)
+23 + 56 = 15 (001111)
+23 + 57 = 16 (010000)
+23 + 58 = 17 (010001)
+23 + 59 = 18 (010010)
+23 + 60 = 19 (010011)
+23 + 61 = 20 (010100)
+23 + 62 = 21 (010101)
+23 + 63 = 22 (010110)
+24 + 0 = 24 (011000)
+24 + 1 = 25 (011001)
+24 + 2 = 26 (011010)
+24 + 3 = 27 (011011)
+24 + 4 = 28 (011100)
+24 + 5 = 29 (011101)
+24 + 6 = 30 (011110)
+24 + 7 = 31 (011111)
+24 + 8 = 32 (100000)
+24 + 9 = 33 (100001)
+24 + 10 = 34 (100010)
+24 + 11 = 35 (100011)
+24 + 12 = 36 (100100)
+24 + 13 = 37 (100101)
+24 + 14 = 38 (100110)
+24 + 15 = 39 (100111)
+24 + 16 = 40 (101000)
+24 + 17 = 41 (101001)
+24 + 18 = 42 (101010)
+24 + 19 = 43 (101011)
+24 + 20 = 44 (101100)
+24 + 21 = 45 (101101)
+24 + 22 = 46 (101110)
+24 + 23 = 47 (101111)
+24 + 24 = 48 (110000)
+24 + 25 = 49 (110001)
+24 + 26 = 50 (110010)
+24 + 27 = 51 (110011)
+24 + 28 = 52 (110100)
+24 + 29 = 53 (110101)
+24 + 30 = 54 (110110)
+24 + 31 = 55 (110111)
+24 + 32 = 56 (111000)
+24 + 33 = 57 (111001)
+24 + 34 = 58 (111010)
+24 + 35 = 59 (111011)
+24 + 36 = 60 (111100)
+24 + 37 = 61 (111101)
+24 + 38 = 62 (111110)
+24 + 39 = 63 (111111)
+24 + 40 = 0 (000000)
+24 + 41 = 1 (000001)
+24 + 42 = 2 (000010)
+24 + 43 = 3 (000011)
+24 + 44 = 4 (000100)
+24 + 45 = 5 (000101)
+24 + 46 = 6 (000110)
+24 + 47 = 7 (000111)
+24 + 48 = 8 (001000)
+24 + 49 = 9 (001001)
+24 + 50 = 10 (001010)
+24 + 51 = 11 (001011)
+24 + 52 = 12 (001100)
+24 + 53 = 13 (001101)
+24 + 54 = 14 (001110)
+24 + 55 = 15 (001111)
+24 + 56 = 16 (010000)
+24 + 57 = 17 (010001)
+24 + 58 = 18 (010010)
+24 + 59 = 19 (010011)
+24 + 60 = 20 (010100)
+24 + 61 = 21 (010101)
+24 + 62 = 22 (010110)
+24 + 63 = 23 (010111)
+25 + 0 = 25 (011001)
+25 + 1 = 26 (011010)
+25 + 2 = 27 (011011)
+25 + 3 = 28 (011100)
+25 + 4 = 29 (011101)
+25 + 5 = 30 (011110)
+25 + 6 = 31 (011111)
+25 + 7 = 32 (100000)
+25 + 8 = 33 (100001)
+25 + 9 = 34 (100010)
+25 + 10 = 35 (100011)
+25 + 11 = 36 (100100)
+25 + 12 = 37 (100101)
+25 + 13 = 38 (100110)
+25 + 14 = 39 (100111)
+25 + 15 = 40 (101000)
+25 + 16 = 41 (101001)
+25 + 17 = 42 (101010)
+25 + 18 = 43 (101011)
+25 + 19 = 44 (101100)
+25 + 20 = 45 (101101)
+25 + 21 = 46 (101110)
+25 + 22 = 47 (101111)
+25 + 23 = 48 (110000)
+25 + 24 = 49 (110001)
+25 + 25 = 50 (110010)
+25 + 26 = 51 (110011)
+25 + 27 = 52 (110100)
+25 + 28 = 53 (110101)
+25 + 29 = 54 (110110)
+25 + 30 = 55 (110111)
+25 + 31 = 56 (111000)
+25 + 32 = 57 (111001)
+25 + 33 = 58 (111010)
+25 + 34 = 59 (111011)
+25 + 35 = 60 (111100)
+25 + 36 = 61 (111101)
+25 + 37 = 62 (111110)
+25 + 38 = 63 (111111)
+25 + 39 = 0 (000000)
+25 + 40 = 1 (000001)
+25 + 41 = 2 (000010)
+25 + 42 = 3 (000011)
+25 + 43 = 4 (000100)
+25 + 44 = 5 (000101)
+25 + 45 = 6 (000110)
+25 + 46 = 7 (000111)
+25 + 47 = 8 (001000)
+25 + 48 = 9 (001001)
+25 + 49 = 10 (001010)
+25 + 50 = 11 (001011)
+25 + 51 = 12 (001100)
+25 + 52 = 13 (001101)
+25 + 53 = 14 (001110)
+25 + 54 = 15 (001111)
+25 + 55 = 16 (010000)
+25 + 56 = 17 (010001)
+25 + 57 = 18 (010010)
+25 + 58 = 19 (010011)
+25 + 59 = 20 (010100)
+25 + 60 = 21 (010101)
+25 + 61 = 22 (010110)
+25 + 62 = 23 (010111)
+25 + 63 = 24 (011000)
+26 + 0 = 26 (011010)
+26 + 1 = 27 (011011)
+26 + 2 = 28 (011100)
+26 + 3 = 29 (011101)
+26 + 4 = 30 (011110)
+26 + 5 = 31 (011111)
+26 + 6 = 32 (100000)
+26 + 7 = 33 (100001)
+26 + 8 = 34 (100010)
+26 + 9 = 35 (100011)
+26 + 10 = 36 (100100)
+26 + 11 = 37 (100101)
+26 + 12 = 38 (100110)
+26 + 13 = 39 (100111)
+26 + 14 = 40 (101000)
+26 + 15 = 41 (101001)
+26 + 16 = 42 (101010)
+26 + 17 = 43 (101011)
+26 + 18 = 44 (101100)
+26 + 19 = 45 (101101)
+26 + 20 = 46 (101110)
+26 + 21 = 47 (101111)
+26 + 22 = 48 (110000)
+26 + 23 = 49 (110001)
+26 + 24 = 50 (110010)
+26 + 25 = 51 (110011)
+26 + 26 = 52 (110100)
+26 + 27 = 53 (110101)
+26 + 28 = 54 (110110)
+26 + 29 = 55 (110111)
+26 + 30 = 56 (111000)
+26 + 31 = 57 (111001)
+26 + 32 = 58 (111010)
+26 + 33 = 59 (111011)
+26 + 34 = 60 (111100)
+26 + 35 = 61 (111101)
+26 + 36 = 62 (111110)
+26 + 37 = 63 (111111)
+26 + 38 = 0 (000000)
+26 + 39 = 1 (000001)
+26 + 40 = 2 (000010)
+26 + 41 = 3 (000011)
+26 + 42 = 4 (000100)
+26 + 43 = 5 (000101)
+26 + 44 = 6 (000110)
+26 + 45 = 7 (000111)
+26 + 46 = 8 (001000)
+26 + 47 = 9 (001001)
+26 + 48 = 10 (001010)
+26 + 49 = 11 (001011)
+26 + 50 = 12 (001100)
+26 + 51 = 13 (001101)
+26 + 52 = 14 (001110)
+26 + 53 = 15 (001111)
+26 + 54 = 16 (010000)
+26 + 55 = 17 (010001)
+26 + 56 = 18 (010010)
+26 + 57 = 19 (010011)
+26 + 58 = 20 (010100)
+26 + 59 = 21 (010101)
+26 + 60 = 22 (010110)
+26 + 61 = 23 (010111)
+26 + 62 = 24 (011000)
+26 + 63 = 25 (011001)
+27 + 0 = 27 (011011)
+27 + 1 = 28 (011100)
+27 + 2 = 29 (011101)
+27 + 3 = 30 (011110)
+27 + 4 = 31 (011111)
+27 + 5 = 32 (100000)
+27 + 6 = 33 (100001)
+27 + 7 = 34 (100010)
+27 + 8 = 35 (100011)
+27 + 9 = 36 (100100)
+27 + 10 = 37 (100101)
+27 + 11 = 38 (100110)
+27 + 12 = 39 (100111)
+27 + 13 = 40 (101000)
+27 + 14 = 41 (101001)
+27 + 15 = 42 (101010)
+27 + 16 = 43 (101011)
+27 + 17 = 44 (101100)
+27 + 18 = 45 (101101)
+27 + 19 = 46 (101110)
+27 + 20 = 47 (101111)
+27 + 21 = 48 (110000)
+27 + 22 = 49 (110001)
+27 + 23 = 50 (110010)
+27 + 24 = 51 (110011)
+27 + 25 = 52 (110100)
+27 + 26 = 53 (110101)
+27 + 27 = 54 (110110)
+27 + 28 = 55 (110111)
+27 + 29 = 56 (111000)
+27 + 30 = 57 (111001)
+27 + 31 = 58 (111010)
+27 + 32 = 59 (111011)
+27 + 33 = 60 (111100)
+27 + 34 = 61 (111101)
+27 + 35 = 62 (111110)
+27 + 36 = 63 (111111)
+27 + 37 = 0 (000000)
+27 + 38 = 1 (000001)
+27 + 39 = 2 (000010)
+27 + 40 = 3 (000011)
+27 + 41 = 4 (000100)
+27 + 42 = 5 (000101)
+27 + 43 = 6 (000110)
+27 + 44 = 7 (000111)
+27 + 45 = 8 (001000)
+27 + 46 = 9 (001001)
+27 + 47 = 10 (001010)
+27 + 48 = 11 (001011)
+27 + 49 = 12 (001100)
+27 + 50 = 13 (001101)
+27 + 51 = 14 (001110)
+27 + 52 = 15 (001111)
+27 + 53 = 16 (010000)
+27 + 54 = 17 (010001)
+27 + 55 = 18 (010010)
+27 + 56 = 19 (010011)
+27 + 57 = 20 (010100)
+27 + 58 = 21 (010101)
+27 + 59 = 22 (010110)
+27 + 60 = 23 (010111)
+27 + 61 = 24 (011000)
+27 + 62 = 25 (011001)
+27 + 63 = 26 (011010)
+28 + 0 = 28 (011100)
+28 + 1 = 29 (011101)
+28 + 2 = 30 (011110)
+28 + 3 = 31 (011111)
+28 + 4 = 32 (100000)
+28 + 5 = 33 (100001)
+28 + 6 = 34 (100010)
+28 + 7 = 35 (100011)
+28 + 8 = 36 (100100)
+28 + 9 = 37 (100101)
+28 + 10 = 38 (100110)
+28 + 11 = 39 (100111)
+28 + 12 = 40 (101000)
+28 + 13 = 41 (101001)
+28 + 14 = 42 (101010)
+28 + 15 = 43 (101011)
+28 + 16 = 44 (101100)
+28 + 17 = 45 (101101)
+28 + 18 = 46 (101110)
+28 + 19 = 47 (101111)
+28 + 20 = 48 (110000)
+28 + 21 = 49 (110001)
+28 + 22 = 50 (110010)
+28 + 23 = 51 (110011)
+28 + 24 = 52 (110100)
+28 + 25 = 53 (110101)
+28 + 26 = 54 (110110)
+28 + 27 = 55 (110111)
+28 + 28 = 56 (111000)
+28 + 29 = 57 (111001)
+28 + 30 = 58 (111010)
+28 + 31 = 59 (111011)
+28 + 32 = 60 (111100)
+28 + 33 = 61 (111101)
+28 + 34 = 62 (111110)
+28 + 35 = 63 (111111)
+28 + 36 = 0 (000000)
+28 + 37 = 1 (000001)
+28 + 38 = 2 (000010)
+28 + 39 = 3 (000011)
+28 + 40 = 4 (000100)
+28 + 41 = 5 (000101)
+28 + 42 = 6 (000110)
+28 + 43 = 7 (000111)
+28 + 44 = 8 (001000)
+28 + 45 = 9 (001001)
+28 + 46 = 10 (001010)
+28 + 47 = 11 (001011)
+28 + 48 = 12 (001100)
+28 + 49 = 13 (001101)
+28 + 50 = 14 (001110)
+28 + 51 = 15 (001111)
+28 + 52 = 16 (010000)
+28 + 53 = 17 (010001)
+28 + 54 = 18 (010010)
+28 + 55 = 19 (010011)
+28 + 56 = 20 (010100)
+28 + 57 = 21 (010101)
+28 + 58 = 22 (010110)
+28 + 59 = 23 (010111)
+28 + 60 = 24 (011000)
+28 + 61 = 25 (011001)
+28 + 62 = 26 (011010)
+28 + 63 = 27 (011011)
+29 + 0 = 29 (011101)
+29 + 1 = 30 (011110)
+29 + 2 = 31 (011111)
+29 + 3 = 32 (100000)
+29 + 4 = 33 (100001)
+29 + 5 = 34 (100010)
+29 + 6 = 35 (100011)
+29 + 7 = 36 (100100)
+29 + 8 = 37 (100101)
+29 + 9 = 38 (100110)
+29 + 10 = 39 (100111)
+29 + 11 = 40 (101000)
+29 + 12 = 41 (101001)
+29 + 13 = 42 (101010)
+29 + 14 = 43 (101011)
+29 + 15 = 44 (101100)
+29 + 16 = 45 (101101)
+29 + 17 = 46 (101110)
+29 + 18 = 47 (101111)
+29 + 19 = 48 (110000)
+29 + 20 = 49 (110001)
+29 + 21 = 50 (110010)
+29 + 22 = 51 (110011)
+29 + 23 = 52 (110100)
+29 + 24 = 53 (110101)
+29 + 25 = 54 (110110)
+29 + 26 = 55 (110111)
+29 + 27 = 56 (111000)
+29 + 28 = 57 (111001)
+29 + 29 = 58 (111010)
+29 + 30 = 59 (111011)
+29 + 31 = 60 (111100)
+29 + 32 = 61 (111101)
+29 + 33 = 62 (111110)
+29 + 34 = 63 (111111)
+29 + 35 = 0 (000000)
+29 + 36 = 1 (000001)
+29 + 37 = 2 (000010)
+29 + 38 = 3 (000011)
+29 + 39 = 4 (000100)
+29 + 40 = 5 (000101)
+29 + 41 = 6 (000110)
+29 + 42 = 7 (000111)
+29 + 43 = 8 (001000)
+29 + 44 = 9 (001001)
+29 + 45 = 10 (001010)
+29 + 46 = 11 (001011)
+29 + 47 = 12 (001100)
+29 + 48 = 13 (001101)
+29 + 49 = 14 (001110)
+29 + 50 = 15 (001111)
+29 + 51 = 16 (010000)
+29 + 52 = 17 (010001)
+29 + 53 = 18 (010010)
+29 + 54 = 19 (010011)
+29 + 55 = 20 (010100)
+29 + 56 = 21 (010101)
+29 + 57 = 22 (010110)
+29 + 58 = 23 (010111)
+29 + 59 = 24 (011000)
+29 + 60 = 25 (011001)
+29 + 61 = 26 (011010)
+29 + 62 = 27 (011011)
+29 + 63 = 28 (011100)
+30 + 0 = 30 (011110)
+30 + 1 = 31 (011111)
+30 + 2 = 32 (100000)
+30 + 3 = 33 (100001)
+30 + 4 = 34 (100010)
+30 + 5 = 35 (100011)
+30 + 6 = 36 (100100)
+30 + 7 = 37 (100101)
+30 + 8 = 38 (100110)
+30 + 9 = 39 (100111)
+30 + 10 = 40 (101000)
+30 + 11 = 41 (101001)
+30 + 12 = 42 (101010)
+30 + 13 = 43 (101011)
+30 + 14 = 44 (101100)
+30 + 15 = 45 (101101)
+30 + 16 = 46 (101110)
+30 + 17 = 47 (101111)
+30 + 18 = 48 (110000)
+30 + 19 = 49 (110001)
+30 + 20 = 50 (110010)
+30 + 21 = 51 (110011)
+30 + 22 = 52 (110100)
+30 + 23 = 53 (110101)
+30 + 24 = 54 (110110)
+30 + 25 = 55 (110111)
+30 + 26 = 56 (111000)
+30 + 27 = 57 (111001)
+30 + 28 = 58 (111010)
+30 + 29 = 59 (111011)
+30 + 30 = 60 (111100)
+30 + 31 = 61 (111101)
+30 + 32 = 62 (111110)
+30 + 33 = 63 (111111)
+30 + 34 = 0 (000000)
+30 + 35 = 1 (000001)
+30 + 36 = 2 (000010)
+30 + 37 = 3 (000011)
+30 + 38 = 4 (000100)
+30 + 39 = 5 (000101)
+30 + 40 = 6 (000110)
+30 + 41 = 7 (000111)
+30 + 42 = 8 (001000)
+30 + 43 = 9 (001001)
+30 + 44 = 10 (001010)
+30 + 45 = 11 (001011)
+30 + 46 = 12 (001100)
+30 + 47 = 13 (001101)
+30 + 48 = 14 (001110)
+30 + 49 = 15 (001111)
+30 + 50 = 16 (010000)
+30 + 51 = 17 (010001)
+30 + 52 = 18 (010010)
+30 + 53 = 19 (010011)
+30 + 54 = 20 (010100)
+30 + 55 = 21 (010101)
+30 + 56 = 22 (010110)
+30 + 57 = 23 (010111)
+30 + 58 = 24 (011000)
+30 + 59 = 25 (011001)
+30 + 60 = 26 (011010)
+30 + 61 = 27 (011011)
+30 + 62 = 28 (011100)
+30 + 63 = 29 (011101)
+31 + 0 = 31 (011111)
+31 + 1 = 32 (100000)
+31 + 2 = 33 (100001)
+31 + 3 = 34 (100010)
+31 + 4 = 35 (100011)
+31 + 5 = 36 (100100)
+31 + 6 = 37 (100101)
+31 + 7 = 38 (100110)
+31 + 8 = 39 (100111)
+31 + 9 = 40 (101000)
+31 + 10 = 41 (101001)
+31 + 11 = 42 (101010)
+31 + 12 = 43 (101011)
+31 + 13 = 44 (101100)
+31 + 14 = 45 (101101)
+31 + 15 = 46 (101110)
+31 + 16 = 47 (101111)
+31 + 17 = 48 (110000)
+31 + 18 = 49 (110001)
+31 + 19 = 50 (110010)
+31 + 20 = 51 (110011)
+31 + 21 = 52 (110100)
+31 + 22 = 53 (110101)
+31 + 23 = 54 (110110)
+31 + 24 = 55 (110111)
+31 + 25 = 56 (111000)
+31 + 26 = 57 (111001)
+31 + 27 = 58 (111010)
+31 + 28 = 59 (111011)
+31 + 29 = 60 (111100)
+31 + 30 = 61 (111101)
+31 + 31 = 62 (111110)
+31 + 32 = 63 (111111)
+31 + 33 = 0 (000000)
+31 + 34 = 1 (000001)
+31 + 35 = 2 (000010)
+31 + 36 = 3 (000011)
+31 + 37 = 4 (000100)
+31 + 38 = 5 (000101)
+31 + 39 = 6 (000110)
+31 + 40 = 7 (000111)
+31 + 41 = 8 (001000)
+31 + 42 = 9 (001001)
+31 + 43 = 10 (001010)
+31 + 44 = 11 (001011)
+31 + 45 = 12 (001100)
+31 + 46 = 13 (001101)
+31 + 47 = 14 (001110)
+31 + 48 = 15 (001111)
+31 + 49 = 16 (010000)
+31 + 50 = 17 (010001)
+31 + 51 = 18 (010010)
+31 + 52 = 19 (010011)
+31 + 53 = 20 (010100)
+31 + 54 = 21 (010101)
+31 + 55 = 22 (010110)
+31 + 56 = 23 (010111)
+31 + 57 = 24 (011000)
+31 + 58 = 25 (011001)
+31 + 59 = 26 (011010)
+31 + 60 = 27 (011011)
+31 + 61 = 28 (011100)
+31 + 62 = 29 (011101)
+31 + 63 = 30 (011110)
+32 + 0 = 32 (100000)
+32 + 1 = 33 (100001)
+32 + 2 = 34 (100010)
+32 + 3 = 35 (100011)
+32 + 4 = 36 (100100)
+32 + 5 = 37 (100101)
+32 + 6 = 38 (100110)
+32 + 7 = 39 (100111)
+32 + 8 = 40 (101000)
+32 + 9 = 41 (101001)
+32 + 10 = 42 (101010)
+32 + 11 = 43 (101011)
+32 + 12 = 44 (101100)
+32 + 13 = 45 (101101)
+32 + 14 = 46 (101110)
+32 + 15 = 47 (101111)
+32 + 16 = 48 (110000)
+32 + 17 = 49 (110001)
+32 + 18 = 50 (110010)
+32 + 19 = 51 (110011)
+32 + 20 = 52 (110100)
+32 + 21 = 53 (110101)
+32 + 22 = 54 (110110)
+32 + 23 = 55 (110111)
+32 + 24 = 56 (111000)
+32 + 25 = 57 (111001)
+32 + 26 = 58 (111010)
+32 + 27 = 59 (111011)
+32 + 28 = 60 (111100)
+32 + 29 = 61 (111101)
+32 + 30 = 62 (111110)
+32 + 31 = 63 (111111)
+32 + 32 = 0 (000000)
+32 + 33 = 1 (000001)
+32 + 34 = 2 (000010)
+32 + 35 = 3 (000011)
+32 + 36 = 4 (000100)
+32 + 37 = 5 (000101)
+32 + 38 = 6 (000110)
+32 + 39 = 7 (000111)
+32 + 40 = 8 (001000)
+32 + 41 = 9 (001001)
+32 + 42 = 10 (001010)
+32 + 43 = 11 (001011)
+32 + 44 = 12 (001100)
+32 + 45 = 13 (001101)
+32 + 46 = 14 (001110)
+32 + 47 = 15 (001111)
+32 + 48 = 16 (010000)
+32 + 49 = 17 (010001)
+32 + 50 = 18 (010010)
+32 + 51 = 19 (010011)
+32 + 52 = 20 (010100)
+32 + 53 = 21 (010101)
+32 + 54 = 22 (010110)
+32 + 55 = 23 (010111)
+32 + 56 = 24 (011000)
+32 + 57 = 25 (011001)
+32 + 58 = 26 (011010)
+32 + 59 = 27 (011011)
+32 + 60 = 28 (011100)
+32 + 61 = 29 (011101)
+32 + 62 = 30 (011110)
+32 + 63 = 31 (011111)
+33 + 0 = 33 (100001)
+33 + 1 = 34 (100010)
+33 + 2 = 35 (100011)
+33 + 3 = 36 (100100)
+33 + 4 = 37 (100101)
+33 + 5 = 38 (100110)
+33 + 6 = 39 (100111)
+33 + 7 = 40 (101000)
+33 + 8 = 41 (101001)
+33 + 9 = 42 (101010)
+33 + 10 = 43 (101011)
+33 + 11 = 44 (101100)
+33 + 12 = 45 (101101)
+33 + 13 = 46 (101110)
+33 + 14 = 47 (101111)
+33 + 15 = 48 (110000)
+33 + 16 = 49 (110001)
+33 + 17 = 50 (110010)
+33 + 18 = 51 (110011)
+33 + 19 = 52 (110100)
+33 + 20 = 53 (110101)
+33 + 21 = 54 (110110)
+33 + 22 = 55 (110111)
+33 + 23 = 56 (111000)
+33 + 24 = 57 (111001)
+33 + 25 = 58 (111010)
+33 + 26 = 59 (111011)
+33 + 27 = 60 (111100)
+33 + 28 = 61 (111101)
+33 + 29 = 62 (111110)
+33 + 30 = 63 (111111)
+33 + 31 = 0 (000000)
+33 + 32 = 1 (000001)
+33 + 33 = 2 (000010)
+33 + 34 = 3 (000011)
+33 + 35 = 4 (000100)
+33 + 36 = 5 (000101)
+33 + 37 = 6 (000110)
+33 + 38 = 7 (000111)
+33 + 39 = 8 (001000)
+33 + 40 = 9 (001001)
+33 + 41 = 10 (001010)
+33 + 42 = 11 (001011)
+33 + 43 = 12 (001100)
+33 + 44 = 13 (001101)
+33 + 45 = 14 (001110)
+33 + 46 = 15 (001111)
+33 + 47 = 16 (010000)
+33 + 48 = 17 (010001)
+33 + 49 = 18 (010010)
+33 + 50 = 19 (010011)
+33 + 51 = 20 (010100)
+33 + 52 = 21 (010101)
+33 + 53 = 22 (010110)
+33 + 54 = 23 (010111)
+33 + 55 = 24 (011000)
+33 + 56 = 25 (011001)
+33 + 57 = 26 (011010)
+33 + 58 = 27 (011011)
+33 + 59 = 28 (011100)
+33 + 60 = 29 (011101)
+33 + 61 = 30 (011110)
+33 + 62 = 31 (011111)
+33 + 63 = 32 (100000)
+34 + 0 = 34 (100010)
+34 + 1 = 35 (100011)
+34 + 2 = 36 (100100)
+34 + 3 = 37 (100101)
+34 + 4 = 38 (100110)
+34 + 5 = 39 (100111)
+34 + 6 = 40 (101000)
+34 + 7 = 41 (101001)
+34 + 8 = 42 (101010)
+34 + 9 = 43 (101011)
+34 + 10 = 44 (101100)
+34 + 11 = 45 (101101)
+34 + 12 = 46 (101110)
+34 + 13 = 47 (101111)
+34 + 14 = 48 (110000)
+34 + 15 = 49 (110001)
+34 + 16 = 50 (110010)
+34 + 17 = 51 (110011)
+34 + 18 = 52 (110100)
+34 + 19 = 53 (110101)
+34 + 20 = 54 (110110)
+34 + 21 = 55 (110111)
+34 + 22 = 56 (111000)
+34 + 23 = 57 (111001)
+34 + 24 = 58 (111010)
+34 + 25 = 59 (111011)
+34 + 26 = 60 (111100)
+34 + 27 = 61 (111101)
+34 + 28 = 62 (111110)
+34 + 29 = 63 (111111)
+34 + 30 = 0 (000000)
+34 + 31 = 1 (000001)
+34 + 32 = 2 (000010)
+34 + 33 = 3 (000011)
+34 + 34 = 4 (000100)
+34 + 35 = 5 (000101)
+34 + 36 = 6 (000110)
+34 + 37 = 7 (000111)
+34 + 38 = 8 (001000)
+34 + 39 = 9 (001001)
+34 + 40 = 10 (001010)
+34 + 41 = 11 (001011)
+34 + 42 = 12 (001100)
+34 + 43 = 13 (001101)
+34 + 44 = 14 (001110)
+34 + 45 = 15 (001111)
+34 + 46 = 16 (010000)
+34 + 47 = 17 (010001)
+34 + 48 = 18 (010010)
+34 + 49 = 19 (010011)
+34 + 50 = 20 (010100)
+34 + 51 = 21 (010101)
+34 + 52 = 22 (010110)
+34 + 53 = 23 (010111)
+34 + 54 = 24 (011000)
+34 + 55 = 25 (011001)
+34 + 56 = 26 (011010)
+34 + 57 = 27 (011011)
+34 + 58 = 28 (011100)
+34 + 59 = 29 (011101)
+34 + 60 = 30 (011110)
+34 + 61 = 31 (011111)
+34 + 62 = 32 (100000)
+34 + 63 = 33 (100001)
+35 + 0 = 35 (100011)
+35 + 1 = 36 (100100)
+35 + 2 = 37 (100101)
+35 + 3 = 38 (100110)
+35 + 4 = 39 (100111)
+35 + 5 = 40 (101000)
+35 + 6 = 41 (101001)
+35 + 7 = 42 (101010)
+35 + 8 = 43 (101011)
+35 + 9 = 44 (101100)
+35 + 10 = 45 (101101)
+35 + 11 = 46 (101110)
+35 + 12 = 47 (101111)
+35 + 13 = 48 (110000)
+35 + 14 = 49 (110001)
+35 + 15 = 50 (110010)
+35 + 16 = 51 (110011)
+35 + 17 = 52 (110100)
+35 + 18 = 53 (110101)
+35 + 19 = 54 (110110)
+35 + 20 = 55 (110111)
+35 + 21 = 56 (111000)
+35 + 22 = 57 (111001)
+35 + 23 = 58 (111010)
+35 + 24 = 59 (111011)
+35 + 25 = 60 (111100)
+35 + 26 = 61 (111101)
+35 + 27 = 62 (111110)
+35 + 28 = 63 (111111)
+35 + 29 = 0 (000000)
+35 + 30 = 1 (000001)
+35 + 31 = 2 (000010)
+35 + 32 = 3 (000011)
+35 + 33 = 4 (000100)
+35 + 34 = 5 (000101)
+35 + 35 = 6 (000110)
+35 + 36 = 7 (000111)
+35 + 37 = 8 (001000)
+35 + 38 = 9 (001001)
+35 + 39 = 10 (001010)
+35 + 40 = 11 (001011)
+35 + 41 = 12 (001100)
+35 + 42 = 13 (001101)
+35 + 43 = 14 (001110)
+35 + 44 = 15 (001111)
+35 + 45 = 16 (010000)
+35 + 46 = 17 (010001)
+35 + 47 = 18 (010010)
+35 + 48 = 19 (010011)
+35 + 49 = 20 (010100)
+35 + 50 = 21 (010101)
+35 + 51 = 22 (010110)
+35 + 52 = 23 (010111)
+35 + 53 = 24 (011000)
+35 + 54 = 25 (011001)
+35 + 55 = 26 (011010)
+35 + 56 = 27 (011011)
+35 + 57 = 28 (011100)
+35 + 58 = 29 (011101)
+35 + 59 = 30 (011110)
+35 + 60 = 31 (011111)
+35 + 61 = 32 (100000)
+35 + 62 = 33 (100001)
+35 + 63 = 34 (100010)
+36 + 0 = 36 (100100)
+36 + 1 = 37 (100101)
+36 + 2 = 38 (100110)
+36 + 3 = 39 (100111)
+36 + 4 = 40 (101000)
+36 + 5 = 41 (101001)
+36 + 6 = 42 (101010)
+36 + 7 = 43 (101011)
+36 + 8 = 44 (101100)
+36 + 9 = 45 (101101)
+36 + 10 = 46 (101110)
+36 + 11 = 47 (101111)
+36 + 12 = 48 (110000)
+36 + 13 = 49 (110001)
+36 + 14 = 50 (110010)
+36 + 15 = 51 (110011)
+36 + 16 = 52 (110100)
+36 + 17 = 53 (110101)
+36 + 18 = 54 (110110)
+36 + 19 = 55 (110111)
+36 + 20 = 56 (111000)
+36 + 21 = 57 (111001)
+36 + 22 = 58 (111010)
+36 + 23 = 59 (111011)
+36 + 24 = 60 (111100)
+36 + 25 = 61 (111101)
+36 + 26 = 62 (111110)
+36 + 27 = 63 (111111)
+36 + 28 = 0 (000000)
+36 + 29 = 1 (000001)
+36 + 30 = 2 (000010)
+36 + 31 = 3 (000011)
+36 + 32 = 4 (000100)
+36 + 33 = 5 (000101)
+36 + 34 = 6 (000110)
+36 + 35 = 7 (000111)
+36 + 36 = 8 (001000)
+36 + 37 = 9 (001001)
+36 + 38 = 10 (001010)
+36 + 39 = 11 (001011)
+36 + 40 = 12 (001100)
+36 + 41 = 13 (001101)
+36 + 42 = 14 (001110)
+36 + 43 = 15 (001111)
+36 + 44 = 16 (010000)
+36 + 45 = 17 (010001)
+36 + 46 = 18 (010010)
+36 + 47 = 19 (010011)
+36 + 48 = 20 (010100)
+36 + 49 = 21 (010101)
+36 + 50 = 22 (010110)
+36 + 51 = 23 (010111)
+36 + 52 = 24 (011000)
+36 + 53 = 25 (011001)
+36 + 54 = 26 (011010)
+36 + 55 = 27 (011011)
+36 + 56 = 28 (011100)
+36 + 57 = 29 (011101)
+36 + 58 = 30 (011110)
+36 + 59 = 31 (011111)
+36 + 60 = 32 (100000)
+36 + 61 = 33 (100001)
+36 + 62 = 34 (100010)
+36 + 63 = 35 (100011)
+37 + 0 = 37 (100101)
+37 + 1 = 38 (100110)
+37 + 2 = 39 (100111)
+37 + 3 = 40 (101000)
+37 + 4 = 41 (101001)
+37 + 5 = 42 (101010)
+37 + 6 = 43 (101011)
+37 + 7 = 44 (101100)
+37 + 8 = 45 (101101)
+37 + 9 = 46 (101110)
+37 + 10 = 47 (101111)
+37 + 11 = 48 (110000)
+37 + 12 = 49 (110001)
+37 + 13 = 50 (110010)
+37 + 14 = 51 (110011)
+37 + 15 = 52 (110100)
+37 + 16 = 53 (110101)
+37 + 17 = 54 (110110)
+37 + 18 = 55 (110111)
+37 + 19 = 56 (111000)
+37 + 20 = 57 (111001)
+37 + 21 = 58 (111010)
+37 + 22 = 59 (111011)
+37 + 23 = 60 (111100)
+37 + 24 = 61 (111101)
+37 + 25 = 62 (111110)
+37 + 26 = 63 (111111)
+37 + 27 = 0 (000000)
+37 + 28 = 1 (000001)
+37 + 29 = 2 (000010)
+37 + 30 = 3 (000011)
+37 + 31 = 4 (000100)
+37 + 32 = 5 (000101)
+37 + 33 = 6 (000110)
+37 + 34 = 7 (000111)
+37 + 35 = 8 (001000)
+37 + 36 = 9 (001001)
+37 + 37 = 10 (001010)
+37 + 38 = 11 (001011)
+37 + 39 = 12 (001100)
+37 + 40 = 13 (001101)
+37 + 41 = 14 (001110)
+37 + 42 = 15 (001111)
+37 + 43 = 16 (010000)
+37 + 44 = 17 (010001)
+37 + 45 = 18 (010010)
+37 + 46 = 19 (010011)
+37 + 47 = 20 (010100)
+37 + 48 = 21 (010101)
+37 + 49 = 22 (010110)
+37 + 50 = 23 (010111)
+37 + 51 = 24 (011000)
+37 + 52 = 25 (011001)
+37 + 53 = 26 (011010)
+37 + 54 = 27 (011011)
+37 + 55 = 28 (011100)
+37 + 56 = 29 (011101)
+37 + 57 = 30 (011110)
+37 + 58 = 31 (011111)
+37 + 59 = 32 (100000)
+37 + 60 = 33 (100001)
+37 + 61 = 34 (100010)
+37 + 62 = 35 (100011)
+37 + 63 = 36 (100100)
+38 + 0 = 38 (100110)
+38 + 1 = 39 (100111)
+38 + 2 = 40 (101000)
+38 + 3 = 41 (101001)
+38 + 4 = 42 (101010)
+38 + 5 = 43 (101011)
+38 + 6 = 44 (101100)
+38 + 7 = 45 (101101)
+38 + 8 = 46 (101110)
+38 + 9 = 47 (101111)
+38 + 10 = 48 (110000)
+38 + 11 = 49 (110001)
+38 + 12 = 50 (110010)
+38 + 13 = 51 (110011)
+38 + 14 = 52 (110100)
+38 + 15 = 53 (110101)
+38 + 16 = 54 (110110)
+38 + 17 = 55 (110111)
+38 + 18 = 56 (111000)
+38 + 19 = 57 (111001)
+38 + 20 = 58 (111010)
+38 + 21 = 59 (111011)
+38 + 22 = 60 (111100)
+38 + 23 = 61 (111101)
+38 + 24 = 62 (111110)
+38 + 25 = 63 (111111)
+38 + 26 = 0 (000000)
+38 + 27 = 1 (000001)
+38 + 28 = 2 (000010)
+38 + 29 = 3 (000011)
+38 + 30 = 4 (000100)
+38 + 31 = 5 (000101)
+38 + 32 = 6 (000110)
+38 + 33 = 7 (000111)
+38 + 34 = 8 (001000)
+38 + 35 = 9 (001001)
+38 + 36 = 10 (001010)
+38 + 37 = 11 (001011)
+38 + 38 = 12 (001100)
+38 + 39 = 13 (001101)
+38 + 40 = 14 (001110)
+38 + 41 = 15 (001111)
+38 + 42 = 16 (010000)
+38 + 43 = 17 (010001)
+38 + 44 = 18 (010010)
+38 + 45 = 19 (010011)
+38 + 46 = 20 (010100)
+38 + 47 = 21 (010101)
+38 + 48 = 22 (010110)
+38 + 49 = 23 (010111)
+38 + 50 = 24 (011000)
+38 + 51 = 25 (011001)
+38 + 52 = 26 (011010)
+38 + 53 = 27 (011011)
+38 + 54 = 28 (011100)
+38 + 55 = 29 (011101)
+38 + 56 = 30 (011110)
+38 + 57 = 31 (011111)
+38 + 58 = 32 (100000)
+38 + 59 = 33 (100001)
+38 + 60 = 34 (100010)
+38 + 61 = 35 (100011)
+38 + 62 = 36 (100100)
+38 + 63 = 37 (100101)
+39 + 0 = 39 (100111)
+39 + 1 = 40 (101000)
+39 + 2 = 41 (101001)
+39 + 3 = 42 (101010)
+39 + 4 = 43 (101011)
+39 + 5 = 44 (101100)
+39 + 6 = 45 (101101)
+39 + 7 = 46 (101110)
+39 + 8 = 47 (101111)
+39 + 9 = 48 (110000)
+39 + 10 = 49 (110001)
+39 + 11 = 50 (110010)
+39 + 12 = 51 (110011)
+39 + 13 = 52 (110100)
+39 + 14 = 53 (110101)
+39 + 15 = 54 (110110)
+39 + 16 = 55 (110111)
+39 + 17 = 56 (111000)
+39 + 18 = 57 (111001)
+39 + 19 = 58 (111010)
+39 + 20 = 59 (111011)
+39 + 21 = 60 (111100)
+39 + 22 = 61 (111101)
+39 + 23 = 62 (111110)
+39 + 24 = 63 (111111)
+39 + 25 = 0 (000000)
+39 + 26 = 1 (000001)
+39 + 27 = 2 (000010)
+39 + 28 = 3 (000011)
+39 + 29 = 4 (000100)
+39 + 30 = 5 (000101)
+39 + 31 = 6 (000110)
+39 + 32 = 7 (000111)
+39 + 33 = 8 (001000)
+39 + 34 = 9 (001001)
+39 + 35 = 10 (001010)
+39 + 36 = 11 (001011)
+39 + 37 = 12 (001100)
+39 + 38 = 13 (001101)
+39 + 39 = 14 (001110)
+39 + 40 = 15 (001111)
+39 + 41 = 16 (010000)
+39 + 42 = 17 (010001)
+39 + 43 = 18 (010010)
+39 + 44 = 19 (010011)
+39 + 45 = 20 (010100)
+39 + 46 = 21 (010101)
+39 + 47 = 22 (010110)
+39 + 48 = 23 (010111)
+39 + 49 = 24 (011000)
+39 + 50 = 25 (011001)
+39 + 51 = 26 (011010)
+39 + 52 = 27 (011011)
+39 + 53 = 28 (011100)
+39 + 54 = 29 (011101)
+39 + 55 = 30 (011110)
+39 + 56 = 31 (011111)
+39 + 57 = 32 (100000)
+39 + 58 = 33 (100001)
+39 + 59 = 34 (100010)
+39 + 60 = 35 (100011)
+39 + 61 = 36 (100100)
+39 + 62 = 37 (100101)
+39 + 63 = 38 (100110)
+40 + 0 = 40 (101000)
+40 + 1 = 41 (101001)
+40 + 2 = 42 (101010)
+40 + 3 = 43 (101011)
+40 + 4 = 44 (101100)
+40 + 5 = 45 (101101)
+40 + 6 = 46 (101110)
+40 + 7 = 47 (101111)
+40 + 8 = 48 (110000)
+40 + 9 = 49 (110001)
+40 + 10 = 50 (110010)
+40 + 11 = 51 (110011)
+40 + 12 = 52 (110100)
+40 + 13 = 53 (110101)
+40 + 14 = 54 (110110)
+40 + 15 = 55 (110111)
+40 + 16 = 56 (111000)
+40 + 17 = 57 (111001)
+40 + 18 = 58 (111010)
+40 + 19 = 59 (111011)
+40 + 20 = 60 (111100)
+40 + 21 = 61 (111101)
+40 + 22 = 62 (111110)
+40 + 23 = 63 (111111)
+40 + 24 = 0 (000000)
+40 + 25 = 1 (000001)
+40 + 26 = 2 (000010)
+40 + 27 = 3 (000011)
+40 + 28 = 4 (000100)
+40 + 29 = 5 (000101)
+40 + 30 = 6 (000110)
+40 + 31 = 7 (000111)
+40 + 32 = 8 (001000)
+40 + 33 = 9 (001001)
+40 + 34 = 10 (001010)
+40 + 35 = 11 (001011)
+40 + 36 = 12 (001100)
+40 + 37 = 13 (001101)
+40 + 38 = 14 (001110)
+40 + 39 = 15 (001111)
+40 + 40 = 16 (010000)
+40 + 41 = 17 (010001)
+40 + 42 = 18 (010010)
+40 + 43 = 19 (010011)
+40 + 44 = 20 (010100)
+40 + 45 = 21 (010101)
+40 + 46 = 22 (010110)
+40 + 47 = 23 (010111)
+40 + 48 = 24 (011000)
+40 + 49 = 25 (011001)
+40 + 50 = 26 (011010)
+40 + 51 = 27 (011011)
+40 + 52 = 28 (011100)
+40 + 53 = 29 (011101)
+40 + 54 = 30 (011110)
+40 + 55 = 31 (011111)
+40 + 56 = 32 (100000)
+40 + 57 = 33 (100001)
+40 + 58 = 34 (100010)
+40 + 59 = 35 (100011)
+40 + 60 = 36 (100100)
+40 + 61 = 37 (100101)
+40 + 62 = 38 (100110)
+40 + 63 = 39 (100111)
+41 + 0 = 41 (101001)
+41 + 1 = 42 (101010)
+41 + 2 = 43 (101011)
+41 + 3 = 44 (101100)
+41 + 4 = 45 (101101)
+41 + 5 = 46 (101110)
+41 + 6 = 47 (101111)
+41 + 7 = 48 (110000)
+41 + 8 = 49 (110001)
+41 + 9 = 50 (110010)
+41 + 10 = 51 (110011)
+41 + 11 = 52 (110100)
+41 + 12 = 53 (110101)
+41 + 13 = 54 (110110)
+41 + 14 = 55 (110111)
+41 + 15 = 56 (111000)
+41 + 16 = 57 (111001)
+41 + 17 = 58 (111010)
+41 + 18 = 59 (111011)
+41 + 19 = 60 (111100)
+41 + 20 = 61 (111101)
+41 + 21 = 62 (111110)
+41 + 22 = 63 (111111)
+41 + 23 = 0 (000000)
+41 + 24 = 1 (000001)
+41 + 25 = 2 (000010)
+41 + 26 = 3 (000011)
+41 + 27 = 4 (000100)
+41 + 28 = 5 (000101)
+41 + 29 = 6 (000110)
+41 + 30 = 7 (000111)
+41 + 31 = 8 (001000)
+41 + 32 = 9 (001001)
+41 + 33 = 10 (001010)
+41 + 34 = 11 (001011)
+41 + 35 = 12 (001100)
+41 + 36 = 13 (001101)
+41 + 37 = 14 (001110)
+41 + 38 = 15 (001111)
+41 + 39 = 16 (010000)
+41 + 40 = 17 (010001)
+41 + 41 = 18 (010010)
+41 + 42 = 19 (010011)
+41 + 43 = 20 (010100)
+41 + 44 = 21 (010101)
+41 + 45 = 22 (010110)
+41 + 46 = 23 (010111)
+41 + 47 = 24 (011000)
+41 + 48 = 25 (011001)
+41 + 49 = 26 (011010)
+41 + 50 = 27 (011011)
+41 + 51 = 28 (011100)
+41 + 52 = 29 (011101)
+41 + 53 = 30 (011110)
+41 + 54 = 31 (011111)
+41 + 55 = 32 (100000)
+41 + 56 = 33 (100001)
+41 + 57 = 34 (100010)
+41 + 58 = 35 (100011)
+41 + 59 = 36 (100100)
+41 + 60 = 37 (100101)
+41 + 61 = 38 (100110)
+41 + 62 = 39 (100111)
+41 + 63 = 40 (101000)
+42 + 0 = 42 (101010)
+42 + 1 = 43 (101011)
+42 + 2 = 44 (101100)
+42 + 3 = 45 (101101)
+42 + 4 = 46 (101110)
+42 + 5 = 47 (101111)
+42 + 6 = 48 (110000)
+42 + 7 = 49 (110001)
+42 + 8 = 50 (110010)
+42 + 9 = 51 (110011)
+42 + 10 = 52 (110100)
+42 + 11 = 53 (110101)
+42 + 12 = 54 (110110)
+42 + 13 = 55 (110111)
+42 + 14 = 56 (111000)
+42 + 15 = 57 (111001)
+42 + 16 = 58 (111010)
+42 + 17 = 59 (111011)
+42 + 18 = 60 (111100)
+42 + 19 = 61 (111101)
+42 + 20 = 62 (111110)
+42 + 21 = 63 (111111)
+42 + 22 = 0 (000000)
+42 + 23 = 1 (000001)
+42 + 24 = 2 (000010)
+42 + 25 = 3 (000011)
+42 + 26 = 4 (000100)
+42 + 27 = 5 (000101)
+42 + 28 = 6 (000110)
+42 + 29 = 7 (000111)
+42 + 30 = 8 (001000)
+42 + 31 = 9 (001001)
+42 + 32 = 10 (001010)
+42 + 33 = 11 (001011)
+42 + 34 = 12 (001100)
+42 + 35 = 13 (001101)
+42 + 36 = 14 (001110)
+42 + 37 = 15 (001111)
+42 + 38 = 16 (010000)
+42 + 39 = 17 (010001)
+42 + 40 = 18 (010010)
+42 + 41 = 19 (010011)
+42 + 42 = 20 (010100)
+42 + 43 = 21 (010101)
+42 + 44 = 22 (010110)
+42 + 45 = 23 (010111)
+42 + 46 = 24 (011000)
+42 + 47 = 25 (011001)
+42 + 48 = 26 (011010)
+42 + 49 = 27 (011011)
+42 + 50 = 28 (011100)
+42 + 51 = 29 (011101)
+42 + 52 = 30 (011110)
+42 + 53 = 31 (011111)
+42 + 54 = 32 (100000)
+42 + 55 = 33 (100001)
+42 + 56 = 34 (100010)
+42 + 57 = 35 (100011)
+42 + 58 = 36 (100100)
+42 + 59 = 37 (100101)
+42 + 60 = 38 (100110)
+42 + 61 = 39 (100111)
+42 + 62 = 40 (101000)
+42 + 63 = 41 (101001)
+43 + 0 = 43 (101011)
+43 + 1 = 44 (101100)
+43 + 2 = 45 (101101)
+43 + 3 = 46 (101110)
+43 + 4 = 47 (101111)
+43 + 5 = 48 (110000)
+43 + 6 = 49 (110001)
+43 + 7 = 50 (110010)
+43 + 8 = 51 (110011)
+43 + 9 = 52 (110100)
+43 + 10 = 53 (110101)
+43 + 11 = 54 (110110)
+43 + 12 = 55 (110111)
+43 + 13 = 56 (111000)
+43 + 14 = 57 (111001)
+43 + 15 = 58 (111010)
+43 + 16 = 59 (111011)
+43 + 17 = 60 (111100)
+43 + 18 = 61 (111101)
+43 + 19 = 62 (111110)
+43 + 20 = 63 (111111)
+43 + 21 = 0 (000000)
+43 + 22 = 1 (000001)
+43 + 23 = 2 (000010)
+43 + 24 = 3 (000011)
+43 + 25 = 4 (000100)
+43 + 26 = 5 (000101)
+43 + 27 = 6 (000110)
+43 + 28 = 7 (000111)
+43 + 29 = 8 (001000)
+43 + 30 = 9 (001001)
+43 + 31 = 10 (001010)
+43 + 32 = 11 (001011)
+43 + 33 = 12 (001100)
+43 + 34 = 13 (001101)
+43 + 35 = 14 (001110)
+43 + 36 = 15 (001111)
+43 + 37 = 16 (010000)
+43 + 38 = 17 (010001)
+43 + 39 = 18 (010010)
+43 + 40 = 19 (010011)
+43 + 41 = 20 (010100)
+43 + 42 = 21 (010101)
+43 + 43 = 22 (010110)
+43 + 44 = 23 (010111)
+43 + 45 = 24 (011000)
+43 + 46 = 25 (011001)
+43 + 47 = 26 (011010)
+43 + 48 = 27 (011011)
+43 + 49 = 28 (011100)
+43 + 50 = 29 (011101)
+43 + 51 = 30 (011110)
+43 + 52 = 31 (011111)
+43 + 53 = 32 (100000)
+43 + 54 = 33 (100001)
+43 + 55 = 34 (100010)
+43 + 56 = 35 (100011)
+43 + 57 = 36 (100100)
+43 + 58 = 37 (100101)
+43 + 59 = 38 (100110)
+43 + 60 = 39 (100111)
+43 + 61 = 40 (101000)
+43 + 62 = 41 (101001)
+43 + 63 = 42 (101010)
+44 + 0 = 44 (101100)
+44 + 1 = 45 (101101)
+44 + 2 = 46 (101110)
+44 + 3 = 47 (101111)
+44 + 4 = 48 (110000)
+44 + 5 = 49 (110001)
+44 + 6 = 50 (110010)
+44 + 7 = 51 (110011)
+44 + 8 = 52 (110100)
+44 + 9 = 53 (110101)
+44 + 10 = 54 (110110)
+44 + 11 = 55 (110111)
+44 + 12 = 56 (111000)
+44 + 13 = 57 (111001)
+44 + 14 = 58 (111010)
+44 + 15 = 59 (111011)
+44 + 16 = 60 (111100)
+44 + 17 = 61 (111101)
+44 + 18 = 62 (111110)
+44 + 19 = 63 (111111)
+44 + 20 = 0 (000000)
+44 + 21 = 1 (000001)
+44 + 22 = 2 (000010)
+44 + 23 = 3 (000011)
+44 + 24 = 4 (000100)
+44 + 25 = 5 (000101)
+44 + 26 = 6 (000110)
+44 + 27 = 7 (000111)
+44 + 28 = 8 (001000)
+44 + 29 = 9 (001001)
+44 + 30 = 10 (001010)
+44 + 31 = 11 (001011)
+44 + 32 = 12 (001100)
+44 + 33 = 13 (001101)
+44 + 34 = 14 (001110)
+44 + 35 = 15 (001111)
+44 + 36 = 16 (010000)
+44 + 37 = 17 (010001)
+44 + 38 = 18 (010010)
+44 + 39 = 19 (010011)
+44 + 40 = 20 (010100)
+44 + 41 = 21 (010101)
+44 + 42 = 22 (010110)
+44 + 43 = 23 (010111)
+44 + 44 = 24 (011000)
+44 + 45 = 25 (011001)
+44 + 46 = 26 (011010)
+44 + 47 = 27 (011011)
+44 + 48 = 28 (011100)
+44 + 49 = 29 (011101)
+44 + 50 = 30 (011110)
+44 + 51 = 31 (011111)
+44 + 52 = 32 (100000)
+44 + 53 = 33 (100001)
+44 + 54 = 34 (100010)
+44 + 55 = 35 (100011)
+44 + 56 = 36 (100100)
+44 + 57 = 37 (100101)
+44 + 58 = 38 (100110)
+44 + 59 = 39 (100111)
+44 + 60 = 40 (101000)
+44 + 61 = 41 (101001)
+44 + 62 = 42 (101010)
+44 + 63 = 43 (101011)
+45 + 0 = 45 (101101)
+45 + 1 = 46 (101110)
+45 + 2 = 47 (101111)
+45 + 3 = 48 (110000)
+45 + 4 = 49 (110001)
+45 + 5 = 50 (110010)
+45 + 6 = 51 (110011)
+45 + 7 = 52 (110100)
+45 + 8 = 53 (110101)
+45 + 9 = 54 (110110)
+45 + 10 = 55 (110111)
+45 + 11 = 56 (111000)
+45 + 12 = 57 (111001)
+45 + 13 = 58 (111010)
+45 + 14 = 59 (111011)
+45 + 15 = 60 (111100)
+45 + 16 = 61 (111101)
+45 + 17 = 62 (111110)
+45 + 18 = 63 (111111)
+45 + 19 = 0 (000000)
+45 + 20 = 1 (000001)
+45 + 21 = 2 (000010)
+45 + 22 = 3 (000011)
+45 + 23 = 4 (000100)
+45 + 24 = 5 (000101)
+45 + 25 = 6 (000110)
+45 + 26 = 7 (000111)
+45 + 27 = 8 (001000)
+45 + 28 = 9 (001001)
+45 + 29 = 10 (001010)
+45 + 30 = 11 (001011)
+45 + 31 = 12 (001100)
+45 + 32 = 13 (001101)
+45 + 33 = 14 (001110)
+45 + 34 = 15 (001111)
+45 + 35 = 16 (010000)
+45 + 36 = 17 (010001)
+45 + 37 = 18 (010010)
+45 + 38 = 19 (010011)
+45 + 39 = 20 (010100)
+45 + 40 = 21 (010101)
+45 + 41 = 22 (010110)
+45 + 42 = 23 (010111)
+45 + 43 = 24 (011000)
+45 + 44 = 25 (011001)
+45 + 45 = 26 (011010)
+45 + 46 = 27 (011011)
+45 + 47 = 28 (011100)
+45 + 48 = 29 (011101)
+45 + 49 = 30 (011110)
+45 + 50 = 31 (011111)
+45 + 51 = 32 (100000)
+45 + 52 = 33 (100001)
+45 + 53 = 34 (100010)
+45 + 54 = 35 (100011)
+45 + 55 = 36 (100100)
+45 + 56 = 37 (100101)
+45 + 57 = 38 (100110)
+45 + 58 = 39 (100111)
+45 + 59 = 40 (101000)
+45 + 60 = 41 (101001)
+45 + 61 = 42 (101010)
+45 + 62 = 43 (101011)
+45 + 63 = 44 (101100)
+46 + 0 = 46 (101110)
+46 + 1 = 47 (101111)
+46 + 2 = 48 (110000)
+46 + 3 = 49 (110001)
+46 + 4 = 50 (110010)
+46 + 5 = 51 (110011)
+46 + 6 = 52 (110100)
+46 + 7 = 53 (110101)
+46 + 8 = 54 (110110)
+46 + 9 = 55 (110111)
+46 + 10 = 56 (111000)
+46 + 11 = 57 (111001)
+46 + 12 = 58 (111010)
+46 + 13 = 59 (111011)
+46 + 14 = 60 (111100)
+46 + 15 = 61 (111101)
+46 + 16 = 62 (111110)
+46 + 17 = 63 (111111)
+46 + 18 = 0 (000000)
+46 + 19 = 1 (000001)
+46 + 20 = 2 (000010)
+46 + 21 = 3 (000011)
+46 + 22 = 4 (000100)
+46 + 23 = 5 (000101)
+46 + 24 = 6 (000110)
+46 + 25 = 7 (000111)
+46 + 26 = 8 (001000)
+46 + 27 = 9 (001001)
+46 + 28 = 10 (001010)
+46 + 29 = 11 (001011)
+46 + 30 = 12 (001100)
+46 + 31 = 13 (001101)
+46 + 32 = 14 (001110)
+46 + 33 = 15 (001111)
+46 + 34 = 16 (010000)
+46 + 35 = 17 (010001)
+46 + 36 = 18 (010010)
+46 + 37 = 19 (010011)
+46 + 38 = 20 (010100)
+46 + 39 = 21 (010101)
+46 + 40 = 22 (010110)
+46 + 41 = 23 (010111)
+46 + 42 = 24 (011000)
+46 + 43 = 25 (011001)
+46 + 44 = 26 (011010)
+46 + 45 = 27 (011011)
+46 + 46 = 28 (011100)
+46 + 47 = 29 (011101)
+46 + 48 = 30 (011110)
+46 + 49 = 31 (011111)
+46 + 50 = 32 (100000)
+46 + 51 = 33 (100001)
+46 + 52 = 34 (100010)
+46 + 53 = 35 (100011)
+46 + 54 = 36 (100100)
+46 + 55 = 37 (100101)
+46 + 56 = 38 (100110)
+46 + 57 = 39 (100111)
+46 + 58 = 40 (101000)
+46 + 59 = 41 (101001)
+46 + 60 = 42 (101010)
+46 + 61 = 43 (101011)
+46 + 62 = 44 (101100)
+46 + 63 = 45 (101101)
+47 + 0 = 47 (101111)
+47 + 1 = 48 (110000)
+47 + 2 = 49 (110001)
+47 + 3 = 50 (110010)
+47 + 4 = 51 (110011)
+47 + 5 = 52 (110100)
+47 + 6 = 53 (110101)
+47 + 7 = 54 (110110)
+47 + 8 = 55 (110111)
+47 + 9 = 56 (111000)
+47 + 10 = 57 (111001)
+47 + 11 = 58 (111010)
+47 + 12 = 59 (111011)
+47 + 13 = 60 (111100)
+47 + 14 = 61 (111101)
+47 + 15 = 62 (111110)
+47 + 16 = 63 (111111)
+47 + 17 = 0 (000000)
+47 + 18 = 1 (000001)
+47 + 19 = 2 (000010)
+47 + 20 = 3 (000011)
+47 + 21 = 4 (000100)
+47 + 22 = 5 (000101)
+47 + 23 = 6 (000110)
+47 + 24 = 7 (000111)
+47 + 25 = 8 (001000)
+47 + 26 = 9 (001001)
+47 + 27 = 10 (001010)
+47 + 28 = 11 (001011)
+47 + 29 = 12 (001100)
+47 + 30 = 13 (001101)
+47 + 31 = 14 (001110)
+47 + 32 = 15 (001111)
+47 + 33 = 16 (010000)
+47 + 34 = 17 (010001)
+47 + 35 = 18 (010010)
+47 + 36 = 19 (010011)
+47 + 37 = 20 (010100)
+47 + 38 = 21 (010101)
+47 + 39 = 22 (010110)
+47 + 40 = 23 (010111)
+47 + 41 = 24 (011000)
+47 + 42 = 25 (011001)
+47 + 43 = 26 (011010)
+47 + 44 = 27 (011011)
+47 + 45 = 28 (011100)
+47 + 46 = 29 (011101)
+47 + 47 = 30 (011110)
+47 + 48 = 31 (011111)
+47 + 49 = 32 (100000)
+47 + 50 = 33 (100001)
+47 + 51 = 34 (100010)
+47 + 52 = 35 (100011)
+47 + 53 = 36 (100100)
+47 + 54 = 37 (100101)
+47 + 55 = 38 (100110)
+47 + 56 = 39 (100111)
+47 + 57 = 40 (101000)
+47 + 58 = 41 (101001)
+47 + 59 = 42 (101010)
+47 + 60 = 43 (101011)
+47 + 61 = 44 (101100)
+47 + 62 = 45 (101101)
+47 + 63 = 46 (101110)
+48 + 0 = 48 (110000)
+48 + 1 = 49 (110001)
+48 + 2 = 50 (110010)
+48 + 3 = 51 (110011)
+48 + 4 = 52 (110100)
+48 + 5 = 53 (110101)
+48 + 6 = 54 (110110)
+48 + 7 = 55 (110111)
+48 + 8 = 56 (111000)
+48 + 9 = 57 (111001)
+48 + 10 = 58 (111010)
+48 + 11 = 59 (111011)
+48 + 12 = 60 (111100)
+48 + 13 = 61 (111101)
+48 + 14 = 62 (111110)
+48 + 15 = 63 (111111)
+48 + 16 = 0 (000000)
+48 + 17 = 1 (000001)
+48 + 18 = 2 (000010)
+48 + 19 = 3 (000011)
+48 + 20 = 4 (000100)
+48 + 21 = 5 (000101)
+48 + 22 = 6 (000110)
+48 + 23 = 7 (000111)
+48 + 24 = 8 (001000)
+48 + 25 = 9 (001001)
+48 + 26 = 10 (001010)
+48 + 27 = 11 (001011)
+48 + 28 = 12 (001100)
+48 + 29 = 13 (001101)
+48 + 30 = 14 (001110)
+48 + 31 = 15 (001111)
+48 + 32 = 16 (010000)
+48 + 33 = 17 (010001)
+48 + 34 = 18 (010010)
+48 + 35 = 19 (010011)
+48 + 36 = 20 (010100)
+48 + 37 = 21 (010101)
+48 + 38 = 22 (010110)
+48 + 39 = 23 (010111)
+48 + 40 = 24 (011000)
+48 + 41 = 25 (011001)
+48 + 42 = 26 (011010)
+48 + 43 = 27 (011011)
+48 + 44 = 28 (011100)
+48 + 45 = 29 (011101)
+48 + 46 = 30 (011110)
+48 + 47 = 31 (011111)
+48 + 48 = 32 (100000)
+48 + 49 = 33 (100001)
+48 + 50 = 34 (100010)
+48 + 51 = 35 (100011)
+48 + 52 = 36 (100100)
+48 + 53 = 37 (100101)
+48 + 54 = 38 (100110)
+48 + 55 = 39 (100111)
+48 + 56 = 40 (101000)
+48 + 57 = 41 (101001)
+48 + 58 = 42 (101010)
+48 + 59 = 43 (101011)
+48 + 60 = 44 (101100)
+48 + 61 = 45 (101101)
+48 + 62 = 46 (101110)
+48 + 63 = 47 (101111)
+49 + 0 = 49 (110001)
+49 + 1 = 50 (110010)
+49 + 2 = 51 (110011)
+49 + 3 = 52 (110100)
+49 + 4 = 53 (110101)
+49 + 5 = 54 (110110)
+49 + 6 = 55 (110111)
+49 + 7 = 56 (111000)
+49 + 8 = 57 (111001)
+49 + 9 = 58 (111010)
+49 + 10 = 59 (111011)
+49 + 11 = 60 (111100)
+49 + 12 = 61 (111101)
+49 + 13 = 62 (111110)
+49 + 14 = 63 (111111)
+49 + 15 = 0 (000000)
+49 + 16 = 1 (000001)
+49 + 17 = 2 (000010)
+49 + 18 = 3 (000011)
+49 + 19 = 4 (000100)
+49 + 20 = 5 (000101)
+49 + 21 = 6 (000110)
+49 + 22 = 7 (000111)
+49 + 23 = 8 (001000)
+49 + 24 = 9 (001001)
+49 + 25 = 10 (001010)
+49 + 26 = 11 (001011)
+49 + 27 = 12 (001100)
+49 + 28 = 13 (001101)
+49 + 29 = 14 (001110)
+49 + 30 = 15 (001111)
+49 + 31 = 16 (010000)
+49 + 32 = 17 (010001)
+49 + 33 = 18 (010010)
+49 + 34 = 19 (010011)
+49 + 35 = 20 (010100)
+49 + 36 = 21 (010101)
+49 + 37 = 22 (010110)
+49 + 38 = 23 (010111)
+49 + 39 = 24 (011000)
+49 + 40 = 25 (011001)
+49 + 41 = 26 (011010)
+49 + 42 = 27 (011011)
+49 + 43 = 28 (011100)
+49 + 44 = 29 (011101)
+49 + 45 = 30 (011110)
+49 + 46 = 31 (011111)
+49 + 47 = 32 (100000)
+49 + 48 = 33 (100001)
+49 + 49 = 34 (100010)
+49 + 50 = 35 (100011)
+49 + 51 = 36 (100100)
+49 + 52 = 37 (100101)
+49 + 53 = 38 (100110)
+49 + 54 = 39 (100111)
+49 + 55 = 40 (101000)
+49 + 56 = 41 (101001)
+49 + 57 = 42 (101010)
+49 + 58 = 43 (101011)
+49 + 59 = 44 (101100)
+49 + 60 = 45 (101101)
+49 + 61 = 46 (101110)
+49 + 62 = 47 (101111)
+49 + 63 = 48 (110000)
+50 + 0 = 50 (110010)
+50 + 1 = 51 (110011)
+50 + 2 = 52 (110100)
+50 + 3 = 53 (110101)
+50 + 4 = 54 (110110)
+50 + 5 = 55 (110111)
+50 + 6 = 56 (111000)
+50 + 7 = 57 (111001)
+50 + 8 = 58 (111010)
+50 + 9 = 59 (111011)
+50 + 10 = 60 (111100)
+50 + 11 = 61 (111101)
+50 + 12 = 62 (111110)
+50 + 13 = 63 (111111)
+50 + 14 = 0 (000000)
+50 + 15 = 1 (000001)
+50 + 16 = 2 (000010)
+50 + 17 = 3 (000011)
+50 + 18 = 4 (000100)
+50 + 19 = 5 (000101)
+50 + 20 = 6 (000110)
+50 + 21 = 7 (000111)
+50 + 22 = 8 (001000)
+50 + 23 = 9 (001001)
+50 + 24 = 10 (001010)
+50 + 25 = 11 (001011)
+50 + 26 = 12 (001100)
+50 + 27 = 13 (001101)
+50 + 28 = 14 (001110)
+50 + 29 = 15 (001111)
+50 + 30 = 16 (010000)
+50 + 31 = 17 (010001)
+50 + 32 = 18 (010010)
+50 + 33 = 19 (010011)
+50 + 34 = 20 (010100)
+50 + 35 = 21 (010101)
+50 + 36 = 22 (010110)
+50 + 37 = 23 (010111)
+50 + 38 = 24 (011000)
+50 + 39 = 25 (011001)
+50 + 40 = 26 (011010)
+50 + 41 = 27 (011011)
+50 + 42 = 28 (011100)
+50 + 43 = 29 (011101)
+50 + 44 = 30 (011110)
+50 + 45 = 31 (011111)
+50 + 46 = 32 (100000)
+50 + 47 = 33 (100001)
+50 + 48 = 34 (100010)
+50 + 49 = 35 (100011)
+50 + 50 = 36 (100100)
+50 + 51 = 37 (100101)
+50 + 52 = 38 (100110)
+50 + 53 = 39 (100111)
+50 + 54 = 40 (101000)
+50 + 55 = 41 (101001)
+50 + 56 = 42 (101010)
+50 + 57 = 43 (101011)
+50 + 58 = 44 (101100)
+50 + 59 = 45 (101101)
+50 + 60 = 46 (101110)
+50 + 61 = 47 (101111)
+50 + 62 = 48 (110000)
+50 + 63 = 49 (110001)
+51 + 0 = 51 (110011)
+51 + 1 = 52 (110100)
+51 + 2 = 53 (110101)
+51 + 3 = 54 (110110)
+51 + 4 = 55 (110111)
+51 + 5 = 56 (111000)
+51 + 6 = 57 (111001)
+51 + 7 = 58 (111010)
+51 + 8 = 59 (111011)
+51 + 9 = 60 (111100)
+51 + 10 = 61 (111101)
+51 + 11 = 62 (111110)
+51 + 12 = 63 (111111)
+51 + 13 = 0 (000000)
+51 + 14 = 1 (000001)
+51 + 15 = 2 (000010)
+51 + 16 = 3 (000011)
+51 + 17 = 4 (000100)
+51 + 18 = 5 (000101)
+51 + 19 = 6 (000110)
+51 + 20 = 7 (000111)
+51 + 21 = 8 (001000)
+51 + 22 = 9 (001001)
+51 + 23 = 10 (001010)
+51 + 24 = 11 (001011)
+51 + 25 = 12 (001100)
+51 + 26 = 13 (001101)
+51 + 27 = 14 (001110)
+51 + 28 = 15 (001111)
+51 + 29 = 16 (010000)
+51 + 30 = 17 (010001)
+51 + 31 = 18 (010010)
+51 + 32 = 19 (010011)
+51 + 33 = 20 (010100)
+51 + 34 = 21 (010101)
+51 + 35 = 22 (010110)
+51 + 36 = 23 (010111)
+51 + 37 = 24 (011000)
+51 + 38 = 25 (011001)
+51 + 39 = 26 (011010)
+51 + 40 = 27 (011011)
+51 + 41 = 28 (011100)
+51 + 42 = 29 (011101)
+51 + 43 = 30 (011110)
+51 + 44 = 31 (011111)
+51 + 45 = 32 (100000)
+51 + 46 = 33 (100001)
+51 + 47 = 34 (100010)
+51 + 48 = 35 (100011)
+51 + 49 = 36 (100100)
+51 + 50 = 37 (100101)
+51 + 51 = 38 (100110)
+51 + 52 = 39 (100111)
+51 + 53 = 40 (101000)
+51 + 54 = 41 (101001)
+51 + 55 = 42 (101010)
+51 + 56 = 43 (101011)
+51 + 57 = 44 (101100)
+51 + 58 = 45 (101101)
+51 + 59 = 46 (101110)
+51 + 60 = 47 (101111)
+51 + 61 = 48 (110000)
+51 + 62 = 49 (110001)
+51 + 63 = 50 (110010)
+52 + 0 = 52 (110100)
+52 + 1 = 53 (110101)
+52 + 2 = 54 (110110)
+52 + 3 = 55 (110111)
+52 + 4 = 56 (111000)
+52 + 5 = 57 (111001)
+52 + 6 = 58 (111010)
+52 + 7 = 59 (111011)
+52 + 8 = 60 (111100)
+52 + 9 = 61 (111101)
+52 + 10 = 62 (111110)
+52 + 11 = 63 (111111)
+52 + 12 = 0 (000000)
+52 + 13 = 1 (000001)
+52 + 14 = 2 (000010)
+52 + 15 = 3 (000011)
+52 + 16 = 4 (000100)
+52 + 17 = 5 (000101)
+52 + 18 = 6 (000110)
+52 + 19 = 7 (000111)
+52 + 20 = 8 (001000)
+52 + 21 = 9 (001001)
+52 + 22 = 10 (001010)
+52 + 23 = 11 (001011)
+52 + 24 = 12 (001100)
+52 + 25 = 13 (001101)
+52 + 26 = 14 (001110)
+52 + 27 = 15 (001111)
+52 + 28 = 16 (010000)
+52 + 29 = 17 (010001)
+52 + 30 = 18 (010010)
+52 + 31 = 19 (010011)
+52 + 32 = 20 (010100)
+52 + 33 = 21 (010101)
+52 + 34 = 22 (010110)
+52 + 35 = 23 (010111)
+52 + 36 = 24 (011000)
+52 + 37 = 25 (011001)
+52 + 38 = 26 (011010)
+52 + 39 = 27 (011011)
+52 + 40 = 28 (011100)
+52 + 41 = 29 (011101)
+52 + 42 = 30 (011110)
+52 + 43 = 31 (011111)
+52 + 44 = 32 (100000)
+52 + 45 = 33 (100001)
+52 + 46 = 34 (100010)
+52 + 47 = 35 (100011)
+52 + 48 = 36 (100100)
+52 + 49 = 37 (100101)
+52 + 50 = 38 (100110)
+52 + 51 = 39 (100111)
+52 + 52 = 40 (101000)
+52 + 53 = 41 (101001)
+52 + 54 = 42 (101010)
+52 + 55 = 43 (101011)
+52 + 56 = 44 (101100)
+52 + 57 = 45 (101101)
+52 + 58 = 46 (101110)
+52 + 59 = 47 (101111)
+52 + 60 = 48 (110000)
+52 + 61 = 49 (110001)
+52 + 62 = 50 (110010)
+52 + 63 = 51 (110011)
+53 + 0 = 53 (110101)
+53 + 1 = 54 (110110)
+53 + 2 = 55 (110111)
+53 + 3 = 56 (111000)
+53 + 4 = 57 (111001)
+53 + 5 = 58 (111010)
+53 + 6 = 59 (111011)
+53 + 7 = 60 (111100)
+53 + 8 = 61 (111101)
+53 + 9 = 62 (111110)
+53 + 10 = 63 (111111)
+53 + 11 = 0 (000000)
+53 + 12 = 1 (000001)
+53 + 13 = 2 (000010)
+53 + 14 = 3 (000011)
+53 + 15 = 4 (000100)
+53 + 16 = 5 (000101)
+53 + 17 = 6 (000110)
+53 + 18 = 7 (000111)
+53 + 19 = 8 (001000)
+53 + 20 = 9 (001001)
+53 + 21 = 10 (001010)
+53 + 22 = 11 (001011)
+53 + 23 = 12 (001100)
+53 + 24 = 13 (001101)
+53 + 25 = 14 (001110)
+53 + 26 = 15 (001111)
+53 + 27 = 16 (010000)
+53 + 28 = 17 (010001)
+53 + 29 = 18 (010010)
+53 + 30 = 19 (010011)
+53 + 31 = 20 (010100)
+53 + 32 = 21 (010101)
+53 + 33 = 22 (010110)
+53 + 34 = 23 (010111)
+53 + 35 = 24 (011000)
+53 + 36 = 25 (011001)
+53 + 37 = 26 (011010)
+53 + 38 = 27 (011011)
+53 + 39 = 28 (011100)
+53 + 40 = 29 (011101)
+53 + 41 = 30 (011110)
+53 + 42 = 31 (011111)
+53 + 43 = 32 (100000)
+53 + 44 = 33 (100001)
+53 + 45 = 34 (100010)
+53 + 46 = 35 (100011)
+53 + 47 = 36 (100100)
+53 + 48 = 37 (100101)
+53 + 49 = 38 (100110)
+53 + 50 = 39 (100111)
+53 + 51 = 40 (101000)
+53 + 52 = 41 (101001)
+53 + 53 = 42 (101010)
+53 + 54 = 43 (101011)
+53 + 55 = 44 (101100)
+53 + 56 = 45 (101101)
+53 + 57 = 46 (101110)
+53 + 58 = 47 (101111)
+53 + 59 = 48 (110000)
+53 + 60 = 49 (110001)
+53 + 61 = 50 (110010)
+53 + 62 = 51 (110011)
+53 + 63 = 52 (110100)
+54 + 0 = 54 (110110)
+54 + 1 = 55 (110111)
+54 + 2 = 56 (111000)
+54 + 3 = 57 (111001)
+54 + 4 = 58 (111010)
+54 + 5 = 59 (111011)
+54 + 6 = 60 (111100)
+54 + 7 = 61 (111101)
+54 + 8 = 62 (111110)
+54 + 9 = 63 (111111)
+54 + 10 = 0 (000000)
+54 + 11 = 1 (000001)
+54 + 12 = 2 (000010)
+54 + 13 = 3 (000011)
+54 + 14 = 4 (000100)
+54 + 15 = 5 (000101)
+54 + 16 = 6 (000110)
+54 + 17 = 7 (000111)
+54 + 18 = 8 (001000)
+54 + 19 = 9 (001001)
+54 + 20 = 10 (001010)
+54 + 21 = 11 (001011)
+54 + 22 = 12 (001100)
+54 + 23 = 13 (001101)
+54 + 24 = 14 (001110)
+54 + 25 = 15 (001111)
+54 + 26 = 16 (010000)
+54 + 27 = 17 (010001)
+54 + 28 = 18 (010010)
+54 + 29 = 19 (010011)
+54 + 30 = 20 (010100)
+54 + 31 = 21 (010101)
+54 + 32 = 22 (010110)
+54 + 33 = 23 (010111)
+54 + 34 = 24 (011000)
+54 + 35 = 25 (011001)
+54 + 36 = 26 (011010)
+54 + 37 = 27 (011011)
+54 + 38 = 28 (011100)
+54 + 39 = 29 (011101)
+54 + 40 = 30 (011110)
+54 + 41 = 31 (011111)
+54 + 42 = 32 (100000)
+54 + 43 = 33 (100001)
+54 + 44 = 34 (100010)
+54 + 45 = 35 (100011)
+54 + 46 = 36 (100100)
+54 + 47 = 37 (100101)
+54 + 48 = 38 (100110)
+54 + 49 = 39 (100111)
+54 + 50 = 40 (101000)
+54 + 51 = 41 (101001)
+54 + 52 = 42 (101010)
+54 + 53 = 43 (101011)
+54 + 54 = 44 (101100)
+54 + 55 = 45 (101101)
+54 + 56 = 46 (101110)
+54 + 57 = 47 (101111)
+54 + 58 = 48 (110000)
+54 + 59 = 49 (110001)
+54 + 60 = 50 (110010)
+54 + 61 = 51 (110011)
+54 + 62 = 52 (110100)
+54 + 63 = 53 (110101)
+55 + 0 = 55 (110111)
+55 + 1 = 56 (111000)
+55 + 2 = 57 (111001)
+55 + 3 = 58 (111010)
+55 + 4 = 59 (111011)
+55 + 5 = 60 (111100)
+55 + 6 = 61 (111101)
+55 + 7 = 62 (111110)
+55 + 8 = 63 (111111)
+55 + 9 = 0 (000000)
+55 + 10 = 1 (000001)
+55 + 11 = 2 (000010)
+55 + 12 = 3 (000011)
+55 + 13 = 4 (000100)
+55 + 14 = 5 (000101)
+55 + 15 = 6 (000110)
+55 + 16 = 7 (000111)
+55 + 17 = 8 (001000)
+55 + 18 = 9 (001001)
+55 + 19 = 10 (001010)
+55 + 20 = 11 (001011)
+55 + 21 = 12 (001100)
+55 + 22 = 13 (001101)
+55 + 23 = 14 (001110)
+55 + 24 = 15 (001111)
+55 + 25 = 16 (010000)
+55 + 26 = 17 (010001)
+55 + 27 = 18 (010010)
+55 + 28 = 19 (010011)
+55 + 29 = 20 (010100)
+55 + 30 = 21 (010101)
+55 + 31 = 22 (010110)
+55 + 32 = 23 (010111)
+55 + 33 = 24 (011000)
+55 + 34 = 25 (011001)
+55 + 35 = 26 (011010)
+55 + 36 = 27 (011011)
+55 + 37 = 28 (011100)
+55 + 38 = 29 (011101)
+55 + 39 = 30 (011110)
+55 + 40 = 31 (011111)
+55 + 41 = 32 (100000)
+55 + 42 = 33 (100001)
+55 + 43 = 34 (100010)
+55 + 44 = 35 (100011)
+55 + 45 = 36 (100100)
+55 + 46 = 37 (100101)
+55 + 47 = 38 (100110)
+55 + 48 = 39 (100111)
+55 + 49 = 40 (101000)
+55 + 50 = 41 (101001)
+55 + 51 = 42 (101010)
+55 + 52 = 43 (101011)
+55 + 53 = 44 (101100)
+55 + 54 = 45 (101101)
+55 + 55 = 46 (101110)
+55 + 56 = 47 (101111)
+55 + 57 = 48 (110000)
+55 + 58 = 49 (110001)
+55 + 59 = 50 (110010)
+55 + 60 = 51 (110011)
+55 + 61 = 52 (110100)
+55 + 62 = 53 (110101)
+55 + 63 = 54 (110110)
+56 + 0 = 56 (111000)
+56 + 1 = 57 (111001)
+56 + 2 = 58 (111010)
+56 + 3 = 59 (111011)
+56 + 4 = 60 (111100)
+56 + 5 = 61 (111101)
+56 + 6 = 62 (111110)
+56 + 7 = 63 (111111)
+56 + 8 = 0 (000000)
+56 + 9 = 1 (000001)
+56 + 10 = 2 (000010)
+56 + 11 = 3 (000011)
+56 + 12 = 4 (000100)
+56 + 13 = 5 (000101)
+56 + 14 = 6 (000110)
+56 + 15 = 7 (000111)
+56 + 16 = 8 (001000)
+56 + 17 = 9 (001001)
+56 + 18 = 10 (001010)
+56 + 19 = 11 (001011)
+56 + 20 = 12 (001100)
+56 + 21 = 13 (001101)
+56 + 22 = 14 (001110)
+56 + 23 = 15 (001111)
+56 + 24 = 16 (010000)
+56 + 25 = 17 (010001)
+56 + 26 = 18 (010010)
+56 + 27 = 19 (010011)
+56 + 28 = 20 (010100)
+56 + 29 = 21 (010101)
+56 + 30 = 22 (010110)
+56 + 31 = 23 (010111)
+56 + 32 = 24 (011000)
+56 + 33 = 25 (011001)
+56 + 34 = 26 (011010)
+56 + 35 = 27 (011011)
+56 + 36 = 28 (011100)
+56 + 37 = 29 (011101)
+56 + 38 = 30 (011110)
+56 + 39 = 31 (011111)
+56 + 40 = 32 (100000)
+56 + 41 = 33 (100001)
+56 + 42 = 34 (100010)
+56 + 43 = 35 (100011)
+56 + 44 = 36 (100100)
+56 + 45 = 37 (100101)
+56 + 46 = 38 (100110)
+56 + 47 = 39 (100111)
+56 + 48 = 40 (101000)
+56 + 49 = 41 (101001)
+56 + 50 = 42 (101010)
+56 + 51 = 43 (101011)
+56 + 52 = 44 (101100)
+56 + 53 = 45 (101101)
+56 + 54 = 46 (101110)
+56 + 55 = 47 (101111)
+56 + 56 = 48 (110000)
+56 + 57 = 49 (110001)
+56 + 58 = 50 (110010)
+56 + 59 = 51 (110011)
+56 + 60 = 52 (110100)
+56 + 61 = 53 (110101)
+56 + 62 = 54 (110110)
+56 + 63 = 55 (110111)
+57 + 0 = 57 (111001)
+57 + 1 = 58 (111010)
+57 + 2 = 59 (111011)
+57 + 3 = 60 (111100)
+57 + 4 = 61 (111101)
+57 + 5 = 62 (111110)
+57 + 6 = 63 (111111)
+57 + 7 = 0 (000000)
+57 + 8 = 1 (000001)
+57 + 9 = 2 (000010)
+57 + 10 = 3 (000011)
+57 + 11 = 4 (000100)
+57 + 12 = 5 (000101)
+57 + 13 = 6 (000110)
+57 + 14 = 7 (000111)
+57 + 15 = 8 (001000)
+57 + 16 = 9 (001001)
+57 + 17 = 10 (001010)
+57 + 18 = 11 (001011)
+57 + 19 = 12 (001100)
+57 + 20 = 13 (001101)
+57 + 21 = 14 (001110)
+57 + 22 = 15 (001111)
+57 + 23 = 16 (010000)
+57 + 24 = 17 (010001)
+57 + 25 = 18 (010010)
+57 + 26 = 19 (010011)
+57 + 27 = 20 (010100)
+57 + 28 = 21 (010101)
+57 + 29 = 22 (010110)
+57 + 30 = 23 (010111)
+57 + 31 = 24 (011000)
+57 + 32 = 25 (011001)
+57 + 33 = 26 (011010)
+57 + 34 = 27 (011011)
+57 + 35 = 28 (011100)
+57 + 36 = 29 (011101)
+57 + 37 = 30 (011110)
+57 + 38 = 31 (011111)
+57 + 39 = 32 (100000)
+57 + 40 = 33 (100001)
+57 + 41 = 34 (100010)
+57 + 42 = 35 (100011)
+57 + 43 = 36 (100100)
+57 + 44 = 37 (100101)
+57 + 45 = 38 (100110)
+57 + 46 = 39 (100111)
+57 + 47 = 40 (101000)
+57 + 48 = 41 (101001)
+57 + 49 = 42 (101010)
+57 + 50 = 43 (101011)
+57 + 51 = 44 (101100)
+57 + 52 = 45 (101101)
+57 + 53 = 46 (101110)
+57 + 54 = 47 (101111)
+57 + 55 = 48 (110000)
+57 + 56 = 49 (110001)
+57 + 57 = 50 (110010)
+57 + 58 = 51 (110011)
+57 + 59 = 52 (110100)
+57 + 60 = 53 (110101)
+57 + 61 = 54 (110110)
+57 + 62 = 55 (110111)
+57 + 63 = 56 (111000)
+58 + 0 = 58 (111010)
+58 + 1 = 59 (111011)
+58 + 2 = 60 (111100)
+58 + 3 = 61 (111101)
+58 + 4 = 62 (111110)
+58 + 5 = 63 (111111)
+58 + 6 = 0 (000000)
+58 + 7 = 1 (000001)
+58 + 8 = 2 (000010)
+58 + 9 = 3 (000011)
+58 + 10 = 4 (000100)
+58 + 11 = 5 (000101)
+58 + 12 = 6 (000110)
+58 + 13 = 7 (000111)
+58 + 14 = 8 (001000)
+58 + 15 = 9 (001001)
+58 + 16 = 10 (001010)
+58 + 17 = 11 (001011)
+58 + 18 = 12 (001100)
+58 + 19 = 13 (001101)
+58 + 20 = 14 (001110)
+58 + 21 = 15 (001111)
+58 + 22 = 16 (010000)
+58 + 23 = 17 (010001)
+58 + 24 = 18 (010010)
+58 + 25 = 19 (010011)
+58 + 26 = 20 (010100)
+58 + 27 = 21 (010101)
+58 + 28 = 22 (010110)
+58 + 29 = 23 (010111)
+58 + 30 = 24 (011000)
+58 + 31 = 25 (011001)
+58 + 32 = 26 (011010)
+58 + 33 = 27 (011011)
+58 + 34 = 28 (011100)
+58 + 35 = 29 (011101)
+58 + 36 = 30 (011110)
+58 + 37 = 31 (011111)
+58 + 38 = 32 (100000)
+58 + 39 = 33 (100001)
+58 + 40 = 34 (100010)
+58 + 41 = 35 (100011)
+58 + 42 = 36 (100100)
+58 + 43 = 37 (100101)
+58 + 44 = 38 (100110)
+58 + 45 = 39 (100111)
+58 + 46 = 40 (101000)
+58 + 47 = 41 (101001)
+58 + 48 = 42 (101010)
+58 + 49 = 43 (101011)
+58 + 50 = 44 (101100)
+58 + 51 = 45 (101101)
+58 + 52 = 46 (101110)
+58 + 53 = 47 (101111)
+58 + 54 = 48 (110000)
+58 + 55 = 49 (110001)
+58 + 56 = 50 (110010)
+58 + 57 = 51 (110011)
+58 + 58 = 52 (110100)
+58 + 59 = 53 (110101)
+58 + 60 = 54 (110110)
+58 + 61 = 55 (110111)
+58 + 62 = 56 (111000)
+58 + 63 = 57 (111001)
+59 + 0 = 59 (111011)
+59 + 1 = 60 (111100)
+59 + 2 = 61 (111101)
+59 + 3 = 62 (111110)
+59 + 4 = 63 (111111)
+59 + 5 = 0 (000000)
+59 + 6 = 1 (000001)
+59 + 7 = 2 (000010)
+59 + 8 = 3 (000011)
+59 + 9 = 4 (000100)
+59 + 10 = 5 (000101)
+59 + 11 = 6 (000110)
+59 + 12 = 7 (000111)
+59 + 13 = 8 (001000)
+59 + 14 = 9 (001001)
+59 + 15 = 10 (001010)
+59 + 16 = 11 (001011)
+59 + 17 = 12 (001100)
+59 + 18 = 13 (001101)
+59 + 19 = 14 (001110)
+59 + 20 = 15 (001111)
+59 + 21 = 16 (010000)
+59 + 22 = 17 (010001)
+59 + 23 = 18 (010010)
+59 + 24 = 19 (010011)
+59 + 25 = 20 (010100)
+59 + 26 = 21 (010101)
+59 + 27 = 22 (010110)
+59 + 28 = 23 (010111)
+59 + 29 = 24 (011000)
+59 + 30 = 25 (011001)
+59 + 31 = 26 (011010)
+59 + 32 = 27 (011011)
+59 + 33 = 28 (011100)
+59 + 34 = 29 (011101)
+59 + 35 = 30 (011110)
+59 + 36 = 31 (011111)
+59 + 37 = 32 (100000)
+59 + 38 = 33 (100001)
+59 + 39 = 34 (100010)
+59 + 40 = 35 (100011)
+59 + 41 = 36 (100100)
+59 + 42 = 37 (100101)
+59 + 43 = 38 (100110)
+59 + 44 = 39 (100111)
+59 + 45 = 40 (101000)
+59 + 46 = 41 (101001)
+59 + 47 = 42 (101010)
+59 + 48 = 43 (101011)
+59 + 49 = 44 (101100)
+59 + 50 = 45 (101101)
+59 + 51 = 46 (101110)
+59 + 52 = 47 (101111)
+59 + 53 = 48 (110000)
+59 + 54 = 49 (110001)
+59 + 55 = 50 (110010)
+59 + 56 = 51 (110011)
+59 + 57 = 52 (110100)
+59 + 58 = 53 (110101)
+59 + 59 = 54 (110110)
+59 + 60 = 55 (110111)
+59 + 61 = 56 (111000)
+59 + 62 = 57 (111001)
+59 + 63 = 58 (111010)
+60 + 0 = 60 (111100)
+60 + 1 = 61 (111101)
+60 + 2 = 62 (111110)
+60 + 3 = 63 (111111)
+60 + 4 = 0 (000000)
+60 + 5 = 1 (000001)
+60 + 6 = 2 (000010)
+60 + 7 = 3 (000011)
+60 + 8 = 4 (000100)
+60 + 9 = 5 (000101)
+60 + 10 = 6 (000110)
+60 + 11 = 7 (000111)
+60 + 12 = 8 (001000)
+60 + 13 = 9 (001001)
+60 + 14 = 10 (001010)
+60 + 15 = 11 (001011)
+60 + 16 = 12 (001100)
+60 + 17 = 13 (001101)
+60 + 18 = 14 (001110)
+60 + 19 = 15 (001111)
+60 + 20 = 16 (010000)
+60 + 21 = 17 (010001)
+60 + 22 = 18 (010010)
+60 + 23 = 19 (010011)
+60 + 24 = 20 (010100)
+60 + 25 = 21 (010101)
+60 + 26 = 22 (010110)
+60 + 27 = 23 (010111)
+60 + 28 = 24 (011000)
+60 + 29 = 25 (011001)
+60 + 30 = 26 (011010)
+60 + 31 = 27 (011011)
+60 + 32 = 28 (011100)
+60 + 33 = 29 (011101)
+60 + 34 = 30 (011110)
+60 + 35 = 31 (011111)
+60 + 36 = 32 (100000)
+60 + 37 = 33 (100001)
+60 + 38 = 34 (100010)
+60 + 39 = 35 (100011)
+60 + 40 = 36 (100100)
+60 + 41 = 37 (100101)
+60 + 42 = 38 (100110)
+60 + 43 = 39 (100111)
+60 + 44 = 40 (101000)
+60 + 45 = 41 (101001)
+60 + 46 = 42 (101010)
+60 + 47 = 43 (101011)
+60 + 48 = 44 (101100)
+60 + 49 = 45 (101101)
+60 + 50 = 46 (101110)
+60 + 51 = 47 (101111)
+60 + 52 = 48 (110000)
+60 + 53 = 49 (110001)
+60 + 54 = 50 (110010)
+60 + 55 = 51 (110011)
+60 + 56 = 52 (110100)
+60 + 57 = 53 (110101)
+60 + 58 = 54 (110110)
+60 + 59 = 55 (110111)
+60 + 60 = 56 (111000)
+60 + 61 = 57 (111001)
+60 + 62 = 58 (111010)
+60 + 63 = 59 (111011)
+61 + 0 = 61 (111101)
+61 + 1 = 62 (111110)
+61 + 2 = 63 (111111)
+61 + 3 = 0 (000000)
+61 + 4 = 1 (000001)
+61 + 5 = 2 (000010)
+61 + 6 = 3 (000011)
+61 + 7 = 4 (000100)
+61 + 8 = 5 (000101)
+61 + 9 = 6 (000110)
+61 + 10 = 7 (000111)
+61 + 11 = 8 (001000)
+61 + 12 = 9 (001001)
+61 + 13 = 10 (001010)
+61 + 14 = 11 (001011)
+61 + 15 = 12 (001100)
+61 + 16 = 13 (001101)
+61 + 17 = 14 (001110)
+61 + 18 = 15 (001111)
+61 + 19 = 16 (010000)
+61 + 20 = 17 (010001)
+61 + 21 = 18 (010010)
+61 + 22 = 19 (010011)
+61 + 23 = 20 (010100)
+61 + 24 = 21 (010101)
+61 + 25 = 22 (010110)
+61 + 26 = 23 (010111)
+61 + 27 = 24 (011000)
+61 + 28 = 25 (011001)
+61 + 29 = 26 (011010)
+61 + 30 = 27 (011011)
+61 + 31 = 28 (011100)
+61 + 32 = 29 (011101)
+61 + 33 = 30 (011110)
+61 + 34 = 31 (011111)
+61 + 35 = 32 (100000)
+61 + 36 = 33 (100001)
+61 + 37 = 34 (100010)
+61 + 38 = 35 (100011)
+61 + 39 = 36 (100100)
+61 + 40 = 37 (100101)
+61 + 41 = 38 (100110)
+61 + 42 = 39 (100111)
+61 + 43 = 40 (101000)
+61 + 44 = 41 (101001)
+61 + 45 = 42 (101010)
+61 + 46 = 43 (101011)
+61 + 47 = 44 (101100)
+61 + 48 = 45 (101101)
+61 + 49 = 46 (101110)
+61 + 50 = 47 (101111)
+61 + 51 = 48 (110000)
+61 + 52 = 49 (110001)
+61 + 53 = 50 (110010)
+61 + 54 = 51 (110011)
+61 + 55 = 52 (110100)
+61 + 56 = 53 (110101)
+61 + 57 = 54 (110110)
+61 + 58 = 55 (110111)
+61 + 59 = 56 (111000)
+61 + 60 = 57 (111001)
+61 + 61 = 58 (111010)
+61 + 62 = 59 (111011)
+61 + 63 = 60 (111100)
+62 + 0 = 62 (111110)
+62 + 1 = 63 (111111)
+62 + 2 = 0 (000000)
+62 + 3 = 1 (000001)
+62 + 4 = 2 (000010)
+62 + 5 = 3 (000011)
+62 + 6 = 4 (000100)
+62 + 7 = 5 (000101)
+62 + 8 = 6 (000110)
+62 + 9 = 7 (000111)
+62 + 10 = 8 (001000)
+62 + 11 = 9 (001001)
+62 + 12 = 10 (001010)
+62 + 13 = 11 (001011)
+62 + 14 = 12 (001100)
+62 + 15 = 13 (001101)
+62 + 16 = 14 (001110)
+62 + 17 = 15 (001111)
+62 + 18 = 16 (010000)
+62 + 19 = 17 (010001)
+62 + 20 = 18 (010010)
+62 + 21 = 19 (010011)
+62 + 22 = 20 (010100)
+62 + 23 = 21 (010101)
+62 + 24 = 22 (010110)
+62 + 25 = 23 (010111)
+62 + 26 = 24 (011000)
+62 + 27 = 25 (011001)
+62 + 28 = 26 (011010)
+62 + 29 = 27 (011011)
+62 + 30 = 28 (011100)
+62 + 31 = 29 (011101)
+62 + 32 = 30 (011110)
+62 + 33 = 31 (011111)
+62 + 34 = 32 (100000)
+62 + 35 = 33 (100001)
+62 + 36 = 34 (100010)
+62 + 37 = 35 (100011)
+62 + 38 = 36 (100100)
+62 + 39 = 37 (100101)
+62 + 40 = 38 (100110)
+62 + 41 = 39 (100111)
+62 + 42 = 40 (101000)
+62 + 43 = 41 (101001)
+62 + 44 = 42 (101010)
+62 + 45 = 43 (101011)
+62 + 46 = 44 (101100)
+62 + 47 = 45 (101101)
+62 + 48 = 46 (101110)
+62 + 49 = 47 (101111)
+62 + 50 = 48 (110000)
+62 + 51 = 49 (110001)
+62 + 52 = 50 (110010)
+62 + 53 = 51 (110011)
+62 + 54 = 52 (110100)
+62 + 55 = 53 (110101)
+62 + 56 = 54 (110110)
+62 + 57 = 55 (110111)
+62 + 58 = 56 (111000)
+62 + 59 = 57 (111001)
+62 + 60 = 58 (111010)
+62 + 61 = 59 (111011)
+62 + 62 = 60 (111100)
+62 + 63 = 61 (111101)
+63 + 0 = 63 (111111)
+63 + 1 = 0 (000000)
+63 + 2 = 1 (000001)
+63 + 3 = 2 (000010)
+63 + 4 = 3 (000011)
+63 + 5 = 4 (000100)
+63 + 6 = 5 (000101)
+63 + 7 = 6 (000110)
+63 + 8 = 7 (000111)
+63 + 9 = 8 (001000)
+63 + 10 = 9 (001001)
+63 + 11 = 10 (001010)
+63 + 12 = 11 (001011)
+63 + 13 = 12 (001100)
+63 + 14 = 13 (001101)
+63 + 15 = 14 (001110)
+63 + 16 = 15 (001111)
+63 + 17 = 16 (010000)
+63 + 18 = 17 (010001)
+63 + 19 = 18 (010010)
+63 + 20 = 19 (010011)
+63 + 21 = 20 (010100)
+63 + 22 = 21 (010101)
+63 + 23 = 22 (010110)
+63 + 24 = 23 (010111)
+63 + 25 = 24 (011000)
+63 + 26 = 25 (011001)
+63 + 27 = 26 (011010)
+63 + 28 = 27 (011011)
+63 + 29 = 28 (011100)
+63 + 30 = 29 (011101)
+63 + 31 = 30 (011110)
+63 + 32 = 31 (011111)
+63 + 33 = 32 (100000)
+63 + 34 = 33 (100001)
+63 + 35 = 34 (100010)
+63 + 36 = 35 (100011)
+63 + 37 = 36 (100100)
+63 + 38 = 37 (100101)
+63 + 39 = 38 (100110)
+63 + 40 = 39 (100111)
+63 + 41 = 40 (101000)
+63 + 42 = 41 (101001)
+63 + 43 = 42 (101010)
+63 + 44 = 43 (101011)
+63 + 45 = 44 (101100)
+63 + 46 = 45 (101101)
+63 + 47 = 46 (101110)
+63 + 48 = 47 (101111)
+63 + 49 = 48 (110000)
+63 + 50 = 49 (110001)
+63 + 51 = 50 (110010)
+63 + 52 = 51 (110011)
+63 + 53 = 52 (110100)
+63 + 54 = 53 (110101)
+63 + 55 = 54 (110110)
+63 + 56 = 55 (110111)
+63 + 57 = 56 (111000)
+63 + 58 = 57 (111001)
+63 + 59 = 58 (111010)
+63 + 60 = 59 (111011)
+63 + 61 = 60 (111100)
+63 + 62 = 61 (111101)
+63 + 63 = 62 (111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/lost_carry.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/lost_carry.f
new file mode 100644
index 000000000..e5ebe3a3b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/lost_carry.f
@@ -0,0 +1,3 @@
+lost_carry/datawidth.cpp
+lost_carry/stimgen.cpp
+lost_carry/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/main.cpp
new file mode 100644
index 000000000..fdf70dabe
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 6-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 6;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector in1 ("in1");
+ signal_bool_vector in2 ("in2");
+ signal_bool_vector result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/stimgen.h
new file mode 100644
index 000000000..0a0e9900d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/lost_carry/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector& result;
+ // Outputs
+ signal_bool_vector& in1;
+ signal_bool_vector& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector& RESULT,
+ signal_bool_vector& IN1,
+ signal_bool_vector& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/common.h
new file mode 100644
index 000000000..55e8fa28e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/common.h
@@ -0,0 +1,51 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<7> bool_vector7;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+typedef sc_signal<bool_vector7> signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/datawidth.cpp
new file mode 100644
index 000000000..3934b22b4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector4 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector7 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/datawidth.h
new file mode 100644
index 000000000..618250503
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector7& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector7& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/golden/promote.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/golden/promote.log
new file mode 100644
index 000000000..7cecb43ba
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/golden/promote.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/main.cpp
new file mode 100644
index 000000000..788364aa5
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 7-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 7;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/promote.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/promote.f
new file mode 100644
index 000000000..4f270dbe0
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/promote.f
@@ -0,0 +1,3 @@
+promote/datawidth.cpp
+promote/stimgen.cpp
+promote/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/stimgen.h
new file mode 100644
index 000000000..723f5103f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector7& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector7& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/common.h
new file mode 100644
index 000000000..f5bf2658c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/common.h
@@ -0,0 +1,51 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<9> bool_vector9;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+typedef sc_signal<bool_vector9> signal_bool_vector9;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/datawidth.cpp
new file mode 100644
index 000000000..9edf35e89
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector4 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector9 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/datawidth.h
new file mode 100644
index 000000000..284757aeb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector9& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector9& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/golden/promote_extension.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/golden/promote_extension.log
new file mode 100644
index 000000000..8228a1697
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/golden/promote_extension.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/main.cpp
new file mode 100644
index 000000000..dda8095a1
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 9-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 9;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector9 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/promote_extension.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/promote_extension.f
new file mode 100644
index 000000000..3c46f3738
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/promote_extension.f
@@ -0,0 +1,3 @@
+promote_extension/datawidth.cpp
+promote_extension/stimgen.cpp
+promote_extension/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/stimgen.h
new file mode 100644
index 000000000..1c35e4175
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_extension/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector9& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector9& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/common.h
new file mode 100644
index 000000000..d7f26e029
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/datawidth.cpp
new file mode 100644
index 000000000..ff8845731
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector4 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector6 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/datawidth.h
new file mode 100644
index 000000000..6adbfd87b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector6& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector6& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/golden/promote_lost_carry.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/golden/promote_lost_carry.log
new file mode 100644
index 000000000..eb9189493
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/golden/promote_lost_carry.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/main.cpp
new file mode 100644
index 000000000..5990e96a7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 6-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 6;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector6 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/promote_lost_carry.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/promote_lost_carry.f
new file mode 100644
index 000000000..052991cee
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/promote_lost_carry.f
@@ -0,0 +1,3 @@
+promote_lost_carry/datawidth.cpp
+promote_lost_carry/stimgen.cpp
+promote_lost_carry/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/stimgen.h
new file mode 100644
index 000000000..e2675e0b4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_lost_carry/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/common.h
new file mode 100644
index 000000000..d7f26e029
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/datawidth.cpp
new file mode 100644
index 000000000..929fd042a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector6 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector4 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/datawidth.h
new file mode 100644
index 000000000..12f04c9be
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector4& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector4& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/golden/promote_truncation.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/golden/promote_truncation.log
new file mode 100644
index 000000000..5088bd680
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/golden/promote_truncation.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/main.cpp
new file mode 100644
index 000000000..657543508
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 4-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 4;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector4 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/promote_truncation.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/promote_truncation.f
new file mode 100644
index 000000000..90b689aca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/promote_truncation.f
@@ -0,0 +1,3 @@
+promote_truncation/datawidth.cpp
+promote_truncation/stimgen.cpp
+promote_truncation/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/stimgen.h
new file mode 100644
index 000000000..959122edf
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/promote_truncation/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/common.h
new file mode 100644
index 000000000..d7f26e029
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<6> bool_vector6;
+
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector6> signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/datawidth.cpp
new file mode 100644
index 000000000..929fd042a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector6 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector4 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/datawidth.h
new file mode 100644
index 000000000..98681b45a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector4& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector4& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/golden/truncation.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/golden/truncation.log
new file mode 100644
index 000000000..5a235015a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/golden/truncation.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+16 + 0 = 0 (0000)
+16 + 1 = 1 (0001)
+16 + 2 = 2 (0010)
+16 + 3 = 3 (0011)
+16 + 4 = 4 (0100)
+16 + 5 = 5 (0101)
+16 + 6 = 6 (0110)
+16 + 7 = 7 (0111)
+16 + 8 = 8 (1000)
+16 + 9 = 9 (1001)
+16 + 10 = 10 (1010)
+16 + 11 = 11 (1011)
+16 + 12 = 12 (1100)
+16 + 13 = 13 (1101)
+16 + 14 = 14 (1110)
+16 + 15 = 15 (1111)
+16 + 16 = 0 (0000)
+16 + 17 = 1 (0001)
+16 + 18 = 2 (0010)
+16 + 19 = 3 (0011)
+16 + 20 = 4 (0100)
+16 + 21 = 5 (0101)
+16 + 22 = 6 (0110)
+16 + 23 = 7 (0111)
+16 + 24 = 8 (1000)
+16 + 25 = 9 (1001)
+16 + 26 = 10 (1010)
+16 + 27 = 11 (1011)
+16 + 28 = 12 (1100)
+16 + 29 = 13 (1101)
+16 + 30 = 14 (1110)
+16 + 31 = 15 (1111)
+16 + 32 = 0 (0000)
+16 + 33 = 1 (0001)
+16 + 34 = 2 (0010)
+16 + 35 = 3 (0011)
+16 + 36 = 4 (0100)
+16 + 37 = 5 (0101)
+16 + 38 = 6 (0110)
+16 + 39 = 7 (0111)
+16 + 40 = 8 (1000)
+16 + 41 = 9 (1001)
+16 + 42 = 10 (1010)
+16 + 43 = 11 (1011)
+16 + 44 = 12 (1100)
+16 + 45 = 13 (1101)
+16 + 46 = 14 (1110)
+16 + 47 = 15 (1111)
+16 + 48 = 0 (0000)
+16 + 49 = 1 (0001)
+16 + 50 = 2 (0010)
+16 + 51 = 3 (0011)
+16 + 52 = 4 (0100)
+16 + 53 = 5 (0101)
+16 + 54 = 6 (0110)
+16 + 55 = 7 (0111)
+16 + 56 = 8 (1000)
+16 + 57 = 9 (1001)
+16 + 58 = 10 (1010)
+16 + 59 = 11 (1011)
+16 + 60 = 12 (1100)
+16 + 61 = 13 (1101)
+16 + 62 = 14 (1110)
+16 + 63 = 15 (1111)
+17 + 0 = 1 (0001)
+17 + 1 = 2 (0010)
+17 + 2 = 3 (0011)
+17 + 3 = 4 (0100)
+17 + 4 = 5 (0101)
+17 + 5 = 6 (0110)
+17 + 6 = 7 (0111)
+17 + 7 = 8 (1000)
+17 + 8 = 9 (1001)
+17 + 9 = 10 (1010)
+17 + 10 = 11 (1011)
+17 + 11 = 12 (1100)
+17 + 12 = 13 (1101)
+17 + 13 = 14 (1110)
+17 + 14 = 15 (1111)
+17 + 15 = 0 (0000)
+17 + 16 = 1 (0001)
+17 + 17 = 2 (0010)
+17 + 18 = 3 (0011)
+17 + 19 = 4 (0100)
+17 + 20 = 5 (0101)
+17 + 21 = 6 (0110)
+17 + 22 = 7 (0111)
+17 + 23 = 8 (1000)
+17 + 24 = 9 (1001)
+17 + 25 = 10 (1010)
+17 + 26 = 11 (1011)
+17 + 27 = 12 (1100)
+17 + 28 = 13 (1101)
+17 + 29 = 14 (1110)
+17 + 30 = 15 (1111)
+17 + 31 = 0 (0000)
+17 + 32 = 1 (0001)
+17 + 33 = 2 (0010)
+17 + 34 = 3 (0011)
+17 + 35 = 4 (0100)
+17 + 36 = 5 (0101)
+17 + 37 = 6 (0110)
+17 + 38 = 7 (0111)
+17 + 39 = 8 (1000)
+17 + 40 = 9 (1001)
+17 + 41 = 10 (1010)
+17 + 42 = 11 (1011)
+17 + 43 = 12 (1100)
+17 + 44 = 13 (1101)
+17 + 45 = 14 (1110)
+17 + 46 = 15 (1111)
+17 + 47 = 0 (0000)
+17 + 48 = 1 (0001)
+17 + 49 = 2 (0010)
+17 + 50 = 3 (0011)
+17 + 51 = 4 (0100)
+17 + 52 = 5 (0101)
+17 + 53 = 6 (0110)
+17 + 54 = 7 (0111)
+17 + 55 = 8 (1000)
+17 + 56 = 9 (1001)
+17 + 57 = 10 (1010)
+17 + 58 = 11 (1011)
+17 + 59 = 12 (1100)
+17 + 60 = 13 (1101)
+17 + 61 = 14 (1110)
+17 + 62 = 15 (1111)
+17 + 63 = 0 (0000)
+18 + 0 = 2 (0010)
+18 + 1 = 3 (0011)
+18 + 2 = 4 (0100)
+18 + 3 = 5 (0101)
+18 + 4 = 6 (0110)
+18 + 5 = 7 (0111)
+18 + 6 = 8 (1000)
+18 + 7 = 9 (1001)
+18 + 8 = 10 (1010)
+18 + 9 = 11 (1011)
+18 + 10 = 12 (1100)
+18 + 11 = 13 (1101)
+18 + 12 = 14 (1110)
+18 + 13 = 15 (1111)
+18 + 14 = 0 (0000)
+18 + 15 = 1 (0001)
+18 + 16 = 2 (0010)
+18 + 17 = 3 (0011)
+18 + 18 = 4 (0100)
+18 + 19 = 5 (0101)
+18 + 20 = 6 (0110)
+18 + 21 = 7 (0111)
+18 + 22 = 8 (1000)
+18 + 23 = 9 (1001)
+18 + 24 = 10 (1010)
+18 + 25 = 11 (1011)
+18 + 26 = 12 (1100)
+18 + 27 = 13 (1101)
+18 + 28 = 14 (1110)
+18 + 29 = 15 (1111)
+18 + 30 = 0 (0000)
+18 + 31 = 1 (0001)
+18 + 32 = 2 (0010)
+18 + 33 = 3 (0011)
+18 + 34 = 4 (0100)
+18 + 35 = 5 (0101)
+18 + 36 = 6 (0110)
+18 + 37 = 7 (0111)
+18 + 38 = 8 (1000)
+18 + 39 = 9 (1001)
+18 + 40 = 10 (1010)
+18 + 41 = 11 (1011)
+18 + 42 = 12 (1100)
+18 + 43 = 13 (1101)
+18 + 44 = 14 (1110)
+18 + 45 = 15 (1111)
+18 + 46 = 0 (0000)
+18 + 47 = 1 (0001)
+18 + 48 = 2 (0010)
+18 + 49 = 3 (0011)
+18 + 50 = 4 (0100)
+18 + 51 = 5 (0101)
+18 + 52 = 6 (0110)
+18 + 53 = 7 (0111)
+18 + 54 = 8 (1000)
+18 + 55 = 9 (1001)
+18 + 56 = 10 (1010)
+18 + 57 = 11 (1011)
+18 + 58 = 12 (1100)
+18 + 59 = 13 (1101)
+18 + 60 = 14 (1110)
+18 + 61 = 15 (1111)
+18 + 62 = 0 (0000)
+18 + 63 = 1 (0001)
+19 + 0 = 3 (0011)
+19 + 1 = 4 (0100)
+19 + 2 = 5 (0101)
+19 + 3 = 6 (0110)
+19 + 4 = 7 (0111)
+19 + 5 = 8 (1000)
+19 + 6 = 9 (1001)
+19 + 7 = 10 (1010)
+19 + 8 = 11 (1011)
+19 + 9 = 12 (1100)
+19 + 10 = 13 (1101)
+19 + 11 = 14 (1110)
+19 + 12 = 15 (1111)
+19 + 13 = 0 (0000)
+19 + 14 = 1 (0001)
+19 + 15 = 2 (0010)
+19 + 16 = 3 (0011)
+19 + 17 = 4 (0100)
+19 + 18 = 5 (0101)
+19 + 19 = 6 (0110)
+19 + 20 = 7 (0111)
+19 + 21 = 8 (1000)
+19 + 22 = 9 (1001)
+19 + 23 = 10 (1010)
+19 + 24 = 11 (1011)
+19 + 25 = 12 (1100)
+19 + 26 = 13 (1101)
+19 + 27 = 14 (1110)
+19 + 28 = 15 (1111)
+19 + 29 = 0 (0000)
+19 + 30 = 1 (0001)
+19 + 31 = 2 (0010)
+19 + 32 = 3 (0011)
+19 + 33 = 4 (0100)
+19 + 34 = 5 (0101)
+19 + 35 = 6 (0110)
+19 + 36 = 7 (0111)
+19 + 37 = 8 (1000)
+19 + 38 = 9 (1001)
+19 + 39 = 10 (1010)
+19 + 40 = 11 (1011)
+19 + 41 = 12 (1100)
+19 + 42 = 13 (1101)
+19 + 43 = 14 (1110)
+19 + 44 = 15 (1111)
+19 + 45 = 0 (0000)
+19 + 46 = 1 (0001)
+19 + 47 = 2 (0010)
+19 + 48 = 3 (0011)
+19 + 49 = 4 (0100)
+19 + 50 = 5 (0101)
+19 + 51 = 6 (0110)
+19 + 52 = 7 (0111)
+19 + 53 = 8 (1000)
+19 + 54 = 9 (1001)
+19 + 55 = 10 (1010)
+19 + 56 = 11 (1011)
+19 + 57 = 12 (1100)
+19 + 58 = 13 (1101)
+19 + 59 = 14 (1110)
+19 + 60 = 15 (1111)
+19 + 61 = 0 (0000)
+19 + 62 = 1 (0001)
+19 + 63 = 2 (0010)
+20 + 0 = 4 (0100)
+20 + 1 = 5 (0101)
+20 + 2 = 6 (0110)
+20 + 3 = 7 (0111)
+20 + 4 = 8 (1000)
+20 + 5 = 9 (1001)
+20 + 6 = 10 (1010)
+20 + 7 = 11 (1011)
+20 + 8 = 12 (1100)
+20 + 9 = 13 (1101)
+20 + 10 = 14 (1110)
+20 + 11 = 15 (1111)
+20 + 12 = 0 (0000)
+20 + 13 = 1 (0001)
+20 + 14 = 2 (0010)
+20 + 15 = 3 (0011)
+20 + 16 = 4 (0100)
+20 + 17 = 5 (0101)
+20 + 18 = 6 (0110)
+20 + 19 = 7 (0111)
+20 + 20 = 8 (1000)
+20 + 21 = 9 (1001)
+20 + 22 = 10 (1010)
+20 + 23 = 11 (1011)
+20 + 24 = 12 (1100)
+20 + 25 = 13 (1101)
+20 + 26 = 14 (1110)
+20 + 27 = 15 (1111)
+20 + 28 = 0 (0000)
+20 + 29 = 1 (0001)
+20 + 30 = 2 (0010)
+20 + 31 = 3 (0011)
+20 + 32 = 4 (0100)
+20 + 33 = 5 (0101)
+20 + 34 = 6 (0110)
+20 + 35 = 7 (0111)
+20 + 36 = 8 (1000)
+20 + 37 = 9 (1001)
+20 + 38 = 10 (1010)
+20 + 39 = 11 (1011)
+20 + 40 = 12 (1100)
+20 + 41 = 13 (1101)
+20 + 42 = 14 (1110)
+20 + 43 = 15 (1111)
+20 + 44 = 0 (0000)
+20 + 45 = 1 (0001)
+20 + 46 = 2 (0010)
+20 + 47 = 3 (0011)
+20 + 48 = 4 (0100)
+20 + 49 = 5 (0101)
+20 + 50 = 6 (0110)
+20 + 51 = 7 (0111)
+20 + 52 = 8 (1000)
+20 + 53 = 9 (1001)
+20 + 54 = 10 (1010)
+20 + 55 = 11 (1011)
+20 + 56 = 12 (1100)
+20 + 57 = 13 (1101)
+20 + 58 = 14 (1110)
+20 + 59 = 15 (1111)
+20 + 60 = 0 (0000)
+20 + 61 = 1 (0001)
+20 + 62 = 2 (0010)
+20 + 63 = 3 (0011)
+21 + 0 = 5 (0101)
+21 + 1 = 6 (0110)
+21 + 2 = 7 (0111)
+21 + 3 = 8 (1000)
+21 + 4 = 9 (1001)
+21 + 5 = 10 (1010)
+21 + 6 = 11 (1011)
+21 + 7 = 12 (1100)
+21 + 8 = 13 (1101)
+21 + 9 = 14 (1110)
+21 + 10 = 15 (1111)
+21 + 11 = 0 (0000)
+21 + 12 = 1 (0001)
+21 + 13 = 2 (0010)
+21 + 14 = 3 (0011)
+21 + 15 = 4 (0100)
+21 + 16 = 5 (0101)
+21 + 17 = 6 (0110)
+21 + 18 = 7 (0111)
+21 + 19 = 8 (1000)
+21 + 20 = 9 (1001)
+21 + 21 = 10 (1010)
+21 + 22 = 11 (1011)
+21 + 23 = 12 (1100)
+21 + 24 = 13 (1101)
+21 + 25 = 14 (1110)
+21 + 26 = 15 (1111)
+21 + 27 = 0 (0000)
+21 + 28 = 1 (0001)
+21 + 29 = 2 (0010)
+21 + 30 = 3 (0011)
+21 + 31 = 4 (0100)
+21 + 32 = 5 (0101)
+21 + 33 = 6 (0110)
+21 + 34 = 7 (0111)
+21 + 35 = 8 (1000)
+21 + 36 = 9 (1001)
+21 + 37 = 10 (1010)
+21 + 38 = 11 (1011)
+21 + 39 = 12 (1100)
+21 + 40 = 13 (1101)
+21 + 41 = 14 (1110)
+21 + 42 = 15 (1111)
+21 + 43 = 0 (0000)
+21 + 44 = 1 (0001)
+21 + 45 = 2 (0010)
+21 + 46 = 3 (0011)
+21 + 47 = 4 (0100)
+21 + 48 = 5 (0101)
+21 + 49 = 6 (0110)
+21 + 50 = 7 (0111)
+21 + 51 = 8 (1000)
+21 + 52 = 9 (1001)
+21 + 53 = 10 (1010)
+21 + 54 = 11 (1011)
+21 + 55 = 12 (1100)
+21 + 56 = 13 (1101)
+21 + 57 = 14 (1110)
+21 + 58 = 15 (1111)
+21 + 59 = 0 (0000)
+21 + 60 = 1 (0001)
+21 + 61 = 2 (0010)
+21 + 62 = 3 (0011)
+21 + 63 = 4 (0100)
+22 + 0 = 6 (0110)
+22 + 1 = 7 (0111)
+22 + 2 = 8 (1000)
+22 + 3 = 9 (1001)
+22 + 4 = 10 (1010)
+22 + 5 = 11 (1011)
+22 + 6 = 12 (1100)
+22 + 7 = 13 (1101)
+22 + 8 = 14 (1110)
+22 + 9 = 15 (1111)
+22 + 10 = 0 (0000)
+22 + 11 = 1 (0001)
+22 + 12 = 2 (0010)
+22 + 13 = 3 (0011)
+22 + 14 = 4 (0100)
+22 + 15 = 5 (0101)
+22 + 16 = 6 (0110)
+22 + 17 = 7 (0111)
+22 + 18 = 8 (1000)
+22 + 19 = 9 (1001)
+22 + 20 = 10 (1010)
+22 + 21 = 11 (1011)
+22 + 22 = 12 (1100)
+22 + 23 = 13 (1101)
+22 + 24 = 14 (1110)
+22 + 25 = 15 (1111)
+22 + 26 = 0 (0000)
+22 + 27 = 1 (0001)
+22 + 28 = 2 (0010)
+22 + 29 = 3 (0011)
+22 + 30 = 4 (0100)
+22 + 31 = 5 (0101)
+22 + 32 = 6 (0110)
+22 + 33 = 7 (0111)
+22 + 34 = 8 (1000)
+22 + 35 = 9 (1001)
+22 + 36 = 10 (1010)
+22 + 37 = 11 (1011)
+22 + 38 = 12 (1100)
+22 + 39 = 13 (1101)
+22 + 40 = 14 (1110)
+22 + 41 = 15 (1111)
+22 + 42 = 0 (0000)
+22 + 43 = 1 (0001)
+22 + 44 = 2 (0010)
+22 + 45 = 3 (0011)
+22 + 46 = 4 (0100)
+22 + 47 = 5 (0101)
+22 + 48 = 6 (0110)
+22 + 49 = 7 (0111)
+22 + 50 = 8 (1000)
+22 + 51 = 9 (1001)
+22 + 52 = 10 (1010)
+22 + 53 = 11 (1011)
+22 + 54 = 12 (1100)
+22 + 55 = 13 (1101)
+22 + 56 = 14 (1110)
+22 + 57 = 15 (1111)
+22 + 58 = 0 (0000)
+22 + 59 = 1 (0001)
+22 + 60 = 2 (0010)
+22 + 61 = 3 (0011)
+22 + 62 = 4 (0100)
+22 + 63 = 5 (0101)
+23 + 0 = 7 (0111)
+23 + 1 = 8 (1000)
+23 + 2 = 9 (1001)
+23 + 3 = 10 (1010)
+23 + 4 = 11 (1011)
+23 + 5 = 12 (1100)
+23 + 6 = 13 (1101)
+23 + 7 = 14 (1110)
+23 + 8 = 15 (1111)
+23 + 9 = 0 (0000)
+23 + 10 = 1 (0001)
+23 + 11 = 2 (0010)
+23 + 12 = 3 (0011)
+23 + 13 = 4 (0100)
+23 + 14 = 5 (0101)
+23 + 15 = 6 (0110)
+23 + 16 = 7 (0111)
+23 + 17 = 8 (1000)
+23 + 18 = 9 (1001)
+23 + 19 = 10 (1010)
+23 + 20 = 11 (1011)
+23 + 21 = 12 (1100)
+23 + 22 = 13 (1101)
+23 + 23 = 14 (1110)
+23 + 24 = 15 (1111)
+23 + 25 = 0 (0000)
+23 + 26 = 1 (0001)
+23 + 27 = 2 (0010)
+23 + 28 = 3 (0011)
+23 + 29 = 4 (0100)
+23 + 30 = 5 (0101)
+23 + 31 = 6 (0110)
+23 + 32 = 7 (0111)
+23 + 33 = 8 (1000)
+23 + 34 = 9 (1001)
+23 + 35 = 10 (1010)
+23 + 36 = 11 (1011)
+23 + 37 = 12 (1100)
+23 + 38 = 13 (1101)
+23 + 39 = 14 (1110)
+23 + 40 = 15 (1111)
+23 + 41 = 0 (0000)
+23 + 42 = 1 (0001)
+23 + 43 = 2 (0010)
+23 + 44 = 3 (0011)
+23 + 45 = 4 (0100)
+23 + 46 = 5 (0101)
+23 + 47 = 6 (0110)
+23 + 48 = 7 (0111)
+23 + 49 = 8 (1000)
+23 + 50 = 9 (1001)
+23 + 51 = 10 (1010)
+23 + 52 = 11 (1011)
+23 + 53 = 12 (1100)
+23 + 54 = 13 (1101)
+23 + 55 = 14 (1110)
+23 + 56 = 15 (1111)
+23 + 57 = 0 (0000)
+23 + 58 = 1 (0001)
+23 + 59 = 2 (0010)
+23 + 60 = 3 (0011)
+23 + 61 = 4 (0100)
+23 + 62 = 5 (0101)
+23 + 63 = 6 (0110)
+24 + 0 = 8 (1000)
+24 + 1 = 9 (1001)
+24 + 2 = 10 (1010)
+24 + 3 = 11 (1011)
+24 + 4 = 12 (1100)
+24 + 5 = 13 (1101)
+24 + 6 = 14 (1110)
+24 + 7 = 15 (1111)
+24 + 8 = 0 (0000)
+24 + 9 = 1 (0001)
+24 + 10 = 2 (0010)
+24 + 11 = 3 (0011)
+24 + 12 = 4 (0100)
+24 + 13 = 5 (0101)
+24 + 14 = 6 (0110)
+24 + 15 = 7 (0111)
+24 + 16 = 8 (1000)
+24 + 17 = 9 (1001)
+24 + 18 = 10 (1010)
+24 + 19 = 11 (1011)
+24 + 20 = 12 (1100)
+24 + 21 = 13 (1101)
+24 + 22 = 14 (1110)
+24 + 23 = 15 (1111)
+24 + 24 = 0 (0000)
+24 + 25 = 1 (0001)
+24 + 26 = 2 (0010)
+24 + 27 = 3 (0011)
+24 + 28 = 4 (0100)
+24 + 29 = 5 (0101)
+24 + 30 = 6 (0110)
+24 + 31 = 7 (0111)
+24 + 32 = 8 (1000)
+24 + 33 = 9 (1001)
+24 + 34 = 10 (1010)
+24 + 35 = 11 (1011)
+24 + 36 = 12 (1100)
+24 + 37 = 13 (1101)
+24 + 38 = 14 (1110)
+24 + 39 = 15 (1111)
+24 + 40 = 0 (0000)
+24 + 41 = 1 (0001)
+24 + 42 = 2 (0010)
+24 + 43 = 3 (0011)
+24 + 44 = 4 (0100)
+24 + 45 = 5 (0101)
+24 + 46 = 6 (0110)
+24 + 47 = 7 (0111)
+24 + 48 = 8 (1000)
+24 + 49 = 9 (1001)
+24 + 50 = 10 (1010)
+24 + 51 = 11 (1011)
+24 + 52 = 12 (1100)
+24 + 53 = 13 (1101)
+24 + 54 = 14 (1110)
+24 + 55 = 15 (1111)
+24 + 56 = 0 (0000)
+24 + 57 = 1 (0001)
+24 + 58 = 2 (0010)
+24 + 59 = 3 (0011)
+24 + 60 = 4 (0100)
+24 + 61 = 5 (0101)
+24 + 62 = 6 (0110)
+24 + 63 = 7 (0111)
+25 + 0 = 9 (1001)
+25 + 1 = 10 (1010)
+25 + 2 = 11 (1011)
+25 + 3 = 12 (1100)
+25 + 4 = 13 (1101)
+25 + 5 = 14 (1110)
+25 + 6 = 15 (1111)
+25 + 7 = 0 (0000)
+25 + 8 = 1 (0001)
+25 + 9 = 2 (0010)
+25 + 10 = 3 (0011)
+25 + 11 = 4 (0100)
+25 + 12 = 5 (0101)
+25 + 13 = 6 (0110)
+25 + 14 = 7 (0111)
+25 + 15 = 8 (1000)
+25 + 16 = 9 (1001)
+25 + 17 = 10 (1010)
+25 + 18 = 11 (1011)
+25 + 19 = 12 (1100)
+25 + 20 = 13 (1101)
+25 + 21 = 14 (1110)
+25 + 22 = 15 (1111)
+25 + 23 = 0 (0000)
+25 + 24 = 1 (0001)
+25 + 25 = 2 (0010)
+25 + 26 = 3 (0011)
+25 + 27 = 4 (0100)
+25 + 28 = 5 (0101)
+25 + 29 = 6 (0110)
+25 + 30 = 7 (0111)
+25 + 31 = 8 (1000)
+25 + 32 = 9 (1001)
+25 + 33 = 10 (1010)
+25 + 34 = 11 (1011)
+25 + 35 = 12 (1100)
+25 + 36 = 13 (1101)
+25 + 37 = 14 (1110)
+25 + 38 = 15 (1111)
+25 + 39 = 0 (0000)
+25 + 40 = 1 (0001)
+25 + 41 = 2 (0010)
+25 + 42 = 3 (0011)
+25 + 43 = 4 (0100)
+25 + 44 = 5 (0101)
+25 + 45 = 6 (0110)
+25 + 46 = 7 (0111)
+25 + 47 = 8 (1000)
+25 + 48 = 9 (1001)
+25 + 49 = 10 (1010)
+25 + 50 = 11 (1011)
+25 + 51 = 12 (1100)
+25 + 52 = 13 (1101)
+25 + 53 = 14 (1110)
+25 + 54 = 15 (1111)
+25 + 55 = 0 (0000)
+25 + 56 = 1 (0001)
+25 + 57 = 2 (0010)
+25 + 58 = 3 (0011)
+25 + 59 = 4 (0100)
+25 + 60 = 5 (0101)
+25 + 61 = 6 (0110)
+25 + 62 = 7 (0111)
+25 + 63 = 8 (1000)
+26 + 0 = 10 (1010)
+26 + 1 = 11 (1011)
+26 + 2 = 12 (1100)
+26 + 3 = 13 (1101)
+26 + 4 = 14 (1110)
+26 + 5 = 15 (1111)
+26 + 6 = 0 (0000)
+26 + 7 = 1 (0001)
+26 + 8 = 2 (0010)
+26 + 9 = 3 (0011)
+26 + 10 = 4 (0100)
+26 + 11 = 5 (0101)
+26 + 12 = 6 (0110)
+26 + 13 = 7 (0111)
+26 + 14 = 8 (1000)
+26 + 15 = 9 (1001)
+26 + 16 = 10 (1010)
+26 + 17 = 11 (1011)
+26 + 18 = 12 (1100)
+26 + 19 = 13 (1101)
+26 + 20 = 14 (1110)
+26 + 21 = 15 (1111)
+26 + 22 = 0 (0000)
+26 + 23 = 1 (0001)
+26 + 24 = 2 (0010)
+26 + 25 = 3 (0011)
+26 + 26 = 4 (0100)
+26 + 27 = 5 (0101)
+26 + 28 = 6 (0110)
+26 + 29 = 7 (0111)
+26 + 30 = 8 (1000)
+26 + 31 = 9 (1001)
+26 + 32 = 10 (1010)
+26 + 33 = 11 (1011)
+26 + 34 = 12 (1100)
+26 + 35 = 13 (1101)
+26 + 36 = 14 (1110)
+26 + 37 = 15 (1111)
+26 + 38 = 0 (0000)
+26 + 39 = 1 (0001)
+26 + 40 = 2 (0010)
+26 + 41 = 3 (0011)
+26 + 42 = 4 (0100)
+26 + 43 = 5 (0101)
+26 + 44 = 6 (0110)
+26 + 45 = 7 (0111)
+26 + 46 = 8 (1000)
+26 + 47 = 9 (1001)
+26 + 48 = 10 (1010)
+26 + 49 = 11 (1011)
+26 + 50 = 12 (1100)
+26 + 51 = 13 (1101)
+26 + 52 = 14 (1110)
+26 + 53 = 15 (1111)
+26 + 54 = 0 (0000)
+26 + 55 = 1 (0001)
+26 + 56 = 2 (0010)
+26 + 57 = 3 (0011)
+26 + 58 = 4 (0100)
+26 + 59 = 5 (0101)
+26 + 60 = 6 (0110)
+26 + 61 = 7 (0111)
+26 + 62 = 8 (1000)
+26 + 63 = 9 (1001)
+27 + 0 = 11 (1011)
+27 + 1 = 12 (1100)
+27 + 2 = 13 (1101)
+27 + 3 = 14 (1110)
+27 + 4 = 15 (1111)
+27 + 5 = 0 (0000)
+27 + 6 = 1 (0001)
+27 + 7 = 2 (0010)
+27 + 8 = 3 (0011)
+27 + 9 = 4 (0100)
+27 + 10 = 5 (0101)
+27 + 11 = 6 (0110)
+27 + 12 = 7 (0111)
+27 + 13 = 8 (1000)
+27 + 14 = 9 (1001)
+27 + 15 = 10 (1010)
+27 + 16 = 11 (1011)
+27 + 17 = 12 (1100)
+27 + 18 = 13 (1101)
+27 + 19 = 14 (1110)
+27 + 20 = 15 (1111)
+27 + 21 = 0 (0000)
+27 + 22 = 1 (0001)
+27 + 23 = 2 (0010)
+27 + 24 = 3 (0011)
+27 + 25 = 4 (0100)
+27 + 26 = 5 (0101)
+27 + 27 = 6 (0110)
+27 + 28 = 7 (0111)
+27 + 29 = 8 (1000)
+27 + 30 = 9 (1001)
+27 + 31 = 10 (1010)
+27 + 32 = 11 (1011)
+27 + 33 = 12 (1100)
+27 + 34 = 13 (1101)
+27 + 35 = 14 (1110)
+27 + 36 = 15 (1111)
+27 + 37 = 0 (0000)
+27 + 38 = 1 (0001)
+27 + 39 = 2 (0010)
+27 + 40 = 3 (0011)
+27 + 41 = 4 (0100)
+27 + 42 = 5 (0101)
+27 + 43 = 6 (0110)
+27 + 44 = 7 (0111)
+27 + 45 = 8 (1000)
+27 + 46 = 9 (1001)
+27 + 47 = 10 (1010)
+27 + 48 = 11 (1011)
+27 + 49 = 12 (1100)
+27 + 50 = 13 (1101)
+27 + 51 = 14 (1110)
+27 + 52 = 15 (1111)
+27 + 53 = 0 (0000)
+27 + 54 = 1 (0001)
+27 + 55 = 2 (0010)
+27 + 56 = 3 (0011)
+27 + 57 = 4 (0100)
+27 + 58 = 5 (0101)
+27 + 59 = 6 (0110)
+27 + 60 = 7 (0111)
+27 + 61 = 8 (1000)
+27 + 62 = 9 (1001)
+27 + 63 = 10 (1010)
+28 + 0 = 12 (1100)
+28 + 1 = 13 (1101)
+28 + 2 = 14 (1110)
+28 + 3 = 15 (1111)
+28 + 4 = 0 (0000)
+28 + 5 = 1 (0001)
+28 + 6 = 2 (0010)
+28 + 7 = 3 (0011)
+28 + 8 = 4 (0100)
+28 + 9 = 5 (0101)
+28 + 10 = 6 (0110)
+28 + 11 = 7 (0111)
+28 + 12 = 8 (1000)
+28 + 13 = 9 (1001)
+28 + 14 = 10 (1010)
+28 + 15 = 11 (1011)
+28 + 16 = 12 (1100)
+28 + 17 = 13 (1101)
+28 + 18 = 14 (1110)
+28 + 19 = 15 (1111)
+28 + 20 = 0 (0000)
+28 + 21 = 1 (0001)
+28 + 22 = 2 (0010)
+28 + 23 = 3 (0011)
+28 + 24 = 4 (0100)
+28 + 25 = 5 (0101)
+28 + 26 = 6 (0110)
+28 + 27 = 7 (0111)
+28 + 28 = 8 (1000)
+28 + 29 = 9 (1001)
+28 + 30 = 10 (1010)
+28 + 31 = 11 (1011)
+28 + 32 = 12 (1100)
+28 + 33 = 13 (1101)
+28 + 34 = 14 (1110)
+28 + 35 = 15 (1111)
+28 + 36 = 0 (0000)
+28 + 37 = 1 (0001)
+28 + 38 = 2 (0010)
+28 + 39 = 3 (0011)
+28 + 40 = 4 (0100)
+28 + 41 = 5 (0101)
+28 + 42 = 6 (0110)
+28 + 43 = 7 (0111)
+28 + 44 = 8 (1000)
+28 + 45 = 9 (1001)
+28 + 46 = 10 (1010)
+28 + 47 = 11 (1011)
+28 + 48 = 12 (1100)
+28 + 49 = 13 (1101)
+28 + 50 = 14 (1110)
+28 + 51 = 15 (1111)
+28 + 52 = 0 (0000)
+28 + 53 = 1 (0001)
+28 + 54 = 2 (0010)
+28 + 55 = 3 (0011)
+28 + 56 = 4 (0100)
+28 + 57 = 5 (0101)
+28 + 58 = 6 (0110)
+28 + 59 = 7 (0111)
+28 + 60 = 8 (1000)
+28 + 61 = 9 (1001)
+28 + 62 = 10 (1010)
+28 + 63 = 11 (1011)
+29 + 0 = 13 (1101)
+29 + 1 = 14 (1110)
+29 + 2 = 15 (1111)
+29 + 3 = 0 (0000)
+29 + 4 = 1 (0001)
+29 + 5 = 2 (0010)
+29 + 6 = 3 (0011)
+29 + 7 = 4 (0100)
+29 + 8 = 5 (0101)
+29 + 9 = 6 (0110)
+29 + 10 = 7 (0111)
+29 + 11 = 8 (1000)
+29 + 12 = 9 (1001)
+29 + 13 = 10 (1010)
+29 + 14 = 11 (1011)
+29 + 15 = 12 (1100)
+29 + 16 = 13 (1101)
+29 + 17 = 14 (1110)
+29 + 18 = 15 (1111)
+29 + 19 = 0 (0000)
+29 + 20 = 1 (0001)
+29 + 21 = 2 (0010)
+29 + 22 = 3 (0011)
+29 + 23 = 4 (0100)
+29 + 24 = 5 (0101)
+29 + 25 = 6 (0110)
+29 + 26 = 7 (0111)
+29 + 27 = 8 (1000)
+29 + 28 = 9 (1001)
+29 + 29 = 10 (1010)
+29 + 30 = 11 (1011)
+29 + 31 = 12 (1100)
+29 + 32 = 13 (1101)
+29 + 33 = 14 (1110)
+29 + 34 = 15 (1111)
+29 + 35 = 0 (0000)
+29 + 36 = 1 (0001)
+29 + 37 = 2 (0010)
+29 + 38 = 3 (0011)
+29 + 39 = 4 (0100)
+29 + 40 = 5 (0101)
+29 + 41 = 6 (0110)
+29 + 42 = 7 (0111)
+29 + 43 = 8 (1000)
+29 + 44 = 9 (1001)
+29 + 45 = 10 (1010)
+29 + 46 = 11 (1011)
+29 + 47 = 12 (1100)
+29 + 48 = 13 (1101)
+29 + 49 = 14 (1110)
+29 + 50 = 15 (1111)
+29 + 51 = 0 (0000)
+29 + 52 = 1 (0001)
+29 + 53 = 2 (0010)
+29 + 54 = 3 (0011)
+29 + 55 = 4 (0100)
+29 + 56 = 5 (0101)
+29 + 57 = 6 (0110)
+29 + 58 = 7 (0111)
+29 + 59 = 8 (1000)
+29 + 60 = 9 (1001)
+29 + 61 = 10 (1010)
+29 + 62 = 11 (1011)
+29 + 63 = 12 (1100)
+30 + 0 = 14 (1110)
+30 + 1 = 15 (1111)
+30 + 2 = 0 (0000)
+30 + 3 = 1 (0001)
+30 + 4 = 2 (0010)
+30 + 5 = 3 (0011)
+30 + 6 = 4 (0100)
+30 + 7 = 5 (0101)
+30 + 8 = 6 (0110)
+30 + 9 = 7 (0111)
+30 + 10 = 8 (1000)
+30 + 11 = 9 (1001)
+30 + 12 = 10 (1010)
+30 + 13 = 11 (1011)
+30 + 14 = 12 (1100)
+30 + 15 = 13 (1101)
+30 + 16 = 14 (1110)
+30 + 17 = 15 (1111)
+30 + 18 = 0 (0000)
+30 + 19 = 1 (0001)
+30 + 20 = 2 (0010)
+30 + 21 = 3 (0011)
+30 + 22 = 4 (0100)
+30 + 23 = 5 (0101)
+30 + 24 = 6 (0110)
+30 + 25 = 7 (0111)
+30 + 26 = 8 (1000)
+30 + 27 = 9 (1001)
+30 + 28 = 10 (1010)
+30 + 29 = 11 (1011)
+30 + 30 = 12 (1100)
+30 + 31 = 13 (1101)
+30 + 32 = 14 (1110)
+30 + 33 = 15 (1111)
+30 + 34 = 0 (0000)
+30 + 35 = 1 (0001)
+30 + 36 = 2 (0010)
+30 + 37 = 3 (0011)
+30 + 38 = 4 (0100)
+30 + 39 = 5 (0101)
+30 + 40 = 6 (0110)
+30 + 41 = 7 (0111)
+30 + 42 = 8 (1000)
+30 + 43 = 9 (1001)
+30 + 44 = 10 (1010)
+30 + 45 = 11 (1011)
+30 + 46 = 12 (1100)
+30 + 47 = 13 (1101)
+30 + 48 = 14 (1110)
+30 + 49 = 15 (1111)
+30 + 50 = 0 (0000)
+30 + 51 = 1 (0001)
+30 + 52 = 2 (0010)
+30 + 53 = 3 (0011)
+30 + 54 = 4 (0100)
+30 + 55 = 5 (0101)
+30 + 56 = 6 (0110)
+30 + 57 = 7 (0111)
+30 + 58 = 8 (1000)
+30 + 59 = 9 (1001)
+30 + 60 = 10 (1010)
+30 + 61 = 11 (1011)
+30 + 62 = 12 (1100)
+30 + 63 = 13 (1101)
+31 + 0 = 15 (1111)
+31 + 1 = 0 (0000)
+31 + 2 = 1 (0001)
+31 + 3 = 2 (0010)
+31 + 4 = 3 (0011)
+31 + 5 = 4 (0100)
+31 + 6 = 5 (0101)
+31 + 7 = 6 (0110)
+31 + 8 = 7 (0111)
+31 + 9 = 8 (1000)
+31 + 10 = 9 (1001)
+31 + 11 = 10 (1010)
+31 + 12 = 11 (1011)
+31 + 13 = 12 (1100)
+31 + 14 = 13 (1101)
+31 + 15 = 14 (1110)
+31 + 16 = 15 (1111)
+31 + 17 = 0 (0000)
+31 + 18 = 1 (0001)
+31 + 19 = 2 (0010)
+31 + 20 = 3 (0011)
+31 + 21 = 4 (0100)
+31 + 22 = 5 (0101)
+31 + 23 = 6 (0110)
+31 + 24 = 7 (0111)
+31 + 25 = 8 (1000)
+31 + 26 = 9 (1001)
+31 + 27 = 10 (1010)
+31 + 28 = 11 (1011)
+31 + 29 = 12 (1100)
+31 + 30 = 13 (1101)
+31 + 31 = 14 (1110)
+31 + 32 = 15 (1111)
+31 + 33 = 0 (0000)
+31 + 34 = 1 (0001)
+31 + 35 = 2 (0010)
+31 + 36 = 3 (0011)
+31 + 37 = 4 (0100)
+31 + 38 = 5 (0101)
+31 + 39 = 6 (0110)
+31 + 40 = 7 (0111)
+31 + 41 = 8 (1000)
+31 + 42 = 9 (1001)
+31 + 43 = 10 (1010)
+31 + 44 = 11 (1011)
+31 + 45 = 12 (1100)
+31 + 46 = 13 (1101)
+31 + 47 = 14 (1110)
+31 + 48 = 15 (1111)
+31 + 49 = 0 (0000)
+31 + 50 = 1 (0001)
+31 + 51 = 2 (0010)
+31 + 52 = 3 (0011)
+31 + 53 = 4 (0100)
+31 + 54 = 5 (0101)
+31 + 55 = 6 (0110)
+31 + 56 = 7 (0111)
+31 + 57 = 8 (1000)
+31 + 58 = 9 (1001)
+31 + 59 = 10 (1010)
+31 + 60 = 11 (1011)
+31 + 61 = 12 (1100)
+31 + 62 = 13 (1101)
+31 + 63 = 14 (1110)
+32 + 0 = 0 (0000)
+32 + 1 = 1 (0001)
+32 + 2 = 2 (0010)
+32 + 3 = 3 (0011)
+32 + 4 = 4 (0100)
+32 + 5 = 5 (0101)
+32 + 6 = 6 (0110)
+32 + 7 = 7 (0111)
+32 + 8 = 8 (1000)
+32 + 9 = 9 (1001)
+32 + 10 = 10 (1010)
+32 + 11 = 11 (1011)
+32 + 12 = 12 (1100)
+32 + 13 = 13 (1101)
+32 + 14 = 14 (1110)
+32 + 15 = 15 (1111)
+32 + 16 = 0 (0000)
+32 + 17 = 1 (0001)
+32 + 18 = 2 (0010)
+32 + 19 = 3 (0011)
+32 + 20 = 4 (0100)
+32 + 21 = 5 (0101)
+32 + 22 = 6 (0110)
+32 + 23 = 7 (0111)
+32 + 24 = 8 (1000)
+32 + 25 = 9 (1001)
+32 + 26 = 10 (1010)
+32 + 27 = 11 (1011)
+32 + 28 = 12 (1100)
+32 + 29 = 13 (1101)
+32 + 30 = 14 (1110)
+32 + 31 = 15 (1111)
+32 + 32 = 0 (0000)
+32 + 33 = 1 (0001)
+32 + 34 = 2 (0010)
+32 + 35 = 3 (0011)
+32 + 36 = 4 (0100)
+32 + 37 = 5 (0101)
+32 + 38 = 6 (0110)
+32 + 39 = 7 (0111)
+32 + 40 = 8 (1000)
+32 + 41 = 9 (1001)
+32 + 42 = 10 (1010)
+32 + 43 = 11 (1011)
+32 + 44 = 12 (1100)
+32 + 45 = 13 (1101)
+32 + 46 = 14 (1110)
+32 + 47 = 15 (1111)
+32 + 48 = 0 (0000)
+32 + 49 = 1 (0001)
+32 + 50 = 2 (0010)
+32 + 51 = 3 (0011)
+32 + 52 = 4 (0100)
+32 + 53 = 5 (0101)
+32 + 54 = 6 (0110)
+32 + 55 = 7 (0111)
+32 + 56 = 8 (1000)
+32 + 57 = 9 (1001)
+32 + 58 = 10 (1010)
+32 + 59 = 11 (1011)
+32 + 60 = 12 (1100)
+32 + 61 = 13 (1101)
+32 + 62 = 14 (1110)
+32 + 63 = 15 (1111)
+33 + 0 = 1 (0001)
+33 + 1 = 2 (0010)
+33 + 2 = 3 (0011)
+33 + 3 = 4 (0100)
+33 + 4 = 5 (0101)
+33 + 5 = 6 (0110)
+33 + 6 = 7 (0111)
+33 + 7 = 8 (1000)
+33 + 8 = 9 (1001)
+33 + 9 = 10 (1010)
+33 + 10 = 11 (1011)
+33 + 11 = 12 (1100)
+33 + 12 = 13 (1101)
+33 + 13 = 14 (1110)
+33 + 14 = 15 (1111)
+33 + 15 = 0 (0000)
+33 + 16 = 1 (0001)
+33 + 17 = 2 (0010)
+33 + 18 = 3 (0011)
+33 + 19 = 4 (0100)
+33 + 20 = 5 (0101)
+33 + 21 = 6 (0110)
+33 + 22 = 7 (0111)
+33 + 23 = 8 (1000)
+33 + 24 = 9 (1001)
+33 + 25 = 10 (1010)
+33 + 26 = 11 (1011)
+33 + 27 = 12 (1100)
+33 + 28 = 13 (1101)
+33 + 29 = 14 (1110)
+33 + 30 = 15 (1111)
+33 + 31 = 0 (0000)
+33 + 32 = 1 (0001)
+33 + 33 = 2 (0010)
+33 + 34 = 3 (0011)
+33 + 35 = 4 (0100)
+33 + 36 = 5 (0101)
+33 + 37 = 6 (0110)
+33 + 38 = 7 (0111)
+33 + 39 = 8 (1000)
+33 + 40 = 9 (1001)
+33 + 41 = 10 (1010)
+33 + 42 = 11 (1011)
+33 + 43 = 12 (1100)
+33 + 44 = 13 (1101)
+33 + 45 = 14 (1110)
+33 + 46 = 15 (1111)
+33 + 47 = 0 (0000)
+33 + 48 = 1 (0001)
+33 + 49 = 2 (0010)
+33 + 50 = 3 (0011)
+33 + 51 = 4 (0100)
+33 + 52 = 5 (0101)
+33 + 53 = 6 (0110)
+33 + 54 = 7 (0111)
+33 + 55 = 8 (1000)
+33 + 56 = 9 (1001)
+33 + 57 = 10 (1010)
+33 + 58 = 11 (1011)
+33 + 59 = 12 (1100)
+33 + 60 = 13 (1101)
+33 + 61 = 14 (1110)
+33 + 62 = 15 (1111)
+33 + 63 = 0 (0000)
+34 + 0 = 2 (0010)
+34 + 1 = 3 (0011)
+34 + 2 = 4 (0100)
+34 + 3 = 5 (0101)
+34 + 4 = 6 (0110)
+34 + 5 = 7 (0111)
+34 + 6 = 8 (1000)
+34 + 7 = 9 (1001)
+34 + 8 = 10 (1010)
+34 + 9 = 11 (1011)
+34 + 10 = 12 (1100)
+34 + 11 = 13 (1101)
+34 + 12 = 14 (1110)
+34 + 13 = 15 (1111)
+34 + 14 = 0 (0000)
+34 + 15 = 1 (0001)
+34 + 16 = 2 (0010)
+34 + 17 = 3 (0011)
+34 + 18 = 4 (0100)
+34 + 19 = 5 (0101)
+34 + 20 = 6 (0110)
+34 + 21 = 7 (0111)
+34 + 22 = 8 (1000)
+34 + 23 = 9 (1001)
+34 + 24 = 10 (1010)
+34 + 25 = 11 (1011)
+34 + 26 = 12 (1100)
+34 + 27 = 13 (1101)
+34 + 28 = 14 (1110)
+34 + 29 = 15 (1111)
+34 + 30 = 0 (0000)
+34 + 31 = 1 (0001)
+34 + 32 = 2 (0010)
+34 + 33 = 3 (0011)
+34 + 34 = 4 (0100)
+34 + 35 = 5 (0101)
+34 + 36 = 6 (0110)
+34 + 37 = 7 (0111)
+34 + 38 = 8 (1000)
+34 + 39 = 9 (1001)
+34 + 40 = 10 (1010)
+34 + 41 = 11 (1011)
+34 + 42 = 12 (1100)
+34 + 43 = 13 (1101)
+34 + 44 = 14 (1110)
+34 + 45 = 15 (1111)
+34 + 46 = 0 (0000)
+34 + 47 = 1 (0001)
+34 + 48 = 2 (0010)
+34 + 49 = 3 (0011)
+34 + 50 = 4 (0100)
+34 + 51 = 5 (0101)
+34 + 52 = 6 (0110)
+34 + 53 = 7 (0111)
+34 + 54 = 8 (1000)
+34 + 55 = 9 (1001)
+34 + 56 = 10 (1010)
+34 + 57 = 11 (1011)
+34 + 58 = 12 (1100)
+34 + 59 = 13 (1101)
+34 + 60 = 14 (1110)
+34 + 61 = 15 (1111)
+34 + 62 = 0 (0000)
+34 + 63 = 1 (0001)
+35 + 0 = 3 (0011)
+35 + 1 = 4 (0100)
+35 + 2 = 5 (0101)
+35 + 3 = 6 (0110)
+35 + 4 = 7 (0111)
+35 + 5 = 8 (1000)
+35 + 6 = 9 (1001)
+35 + 7 = 10 (1010)
+35 + 8 = 11 (1011)
+35 + 9 = 12 (1100)
+35 + 10 = 13 (1101)
+35 + 11 = 14 (1110)
+35 + 12 = 15 (1111)
+35 + 13 = 0 (0000)
+35 + 14 = 1 (0001)
+35 + 15 = 2 (0010)
+35 + 16 = 3 (0011)
+35 + 17 = 4 (0100)
+35 + 18 = 5 (0101)
+35 + 19 = 6 (0110)
+35 + 20 = 7 (0111)
+35 + 21 = 8 (1000)
+35 + 22 = 9 (1001)
+35 + 23 = 10 (1010)
+35 + 24 = 11 (1011)
+35 + 25 = 12 (1100)
+35 + 26 = 13 (1101)
+35 + 27 = 14 (1110)
+35 + 28 = 15 (1111)
+35 + 29 = 0 (0000)
+35 + 30 = 1 (0001)
+35 + 31 = 2 (0010)
+35 + 32 = 3 (0011)
+35 + 33 = 4 (0100)
+35 + 34 = 5 (0101)
+35 + 35 = 6 (0110)
+35 + 36 = 7 (0111)
+35 + 37 = 8 (1000)
+35 + 38 = 9 (1001)
+35 + 39 = 10 (1010)
+35 + 40 = 11 (1011)
+35 + 41 = 12 (1100)
+35 + 42 = 13 (1101)
+35 + 43 = 14 (1110)
+35 + 44 = 15 (1111)
+35 + 45 = 0 (0000)
+35 + 46 = 1 (0001)
+35 + 47 = 2 (0010)
+35 + 48 = 3 (0011)
+35 + 49 = 4 (0100)
+35 + 50 = 5 (0101)
+35 + 51 = 6 (0110)
+35 + 52 = 7 (0111)
+35 + 53 = 8 (1000)
+35 + 54 = 9 (1001)
+35 + 55 = 10 (1010)
+35 + 56 = 11 (1011)
+35 + 57 = 12 (1100)
+35 + 58 = 13 (1101)
+35 + 59 = 14 (1110)
+35 + 60 = 15 (1111)
+35 + 61 = 0 (0000)
+35 + 62 = 1 (0001)
+35 + 63 = 2 (0010)
+36 + 0 = 4 (0100)
+36 + 1 = 5 (0101)
+36 + 2 = 6 (0110)
+36 + 3 = 7 (0111)
+36 + 4 = 8 (1000)
+36 + 5 = 9 (1001)
+36 + 6 = 10 (1010)
+36 + 7 = 11 (1011)
+36 + 8 = 12 (1100)
+36 + 9 = 13 (1101)
+36 + 10 = 14 (1110)
+36 + 11 = 15 (1111)
+36 + 12 = 0 (0000)
+36 + 13 = 1 (0001)
+36 + 14 = 2 (0010)
+36 + 15 = 3 (0011)
+36 + 16 = 4 (0100)
+36 + 17 = 5 (0101)
+36 + 18 = 6 (0110)
+36 + 19 = 7 (0111)
+36 + 20 = 8 (1000)
+36 + 21 = 9 (1001)
+36 + 22 = 10 (1010)
+36 + 23 = 11 (1011)
+36 + 24 = 12 (1100)
+36 + 25 = 13 (1101)
+36 + 26 = 14 (1110)
+36 + 27 = 15 (1111)
+36 + 28 = 0 (0000)
+36 + 29 = 1 (0001)
+36 + 30 = 2 (0010)
+36 + 31 = 3 (0011)
+36 + 32 = 4 (0100)
+36 + 33 = 5 (0101)
+36 + 34 = 6 (0110)
+36 + 35 = 7 (0111)
+36 + 36 = 8 (1000)
+36 + 37 = 9 (1001)
+36 + 38 = 10 (1010)
+36 + 39 = 11 (1011)
+36 + 40 = 12 (1100)
+36 + 41 = 13 (1101)
+36 + 42 = 14 (1110)
+36 + 43 = 15 (1111)
+36 + 44 = 0 (0000)
+36 + 45 = 1 (0001)
+36 + 46 = 2 (0010)
+36 + 47 = 3 (0011)
+36 + 48 = 4 (0100)
+36 + 49 = 5 (0101)
+36 + 50 = 6 (0110)
+36 + 51 = 7 (0111)
+36 + 52 = 8 (1000)
+36 + 53 = 9 (1001)
+36 + 54 = 10 (1010)
+36 + 55 = 11 (1011)
+36 + 56 = 12 (1100)
+36 + 57 = 13 (1101)
+36 + 58 = 14 (1110)
+36 + 59 = 15 (1111)
+36 + 60 = 0 (0000)
+36 + 61 = 1 (0001)
+36 + 62 = 2 (0010)
+36 + 63 = 3 (0011)
+37 + 0 = 5 (0101)
+37 + 1 = 6 (0110)
+37 + 2 = 7 (0111)
+37 + 3 = 8 (1000)
+37 + 4 = 9 (1001)
+37 + 5 = 10 (1010)
+37 + 6 = 11 (1011)
+37 + 7 = 12 (1100)
+37 + 8 = 13 (1101)
+37 + 9 = 14 (1110)
+37 + 10 = 15 (1111)
+37 + 11 = 0 (0000)
+37 + 12 = 1 (0001)
+37 + 13 = 2 (0010)
+37 + 14 = 3 (0011)
+37 + 15 = 4 (0100)
+37 + 16 = 5 (0101)
+37 + 17 = 6 (0110)
+37 + 18 = 7 (0111)
+37 + 19 = 8 (1000)
+37 + 20 = 9 (1001)
+37 + 21 = 10 (1010)
+37 + 22 = 11 (1011)
+37 + 23 = 12 (1100)
+37 + 24 = 13 (1101)
+37 + 25 = 14 (1110)
+37 + 26 = 15 (1111)
+37 + 27 = 0 (0000)
+37 + 28 = 1 (0001)
+37 + 29 = 2 (0010)
+37 + 30 = 3 (0011)
+37 + 31 = 4 (0100)
+37 + 32 = 5 (0101)
+37 + 33 = 6 (0110)
+37 + 34 = 7 (0111)
+37 + 35 = 8 (1000)
+37 + 36 = 9 (1001)
+37 + 37 = 10 (1010)
+37 + 38 = 11 (1011)
+37 + 39 = 12 (1100)
+37 + 40 = 13 (1101)
+37 + 41 = 14 (1110)
+37 + 42 = 15 (1111)
+37 + 43 = 0 (0000)
+37 + 44 = 1 (0001)
+37 + 45 = 2 (0010)
+37 + 46 = 3 (0011)
+37 + 47 = 4 (0100)
+37 + 48 = 5 (0101)
+37 + 49 = 6 (0110)
+37 + 50 = 7 (0111)
+37 + 51 = 8 (1000)
+37 + 52 = 9 (1001)
+37 + 53 = 10 (1010)
+37 + 54 = 11 (1011)
+37 + 55 = 12 (1100)
+37 + 56 = 13 (1101)
+37 + 57 = 14 (1110)
+37 + 58 = 15 (1111)
+37 + 59 = 0 (0000)
+37 + 60 = 1 (0001)
+37 + 61 = 2 (0010)
+37 + 62 = 3 (0011)
+37 + 63 = 4 (0100)
+38 + 0 = 6 (0110)
+38 + 1 = 7 (0111)
+38 + 2 = 8 (1000)
+38 + 3 = 9 (1001)
+38 + 4 = 10 (1010)
+38 + 5 = 11 (1011)
+38 + 6 = 12 (1100)
+38 + 7 = 13 (1101)
+38 + 8 = 14 (1110)
+38 + 9 = 15 (1111)
+38 + 10 = 0 (0000)
+38 + 11 = 1 (0001)
+38 + 12 = 2 (0010)
+38 + 13 = 3 (0011)
+38 + 14 = 4 (0100)
+38 + 15 = 5 (0101)
+38 + 16 = 6 (0110)
+38 + 17 = 7 (0111)
+38 + 18 = 8 (1000)
+38 + 19 = 9 (1001)
+38 + 20 = 10 (1010)
+38 + 21 = 11 (1011)
+38 + 22 = 12 (1100)
+38 + 23 = 13 (1101)
+38 + 24 = 14 (1110)
+38 + 25 = 15 (1111)
+38 + 26 = 0 (0000)
+38 + 27 = 1 (0001)
+38 + 28 = 2 (0010)
+38 + 29 = 3 (0011)
+38 + 30 = 4 (0100)
+38 + 31 = 5 (0101)
+38 + 32 = 6 (0110)
+38 + 33 = 7 (0111)
+38 + 34 = 8 (1000)
+38 + 35 = 9 (1001)
+38 + 36 = 10 (1010)
+38 + 37 = 11 (1011)
+38 + 38 = 12 (1100)
+38 + 39 = 13 (1101)
+38 + 40 = 14 (1110)
+38 + 41 = 15 (1111)
+38 + 42 = 0 (0000)
+38 + 43 = 1 (0001)
+38 + 44 = 2 (0010)
+38 + 45 = 3 (0011)
+38 + 46 = 4 (0100)
+38 + 47 = 5 (0101)
+38 + 48 = 6 (0110)
+38 + 49 = 7 (0111)
+38 + 50 = 8 (1000)
+38 + 51 = 9 (1001)
+38 + 52 = 10 (1010)
+38 + 53 = 11 (1011)
+38 + 54 = 12 (1100)
+38 + 55 = 13 (1101)
+38 + 56 = 14 (1110)
+38 + 57 = 15 (1111)
+38 + 58 = 0 (0000)
+38 + 59 = 1 (0001)
+38 + 60 = 2 (0010)
+38 + 61 = 3 (0011)
+38 + 62 = 4 (0100)
+38 + 63 = 5 (0101)
+39 + 0 = 7 (0111)
+39 + 1 = 8 (1000)
+39 + 2 = 9 (1001)
+39 + 3 = 10 (1010)
+39 + 4 = 11 (1011)
+39 + 5 = 12 (1100)
+39 + 6 = 13 (1101)
+39 + 7 = 14 (1110)
+39 + 8 = 15 (1111)
+39 + 9 = 0 (0000)
+39 + 10 = 1 (0001)
+39 + 11 = 2 (0010)
+39 + 12 = 3 (0011)
+39 + 13 = 4 (0100)
+39 + 14 = 5 (0101)
+39 + 15 = 6 (0110)
+39 + 16 = 7 (0111)
+39 + 17 = 8 (1000)
+39 + 18 = 9 (1001)
+39 + 19 = 10 (1010)
+39 + 20 = 11 (1011)
+39 + 21 = 12 (1100)
+39 + 22 = 13 (1101)
+39 + 23 = 14 (1110)
+39 + 24 = 15 (1111)
+39 + 25 = 0 (0000)
+39 + 26 = 1 (0001)
+39 + 27 = 2 (0010)
+39 + 28 = 3 (0011)
+39 + 29 = 4 (0100)
+39 + 30 = 5 (0101)
+39 + 31 = 6 (0110)
+39 + 32 = 7 (0111)
+39 + 33 = 8 (1000)
+39 + 34 = 9 (1001)
+39 + 35 = 10 (1010)
+39 + 36 = 11 (1011)
+39 + 37 = 12 (1100)
+39 + 38 = 13 (1101)
+39 + 39 = 14 (1110)
+39 + 40 = 15 (1111)
+39 + 41 = 0 (0000)
+39 + 42 = 1 (0001)
+39 + 43 = 2 (0010)
+39 + 44 = 3 (0011)
+39 + 45 = 4 (0100)
+39 + 46 = 5 (0101)
+39 + 47 = 6 (0110)
+39 + 48 = 7 (0111)
+39 + 49 = 8 (1000)
+39 + 50 = 9 (1001)
+39 + 51 = 10 (1010)
+39 + 52 = 11 (1011)
+39 + 53 = 12 (1100)
+39 + 54 = 13 (1101)
+39 + 55 = 14 (1110)
+39 + 56 = 15 (1111)
+39 + 57 = 0 (0000)
+39 + 58 = 1 (0001)
+39 + 59 = 2 (0010)
+39 + 60 = 3 (0011)
+39 + 61 = 4 (0100)
+39 + 62 = 5 (0101)
+39 + 63 = 6 (0110)
+40 + 0 = 8 (1000)
+40 + 1 = 9 (1001)
+40 + 2 = 10 (1010)
+40 + 3 = 11 (1011)
+40 + 4 = 12 (1100)
+40 + 5 = 13 (1101)
+40 + 6 = 14 (1110)
+40 + 7 = 15 (1111)
+40 + 8 = 0 (0000)
+40 + 9 = 1 (0001)
+40 + 10 = 2 (0010)
+40 + 11 = 3 (0011)
+40 + 12 = 4 (0100)
+40 + 13 = 5 (0101)
+40 + 14 = 6 (0110)
+40 + 15 = 7 (0111)
+40 + 16 = 8 (1000)
+40 + 17 = 9 (1001)
+40 + 18 = 10 (1010)
+40 + 19 = 11 (1011)
+40 + 20 = 12 (1100)
+40 + 21 = 13 (1101)
+40 + 22 = 14 (1110)
+40 + 23 = 15 (1111)
+40 + 24 = 0 (0000)
+40 + 25 = 1 (0001)
+40 + 26 = 2 (0010)
+40 + 27 = 3 (0011)
+40 + 28 = 4 (0100)
+40 + 29 = 5 (0101)
+40 + 30 = 6 (0110)
+40 + 31 = 7 (0111)
+40 + 32 = 8 (1000)
+40 + 33 = 9 (1001)
+40 + 34 = 10 (1010)
+40 + 35 = 11 (1011)
+40 + 36 = 12 (1100)
+40 + 37 = 13 (1101)
+40 + 38 = 14 (1110)
+40 + 39 = 15 (1111)
+40 + 40 = 0 (0000)
+40 + 41 = 1 (0001)
+40 + 42 = 2 (0010)
+40 + 43 = 3 (0011)
+40 + 44 = 4 (0100)
+40 + 45 = 5 (0101)
+40 + 46 = 6 (0110)
+40 + 47 = 7 (0111)
+40 + 48 = 8 (1000)
+40 + 49 = 9 (1001)
+40 + 50 = 10 (1010)
+40 + 51 = 11 (1011)
+40 + 52 = 12 (1100)
+40 + 53 = 13 (1101)
+40 + 54 = 14 (1110)
+40 + 55 = 15 (1111)
+40 + 56 = 0 (0000)
+40 + 57 = 1 (0001)
+40 + 58 = 2 (0010)
+40 + 59 = 3 (0011)
+40 + 60 = 4 (0100)
+40 + 61 = 5 (0101)
+40 + 62 = 6 (0110)
+40 + 63 = 7 (0111)
+41 + 0 = 9 (1001)
+41 + 1 = 10 (1010)
+41 + 2 = 11 (1011)
+41 + 3 = 12 (1100)
+41 + 4 = 13 (1101)
+41 + 5 = 14 (1110)
+41 + 6 = 15 (1111)
+41 + 7 = 0 (0000)
+41 + 8 = 1 (0001)
+41 + 9 = 2 (0010)
+41 + 10 = 3 (0011)
+41 + 11 = 4 (0100)
+41 + 12 = 5 (0101)
+41 + 13 = 6 (0110)
+41 + 14 = 7 (0111)
+41 + 15 = 8 (1000)
+41 + 16 = 9 (1001)
+41 + 17 = 10 (1010)
+41 + 18 = 11 (1011)
+41 + 19 = 12 (1100)
+41 + 20 = 13 (1101)
+41 + 21 = 14 (1110)
+41 + 22 = 15 (1111)
+41 + 23 = 0 (0000)
+41 + 24 = 1 (0001)
+41 + 25 = 2 (0010)
+41 + 26 = 3 (0011)
+41 + 27 = 4 (0100)
+41 + 28 = 5 (0101)
+41 + 29 = 6 (0110)
+41 + 30 = 7 (0111)
+41 + 31 = 8 (1000)
+41 + 32 = 9 (1001)
+41 + 33 = 10 (1010)
+41 + 34 = 11 (1011)
+41 + 35 = 12 (1100)
+41 + 36 = 13 (1101)
+41 + 37 = 14 (1110)
+41 + 38 = 15 (1111)
+41 + 39 = 0 (0000)
+41 + 40 = 1 (0001)
+41 + 41 = 2 (0010)
+41 + 42 = 3 (0011)
+41 + 43 = 4 (0100)
+41 + 44 = 5 (0101)
+41 + 45 = 6 (0110)
+41 + 46 = 7 (0111)
+41 + 47 = 8 (1000)
+41 + 48 = 9 (1001)
+41 + 49 = 10 (1010)
+41 + 50 = 11 (1011)
+41 + 51 = 12 (1100)
+41 + 52 = 13 (1101)
+41 + 53 = 14 (1110)
+41 + 54 = 15 (1111)
+41 + 55 = 0 (0000)
+41 + 56 = 1 (0001)
+41 + 57 = 2 (0010)
+41 + 58 = 3 (0011)
+41 + 59 = 4 (0100)
+41 + 60 = 5 (0101)
+41 + 61 = 6 (0110)
+41 + 62 = 7 (0111)
+41 + 63 = 8 (1000)
+42 + 0 = 10 (1010)
+42 + 1 = 11 (1011)
+42 + 2 = 12 (1100)
+42 + 3 = 13 (1101)
+42 + 4 = 14 (1110)
+42 + 5 = 15 (1111)
+42 + 6 = 0 (0000)
+42 + 7 = 1 (0001)
+42 + 8 = 2 (0010)
+42 + 9 = 3 (0011)
+42 + 10 = 4 (0100)
+42 + 11 = 5 (0101)
+42 + 12 = 6 (0110)
+42 + 13 = 7 (0111)
+42 + 14 = 8 (1000)
+42 + 15 = 9 (1001)
+42 + 16 = 10 (1010)
+42 + 17 = 11 (1011)
+42 + 18 = 12 (1100)
+42 + 19 = 13 (1101)
+42 + 20 = 14 (1110)
+42 + 21 = 15 (1111)
+42 + 22 = 0 (0000)
+42 + 23 = 1 (0001)
+42 + 24 = 2 (0010)
+42 + 25 = 3 (0011)
+42 + 26 = 4 (0100)
+42 + 27 = 5 (0101)
+42 + 28 = 6 (0110)
+42 + 29 = 7 (0111)
+42 + 30 = 8 (1000)
+42 + 31 = 9 (1001)
+42 + 32 = 10 (1010)
+42 + 33 = 11 (1011)
+42 + 34 = 12 (1100)
+42 + 35 = 13 (1101)
+42 + 36 = 14 (1110)
+42 + 37 = 15 (1111)
+42 + 38 = 0 (0000)
+42 + 39 = 1 (0001)
+42 + 40 = 2 (0010)
+42 + 41 = 3 (0011)
+42 + 42 = 4 (0100)
+42 + 43 = 5 (0101)
+42 + 44 = 6 (0110)
+42 + 45 = 7 (0111)
+42 + 46 = 8 (1000)
+42 + 47 = 9 (1001)
+42 + 48 = 10 (1010)
+42 + 49 = 11 (1011)
+42 + 50 = 12 (1100)
+42 + 51 = 13 (1101)
+42 + 52 = 14 (1110)
+42 + 53 = 15 (1111)
+42 + 54 = 0 (0000)
+42 + 55 = 1 (0001)
+42 + 56 = 2 (0010)
+42 + 57 = 3 (0011)
+42 + 58 = 4 (0100)
+42 + 59 = 5 (0101)
+42 + 60 = 6 (0110)
+42 + 61 = 7 (0111)
+42 + 62 = 8 (1000)
+42 + 63 = 9 (1001)
+43 + 0 = 11 (1011)
+43 + 1 = 12 (1100)
+43 + 2 = 13 (1101)
+43 + 3 = 14 (1110)
+43 + 4 = 15 (1111)
+43 + 5 = 0 (0000)
+43 + 6 = 1 (0001)
+43 + 7 = 2 (0010)
+43 + 8 = 3 (0011)
+43 + 9 = 4 (0100)
+43 + 10 = 5 (0101)
+43 + 11 = 6 (0110)
+43 + 12 = 7 (0111)
+43 + 13 = 8 (1000)
+43 + 14 = 9 (1001)
+43 + 15 = 10 (1010)
+43 + 16 = 11 (1011)
+43 + 17 = 12 (1100)
+43 + 18 = 13 (1101)
+43 + 19 = 14 (1110)
+43 + 20 = 15 (1111)
+43 + 21 = 0 (0000)
+43 + 22 = 1 (0001)
+43 + 23 = 2 (0010)
+43 + 24 = 3 (0011)
+43 + 25 = 4 (0100)
+43 + 26 = 5 (0101)
+43 + 27 = 6 (0110)
+43 + 28 = 7 (0111)
+43 + 29 = 8 (1000)
+43 + 30 = 9 (1001)
+43 + 31 = 10 (1010)
+43 + 32 = 11 (1011)
+43 + 33 = 12 (1100)
+43 + 34 = 13 (1101)
+43 + 35 = 14 (1110)
+43 + 36 = 15 (1111)
+43 + 37 = 0 (0000)
+43 + 38 = 1 (0001)
+43 + 39 = 2 (0010)
+43 + 40 = 3 (0011)
+43 + 41 = 4 (0100)
+43 + 42 = 5 (0101)
+43 + 43 = 6 (0110)
+43 + 44 = 7 (0111)
+43 + 45 = 8 (1000)
+43 + 46 = 9 (1001)
+43 + 47 = 10 (1010)
+43 + 48 = 11 (1011)
+43 + 49 = 12 (1100)
+43 + 50 = 13 (1101)
+43 + 51 = 14 (1110)
+43 + 52 = 15 (1111)
+43 + 53 = 0 (0000)
+43 + 54 = 1 (0001)
+43 + 55 = 2 (0010)
+43 + 56 = 3 (0011)
+43 + 57 = 4 (0100)
+43 + 58 = 5 (0101)
+43 + 59 = 6 (0110)
+43 + 60 = 7 (0111)
+43 + 61 = 8 (1000)
+43 + 62 = 9 (1001)
+43 + 63 = 10 (1010)
+44 + 0 = 12 (1100)
+44 + 1 = 13 (1101)
+44 + 2 = 14 (1110)
+44 + 3 = 15 (1111)
+44 + 4 = 0 (0000)
+44 + 5 = 1 (0001)
+44 + 6 = 2 (0010)
+44 + 7 = 3 (0011)
+44 + 8 = 4 (0100)
+44 + 9 = 5 (0101)
+44 + 10 = 6 (0110)
+44 + 11 = 7 (0111)
+44 + 12 = 8 (1000)
+44 + 13 = 9 (1001)
+44 + 14 = 10 (1010)
+44 + 15 = 11 (1011)
+44 + 16 = 12 (1100)
+44 + 17 = 13 (1101)
+44 + 18 = 14 (1110)
+44 + 19 = 15 (1111)
+44 + 20 = 0 (0000)
+44 + 21 = 1 (0001)
+44 + 22 = 2 (0010)
+44 + 23 = 3 (0011)
+44 + 24 = 4 (0100)
+44 + 25 = 5 (0101)
+44 + 26 = 6 (0110)
+44 + 27 = 7 (0111)
+44 + 28 = 8 (1000)
+44 + 29 = 9 (1001)
+44 + 30 = 10 (1010)
+44 + 31 = 11 (1011)
+44 + 32 = 12 (1100)
+44 + 33 = 13 (1101)
+44 + 34 = 14 (1110)
+44 + 35 = 15 (1111)
+44 + 36 = 0 (0000)
+44 + 37 = 1 (0001)
+44 + 38 = 2 (0010)
+44 + 39 = 3 (0011)
+44 + 40 = 4 (0100)
+44 + 41 = 5 (0101)
+44 + 42 = 6 (0110)
+44 + 43 = 7 (0111)
+44 + 44 = 8 (1000)
+44 + 45 = 9 (1001)
+44 + 46 = 10 (1010)
+44 + 47 = 11 (1011)
+44 + 48 = 12 (1100)
+44 + 49 = 13 (1101)
+44 + 50 = 14 (1110)
+44 + 51 = 15 (1111)
+44 + 52 = 0 (0000)
+44 + 53 = 1 (0001)
+44 + 54 = 2 (0010)
+44 + 55 = 3 (0011)
+44 + 56 = 4 (0100)
+44 + 57 = 5 (0101)
+44 + 58 = 6 (0110)
+44 + 59 = 7 (0111)
+44 + 60 = 8 (1000)
+44 + 61 = 9 (1001)
+44 + 62 = 10 (1010)
+44 + 63 = 11 (1011)
+45 + 0 = 13 (1101)
+45 + 1 = 14 (1110)
+45 + 2 = 15 (1111)
+45 + 3 = 0 (0000)
+45 + 4 = 1 (0001)
+45 + 5 = 2 (0010)
+45 + 6 = 3 (0011)
+45 + 7 = 4 (0100)
+45 + 8 = 5 (0101)
+45 + 9 = 6 (0110)
+45 + 10 = 7 (0111)
+45 + 11 = 8 (1000)
+45 + 12 = 9 (1001)
+45 + 13 = 10 (1010)
+45 + 14 = 11 (1011)
+45 + 15 = 12 (1100)
+45 + 16 = 13 (1101)
+45 + 17 = 14 (1110)
+45 + 18 = 15 (1111)
+45 + 19 = 0 (0000)
+45 + 20 = 1 (0001)
+45 + 21 = 2 (0010)
+45 + 22 = 3 (0011)
+45 + 23 = 4 (0100)
+45 + 24 = 5 (0101)
+45 + 25 = 6 (0110)
+45 + 26 = 7 (0111)
+45 + 27 = 8 (1000)
+45 + 28 = 9 (1001)
+45 + 29 = 10 (1010)
+45 + 30 = 11 (1011)
+45 + 31 = 12 (1100)
+45 + 32 = 13 (1101)
+45 + 33 = 14 (1110)
+45 + 34 = 15 (1111)
+45 + 35 = 0 (0000)
+45 + 36 = 1 (0001)
+45 + 37 = 2 (0010)
+45 + 38 = 3 (0011)
+45 + 39 = 4 (0100)
+45 + 40 = 5 (0101)
+45 + 41 = 6 (0110)
+45 + 42 = 7 (0111)
+45 + 43 = 8 (1000)
+45 + 44 = 9 (1001)
+45 + 45 = 10 (1010)
+45 + 46 = 11 (1011)
+45 + 47 = 12 (1100)
+45 + 48 = 13 (1101)
+45 + 49 = 14 (1110)
+45 + 50 = 15 (1111)
+45 + 51 = 0 (0000)
+45 + 52 = 1 (0001)
+45 + 53 = 2 (0010)
+45 + 54 = 3 (0011)
+45 + 55 = 4 (0100)
+45 + 56 = 5 (0101)
+45 + 57 = 6 (0110)
+45 + 58 = 7 (0111)
+45 + 59 = 8 (1000)
+45 + 60 = 9 (1001)
+45 + 61 = 10 (1010)
+45 + 62 = 11 (1011)
+45 + 63 = 12 (1100)
+46 + 0 = 14 (1110)
+46 + 1 = 15 (1111)
+46 + 2 = 0 (0000)
+46 + 3 = 1 (0001)
+46 + 4 = 2 (0010)
+46 + 5 = 3 (0011)
+46 + 6 = 4 (0100)
+46 + 7 = 5 (0101)
+46 + 8 = 6 (0110)
+46 + 9 = 7 (0111)
+46 + 10 = 8 (1000)
+46 + 11 = 9 (1001)
+46 + 12 = 10 (1010)
+46 + 13 = 11 (1011)
+46 + 14 = 12 (1100)
+46 + 15 = 13 (1101)
+46 + 16 = 14 (1110)
+46 + 17 = 15 (1111)
+46 + 18 = 0 (0000)
+46 + 19 = 1 (0001)
+46 + 20 = 2 (0010)
+46 + 21 = 3 (0011)
+46 + 22 = 4 (0100)
+46 + 23 = 5 (0101)
+46 + 24 = 6 (0110)
+46 + 25 = 7 (0111)
+46 + 26 = 8 (1000)
+46 + 27 = 9 (1001)
+46 + 28 = 10 (1010)
+46 + 29 = 11 (1011)
+46 + 30 = 12 (1100)
+46 + 31 = 13 (1101)
+46 + 32 = 14 (1110)
+46 + 33 = 15 (1111)
+46 + 34 = 0 (0000)
+46 + 35 = 1 (0001)
+46 + 36 = 2 (0010)
+46 + 37 = 3 (0011)
+46 + 38 = 4 (0100)
+46 + 39 = 5 (0101)
+46 + 40 = 6 (0110)
+46 + 41 = 7 (0111)
+46 + 42 = 8 (1000)
+46 + 43 = 9 (1001)
+46 + 44 = 10 (1010)
+46 + 45 = 11 (1011)
+46 + 46 = 12 (1100)
+46 + 47 = 13 (1101)
+46 + 48 = 14 (1110)
+46 + 49 = 15 (1111)
+46 + 50 = 0 (0000)
+46 + 51 = 1 (0001)
+46 + 52 = 2 (0010)
+46 + 53 = 3 (0011)
+46 + 54 = 4 (0100)
+46 + 55 = 5 (0101)
+46 + 56 = 6 (0110)
+46 + 57 = 7 (0111)
+46 + 58 = 8 (1000)
+46 + 59 = 9 (1001)
+46 + 60 = 10 (1010)
+46 + 61 = 11 (1011)
+46 + 62 = 12 (1100)
+46 + 63 = 13 (1101)
+47 + 0 = 15 (1111)
+47 + 1 = 0 (0000)
+47 + 2 = 1 (0001)
+47 + 3 = 2 (0010)
+47 + 4 = 3 (0011)
+47 + 5 = 4 (0100)
+47 + 6 = 5 (0101)
+47 + 7 = 6 (0110)
+47 + 8 = 7 (0111)
+47 + 9 = 8 (1000)
+47 + 10 = 9 (1001)
+47 + 11 = 10 (1010)
+47 + 12 = 11 (1011)
+47 + 13 = 12 (1100)
+47 + 14 = 13 (1101)
+47 + 15 = 14 (1110)
+47 + 16 = 15 (1111)
+47 + 17 = 0 (0000)
+47 + 18 = 1 (0001)
+47 + 19 = 2 (0010)
+47 + 20 = 3 (0011)
+47 + 21 = 4 (0100)
+47 + 22 = 5 (0101)
+47 + 23 = 6 (0110)
+47 + 24 = 7 (0111)
+47 + 25 = 8 (1000)
+47 + 26 = 9 (1001)
+47 + 27 = 10 (1010)
+47 + 28 = 11 (1011)
+47 + 29 = 12 (1100)
+47 + 30 = 13 (1101)
+47 + 31 = 14 (1110)
+47 + 32 = 15 (1111)
+47 + 33 = 0 (0000)
+47 + 34 = 1 (0001)
+47 + 35 = 2 (0010)
+47 + 36 = 3 (0011)
+47 + 37 = 4 (0100)
+47 + 38 = 5 (0101)
+47 + 39 = 6 (0110)
+47 + 40 = 7 (0111)
+47 + 41 = 8 (1000)
+47 + 42 = 9 (1001)
+47 + 43 = 10 (1010)
+47 + 44 = 11 (1011)
+47 + 45 = 12 (1100)
+47 + 46 = 13 (1101)
+47 + 47 = 14 (1110)
+47 + 48 = 15 (1111)
+47 + 49 = 0 (0000)
+47 + 50 = 1 (0001)
+47 + 51 = 2 (0010)
+47 + 52 = 3 (0011)
+47 + 53 = 4 (0100)
+47 + 54 = 5 (0101)
+47 + 55 = 6 (0110)
+47 + 56 = 7 (0111)
+47 + 57 = 8 (1000)
+47 + 58 = 9 (1001)
+47 + 59 = 10 (1010)
+47 + 60 = 11 (1011)
+47 + 61 = 12 (1100)
+47 + 62 = 13 (1101)
+47 + 63 = 14 (1110)
+48 + 0 = 0 (0000)
+48 + 1 = 1 (0001)
+48 + 2 = 2 (0010)
+48 + 3 = 3 (0011)
+48 + 4 = 4 (0100)
+48 + 5 = 5 (0101)
+48 + 6 = 6 (0110)
+48 + 7 = 7 (0111)
+48 + 8 = 8 (1000)
+48 + 9 = 9 (1001)
+48 + 10 = 10 (1010)
+48 + 11 = 11 (1011)
+48 + 12 = 12 (1100)
+48 + 13 = 13 (1101)
+48 + 14 = 14 (1110)
+48 + 15 = 15 (1111)
+48 + 16 = 0 (0000)
+48 + 17 = 1 (0001)
+48 + 18 = 2 (0010)
+48 + 19 = 3 (0011)
+48 + 20 = 4 (0100)
+48 + 21 = 5 (0101)
+48 + 22 = 6 (0110)
+48 + 23 = 7 (0111)
+48 + 24 = 8 (1000)
+48 + 25 = 9 (1001)
+48 + 26 = 10 (1010)
+48 + 27 = 11 (1011)
+48 + 28 = 12 (1100)
+48 + 29 = 13 (1101)
+48 + 30 = 14 (1110)
+48 + 31 = 15 (1111)
+48 + 32 = 0 (0000)
+48 + 33 = 1 (0001)
+48 + 34 = 2 (0010)
+48 + 35 = 3 (0011)
+48 + 36 = 4 (0100)
+48 + 37 = 5 (0101)
+48 + 38 = 6 (0110)
+48 + 39 = 7 (0111)
+48 + 40 = 8 (1000)
+48 + 41 = 9 (1001)
+48 + 42 = 10 (1010)
+48 + 43 = 11 (1011)
+48 + 44 = 12 (1100)
+48 + 45 = 13 (1101)
+48 + 46 = 14 (1110)
+48 + 47 = 15 (1111)
+48 + 48 = 0 (0000)
+48 + 49 = 1 (0001)
+48 + 50 = 2 (0010)
+48 + 51 = 3 (0011)
+48 + 52 = 4 (0100)
+48 + 53 = 5 (0101)
+48 + 54 = 6 (0110)
+48 + 55 = 7 (0111)
+48 + 56 = 8 (1000)
+48 + 57 = 9 (1001)
+48 + 58 = 10 (1010)
+48 + 59 = 11 (1011)
+48 + 60 = 12 (1100)
+48 + 61 = 13 (1101)
+48 + 62 = 14 (1110)
+48 + 63 = 15 (1111)
+49 + 0 = 1 (0001)
+49 + 1 = 2 (0010)
+49 + 2 = 3 (0011)
+49 + 3 = 4 (0100)
+49 + 4 = 5 (0101)
+49 + 5 = 6 (0110)
+49 + 6 = 7 (0111)
+49 + 7 = 8 (1000)
+49 + 8 = 9 (1001)
+49 + 9 = 10 (1010)
+49 + 10 = 11 (1011)
+49 + 11 = 12 (1100)
+49 + 12 = 13 (1101)
+49 + 13 = 14 (1110)
+49 + 14 = 15 (1111)
+49 + 15 = 0 (0000)
+49 + 16 = 1 (0001)
+49 + 17 = 2 (0010)
+49 + 18 = 3 (0011)
+49 + 19 = 4 (0100)
+49 + 20 = 5 (0101)
+49 + 21 = 6 (0110)
+49 + 22 = 7 (0111)
+49 + 23 = 8 (1000)
+49 + 24 = 9 (1001)
+49 + 25 = 10 (1010)
+49 + 26 = 11 (1011)
+49 + 27 = 12 (1100)
+49 + 28 = 13 (1101)
+49 + 29 = 14 (1110)
+49 + 30 = 15 (1111)
+49 + 31 = 0 (0000)
+49 + 32 = 1 (0001)
+49 + 33 = 2 (0010)
+49 + 34 = 3 (0011)
+49 + 35 = 4 (0100)
+49 + 36 = 5 (0101)
+49 + 37 = 6 (0110)
+49 + 38 = 7 (0111)
+49 + 39 = 8 (1000)
+49 + 40 = 9 (1001)
+49 + 41 = 10 (1010)
+49 + 42 = 11 (1011)
+49 + 43 = 12 (1100)
+49 + 44 = 13 (1101)
+49 + 45 = 14 (1110)
+49 + 46 = 15 (1111)
+49 + 47 = 0 (0000)
+49 + 48 = 1 (0001)
+49 + 49 = 2 (0010)
+49 + 50 = 3 (0011)
+49 + 51 = 4 (0100)
+49 + 52 = 5 (0101)
+49 + 53 = 6 (0110)
+49 + 54 = 7 (0111)
+49 + 55 = 8 (1000)
+49 + 56 = 9 (1001)
+49 + 57 = 10 (1010)
+49 + 58 = 11 (1011)
+49 + 59 = 12 (1100)
+49 + 60 = 13 (1101)
+49 + 61 = 14 (1110)
+49 + 62 = 15 (1111)
+49 + 63 = 0 (0000)
+50 + 0 = 2 (0010)
+50 + 1 = 3 (0011)
+50 + 2 = 4 (0100)
+50 + 3 = 5 (0101)
+50 + 4 = 6 (0110)
+50 + 5 = 7 (0111)
+50 + 6 = 8 (1000)
+50 + 7 = 9 (1001)
+50 + 8 = 10 (1010)
+50 + 9 = 11 (1011)
+50 + 10 = 12 (1100)
+50 + 11 = 13 (1101)
+50 + 12 = 14 (1110)
+50 + 13 = 15 (1111)
+50 + 14 = 0 (0000)
+50 + 15 = 1 (0001)
+50 + 16 = 2 (0010)
+50 + 17 = 3 (0011)
+50 + 18 = 4 (0100)
+50 + 19 = 5 (0101)
+50 + 20 = 6 (0110)
+50 + 21 = 7 (0111)
+50 + 22 = 8 (1000)
+50 + 23 = 9 (1001)
+50 + 24 = 10 (1010)
+50 + 25 = 11 (1011)
+50 + 26 = 12 (1100)
+50 + 27 = 13 (1101)
+50 + 28 = 14 (1110)
+50 + 29 = 15 (1111)
+50 + 30 = 0 (0000)
+50 + 31 = 1 (0001)
+50 + 32 = 2 (0010)
+50 + 33 = 3 (0011)
+50 + 34 = 4 (0100)
+50 + 35 = 5 (0101)
+50 + 36 = 6 (0110)
+50 + 37 = 7 (0111)
+50 + 38 = 8 (1000)
+50 + 39 = 9 (1001)
+50 + 40 = 10 (1010)
+50 + 41 = 11 (1011)
+50 + 42 = 12 (1100)
+50 + 43 = 13 (1101)
+50 + 44 = 14 (1110)
+50 + 45 = 15 (1111)
+50 + 46 = 0 (0000)
+50 + 47 = 1 (0001)
+50 + 48 = 2 (0010)
+50 + 49 = 3 (0011)
+50 + 50 = 4 (0100)
+50 + 51 = 5 (0101)
+50 + 52 = 6 (0110)
+50 + 53 = 7 (0111)
+50 + 54 = 8 (1000)
+50 + 55 = 9 (1001)
+50 + 56 = 10 (1010)
+50 + 57 = 11 (1011)
+50 + 58 = 12 (1100)
+50 + 59 = 13 (1101)
+50 + 60 = 14 (1110)
+50 + 61 = 15 (1111)
+50 + 62 = 0 (0000)
+50 + 63 = 1 (0001)
+51 + 0 = 3 (0011)
+51 + 1 = 4 (0100)
+51 + 2 = 5 (0101)
+51 + 3 = 6 (0110)
+51 + 4 = 7 (0111)
+51 + 5 = 8 (1000)
+51 + 6 = 9 (1001)
+51 + 7 = 10 (1010)
+51 + 8 = 11 (1011)
+51 + 9 = 12 (1100)
+51 + 10 = 13 (1101)
+51 + 11 = 14 (1110)
+51 + 12 = 15 (1111)
+51 + 13 = 0 (0000)
+51 + 14 = 1 (0001)
+51 + 15 = 2 (0010)
+51 + 16 = 3 (0011)
+51 + 17 = 4 (0100)
+51 + 18 = 5 (0101)
+51 + 19 = 6 (0110)
+51 + 20 = 7 (0111)
+51 + 21 = 8 (1000)
+51 + 22 = 9 (1001)
+51 + 23 = 10 (1010)
+51 + 24 = 11 (1011)
+51 + 25 = 12 (1100)
+51 + 26 = 13 (1101)
+51 + 27 = 14 (1110)
+51 + 28 = 15 (1111)
+51 + 29 = 0 (0000)
+51 + 30 = 1 (0001)
+51 + 31 = 2 (0010)
+51 + 32 = 3 (0011)
+51 + 33 = 4 (0100)
+51 + 34 = 5 (0101)
+51 + 35 = 6 (0110)
+51 + 36 = 7 (0111)
+51 + 37 = 8 (1000)
+51 + 38 = 9 (1001)
+51 + 39 = 10 (1010)
+51 + 40 = 11 (1011)
+51 + 41 = 12 (1100)
+51 + 42 = 13 (1101)
+51 + 43 = 14 (1110)
+51 + 44 = 15 (1111)
+51 + 45 = 0 (0000)
+51 + 46 = 1 (0001)
+51 + 47 = 2 (0010)
+51 + 48 = 3 (0011)
+51 + 49 = 4 (0100)
+51 + 50 = 5 (0101)
+51 + 51 = 6 (0110)
+51 + 52 = 7 (0111)
+51 + 53 = 8 (1000)
+51 + 54 = 9 (1001)
+51 + 55 = 10 (1010)
+51 + 56 = 11 (1011)
+51 + 57 = 12 (1100)
+51 + 58 = 13 (1101)
+51 + 59 = 14 (1110)
+51 + 60 = 15 (1111)
+51 + 61 = 0 (0000)
+51 + 62 = 1 (0001)
+51 + 63 = 2 (0010)
+52 + 0 = 4 (0100)
+52 + 1 = 5 (0101)
+52 + 2 = 6 (0110)
+52 + 3 = 7 (0111)
+52 + 4 = 8 (1000)
+52 + 5 = 9 (1001)
+52 + 6 = 10 (1010)
+52 + 7 = 11 (1011)
+52 + 8 = 12 (1100)
+52 + 9 = 13 (1101)
+52 + 10 = 14 (1110)
+52 + 11 = 15 (1111)
+52 + 12 = 0 (0000)
+52 + 13 = 1 (0001)
+52 + 14 = 2 (0010)
+52 + 15 = 3 (0011)
+52 + 16 = 4 (0100)
+52 + 17 = 5 (0101)
+52 + 18 = 6 (0110)
+52 + 19 = 7 (0111)
+52 + 20 = 8 (1000)
+52 + 21 = 9 (1001)
+52 + 22 = 10 (1010)
+52 + 23 = 11 (1011)
+52 + 24 = 12 (1100)
+52 + 25 = 13 (1101)
+52 + 26 = 14 (1110)
+52 + 27 = 15 (1111)
+52 + 28 = 0 (0000)
+52 + 29 = 1 (0001)
+52 + 30 = 2 (0010)
+52 + 31 = 3 (0011)
+52 + 32 = 4 (0100)
+52 + 33 = 5 (0101)
+52 + 34 = 6 (0110)
+52 + 35 = 7 (0111)
+52 + 36 = 8 (1000)
+52 + 37 = 9 (1001)
+52 + 38 = 10 (1010)
+52 + 39 = 11 (1011)
+52 + 40 = 12 (1100)
+52 + 41 = 13 (1101)
+52 + 42 = 14 (1110)
+52 + 43 = 15 (1111)
+52 + 44 = 0 (0000)
+52 + 45 = 1 (0001)
+52 + 46 = 2 (0010)
+52 + 47 = 3 (0011)
+52 + 48 = 4 (0100)
+52 + 49 = 5 (0101)
+52 + 50 = 6 (0110)
+52 + 51 = 7 (0111)
+52 + 52 = 8 (1000)
+52 + 53 = 9 (1001)
+52 + 54 = 10 (1010)
+52 + 55 = 11 (1011)
+52 + 56 = 12 (1100)
+52 + 57 = 13 (1101)
+52 + 58 = 14 (1110)
+52 + 59 = 15 (1111)
+52 + 60 = 0 (0000)
+52 + 61 = 1 (0001)
+52 + 62 = 2 (0010)
+52 + 63 = 3 (0011)
+53 + 0 = 5 (0101)
+53 + 1 = 6 (0110)
+53 + 2 = 7 (0111)
+53 + 3 = 8 (1000)
+53 + 4 = 9 (1001)
+53 + 5 = 10 (1010)
+53 + 6 = 11 (1011)
+53 + 7 = 12 (1100)
+53 + 8 = 13 (1101)
+53 + 9 = 14 (1110)
+53 + 10 = 15 (1111)
+53 + 11 = 0 (0000)
+53 + 12 = 1 (0001)
+53 + 13 = 2 (0010)
+53 + 14 = 3 (0011)
+53 + 15 = 4 (0100)
+53 + 16 = 5 (0101)
+53 + 17 = 6 (0110)
+53 + 18 = 7 (0111)
+53 + 19 = 8 (1000)
+53 + 20 = 9 (1001)
+53 + 21 = 10 (1010)
+53 + 22 = 11 (1011)
+53 + 23 = 12 (1100)
+53 + 24 = 13 (1101)
+53 + 25 = 14 (1110)
+53 + 26 = 15 (1111)
+53 + 27 = 0 (0000)
+53 + 28 = 1 (0001)
+53 + 29 = 2 (0010)
+53 + 30 = 3 (0011)
+53 + 31 = 4 (0100)
+53 + 32 = 5 (0101)
+53 + 33 = 6 (0110)
+53 + 34 = 7 (0111)
+53 + 35 = 8 (1000)
+53 + 36 = 9 (1001)
+53 + 37 = 10 (1010)
+53 + 38 = 11 (1011)
+53 + 39 = 12 (1100)
+53 + 40 = 13 (1101)
+53 + 41 = 14 (1110)
+53 + 42 = 15 (1111)
+53 + 43 = 0 (0000)
+53 + 44 = 1 (0001)
+53 + 45 = 2 (0010)
+53 + 46 = 3 (0011)
+53 + 47 = 4 (0100)
+53 + 48 = 5 (0101)
+53 + 49 = 6 (0110)
+53 + 50 = 7 (0111)
+53 + 51 = 8 (1000)
+53 + 52 = 9 (1001)
+53 + 53 = 10 (1010)
+53 + 54 = 11 (1011)
+53 + 55 = 12 (1100)
+53 + 56 = 13 (1101)
+53 + 57 = 14 (1110)
+53 + 58 = 15 (1111)
+53 + 59 = 0 (0000)
+53 + 60 = 1 (0001)
+53 + 61 = 2 (0010)
+53 + 62 = 3 (0011)
+53 + 63 = 4 (0100)
+54 + 0 = 6 (0110)
+54 + 1 = 7 (0111)
+54 + 2 = 8 (1000)
+54 + 3 = 9 (1001)
+54 + 4 = 10 (1010)
+54 + 5 = 11 (1011)
+54 + 6 = 12 (1100)
+54 + 7 = 13 (1101)
+54 + 8 = 14 (1110)
+54 + 9 = 15 (1111)
+54 + 10 = 0 (0000)
+54 + 11 = 1 (0001)
+54 + 12 = 2 (0010)
+54 + 13 = 3 (0011)
+54 + 14 = 4 (0100)
+54 + 15 = 5 (0101)
+54 + 16 = 6 (0110)
+54 + 17 = 7 (0111)
+54 + 18 = 8 (1000)
+54 + 19 = 9 (1001)
+54 + 20 = 10 (1010)
+54 + 21 = 11 (1011)
+54 + 22 = 12 (1100)
+54 + 23 = 13 (1101)
+54 + 24 = 14 (1110)
+54 + 25 = 15 (1111)
+54 + 26 = 0 (0000)
+54 + 27 = 1 (0001)
+54 + 28 = 2 (0010)
+54 + 29 = 3 (0011)
+54 + 30 = 4 (0100)
+54 + 31 = 5 (0101)
+54 + 32 = 6 (0110)
+54 + 33 = 7 (0111)
+54 + 34 = 8 (1000)
+54 + 35 = 9 (1001)
+54 + 36 = 10 (1010)
+54 + 37 = 11 (1011)
+54 + 38 = 12 (1100)
+54 + 39 = 13 (1101)
+54 + 40 = 14 (1110)
+54 + 41 = 15 (1111)
+54 + 42 = 0 (0000)
+54 + 43 = 1 (0001)
+54 + 44 = 2 (0010)
+54 + 45 = 3 (0011)
+54 + 46 = 4 (0100)
+54 + 47 = 5 (0101)
+54 + 48 = 6 (0110)
+54 + 49 = 7 (0111)
+54 + 50 = 8 (1000)
+54 + 51 = 9 (1001)
+54 + 52 = 10 (1010)
+54 + 53 = 11 (1011)
+54 + 54 = 12 (1100)
+54 + 55 = 13 (1101)
+54 + 56 = 14 (1110)
+54 + 57 = 15 (1111)
+54 + 58 = 0 (0000)
+54 + 59 = 1 (0001)
+54 + 60 = 2 (0010)
+54 + 61 = 3 (0011)
+54 + 62 = 4 (0100)
+54 + 63 = 5 (0101)
+55 + 0 = 7 (0111)
+55 + 1 = 8 (1000)
+55 + 2 = 9 (1001)
+55 + 3 = 10 (1010)
+55 + 4 = 11 (1011)
+55 + 5 = 12 (1100)
+55 + 6 = 13 (1101)
+55 + 7 = 14 (1110)
+55 + 8 = 15 (1111)
+55 + 9 = 0 (0000)
+55 + 10 = 1 (0001)
+55 + 11 = 2 (0010)
+55 + 12 = 3 (0011)
+55 + 13 = 4 (0100)
+55 + 14 = 5 (0101)
+55 + 15 = 6 (0110)
+55 + 16 = 7 (0111)
+55 + 17 = 8 (1000)
+55 + 18 = 9 (1001)
+55 + 19 = 10 (1010)
+55 + 20 = 11 (1011)
+55 + 21 = 12 (1100)
+55 + 22 = 13 (1101)
+55 + 23 = 14 (1110)
+55 + 24 = 15 (1111)
+55 + 25 = 0 (0000)
+55 + 26 = 1 (0001)
+55 + 27 = 2 (0010)
+55 + 28 = 3 (0011)
+55 + 29 = 4 (0100)
+55 + 30 = 5 (0101)
+55 + 31 = 6 (0110)
+55 + 32 = 7 (0111)
+55 + 33 = 8 (1000)
+55 + 34 = 9 (1001)
+55 + 35 = 10 (1010)
+55 + 36 = 11 (1011)
+55 + 37 = 12 (1100)
+55 + 38 = 13 (1101)
+55 + 39 = 14 (1110)
+55 + 40 = 15 (1111)
+55 + 41 = 0 (0000)
+55 + 42 = 1 (0001)
+55 + 43 = 2 (0010)
+55 + 44 = 3 (0011)
+55 + 45 = 4 (0100)
+55 + 46 = 5 (0101)
+55 + 47 = 6 (0110)
+55 + 48 = 7 (0111)
+55 + 49 = 8 (1000)
+55 + 50 = 9 (1001)
+55 + 51 = 10 (1010)
+55 + 52 = 11 (1011)
+55 + 53 = 12 (1100)
+55 + 54 = 13 (1101)
+55 + 55 = 14 (1110)
+55 + 56 = 15 (1111)
+55 + 57 = 0 (0000)
+55 + 58 = 1 (0001)
+55 + 59 = 2 (0010)
+55 + 60 = 3 (0011)
+55 + 61 = 4 (0100)
+55 + 62 = 5 (0101)
+55 + 63 = 6 (0110)
+56 + 0 = 8 (1000)
+56 + 1 = 9 (1001)
+56 + 2 = 10 (1010)
+56 + 3 = 11 (1011)
+56 + 4 = 12 (1100)
+56 + 5 = 13 (1101)
+56 + 6 = 14 (1110)
+56 + 7 = 15 (1111)
+56 + 8 = 0 (0000)
+56 + 9 = 1 (0001)
+56 + 10 = 2 (0010)
+56 + 11 = 3 (0011)
+56 + 12 = 4 (0100)
+56 + 13 = 5 (0101)
+56 + 14 = 6 (0110)
+56 + 15 = 7 (0111)
+56 + 16 = 8 (1000)
+56 + 17 = 9 (1001)
+56 + 18 = 10 (1010)
+56 + 19 = 11 (1011)
+56 + 20 = 12 (1100)
+56 + 21 = 13 (1101)
+56 + 22 = 14 (1110)
+56 + 23 = 15 (1111)
+56 + 24 = 0 (0000)
+56 + 25 = 1 (0001)
+56 + 26 = 2 (0010)
+56 + 27 = 3 (0011)
+56 + 28 = 4 (0100)
+56 + 29 = 5 (0101)
+56 + 30 = 6 (0110)
+56 + 31 = 7 (0111)
+56 + 32 = 8 (1000)
+56 + 33 = 9 (1001)
+56 + 34 = 10 (1010)
+56 + 35 = 11 (1011)
+56 + 36 = 12 (1100)
+56 + 37 = 13 (1101)
+56 + 38 = 14 (1110)
+56 + 39 = 15 (1111)
+56 + 40 = 0 (0000)
+56 + 41 = 1 (0001)
+56 + 42 = 2 (0010)
+56 + 43 = 3 (0011)
+56 + 44 = 4 (0100)
+56 + 45 = 5 (0101)
+56 + 46 = 6 (0110)
+56 + 47 = 7 (0111)
+56 + 48 = 8 (1000)
+56 + 49 = 9 (1001)
+56 + 50 = 10 (1010)
+56 + 51 = 11 (1011)
+56 + 52 = 12 (1100)
+56 + 53 = 13 (1101)
+56 + 54 = 14 (1110)
+56 + 55 = 15 (1111)
+56 + 56 = 0 (0000)
+56 + 57 = 1 (0001)
+56 + 58 = 2 (0010)
+56 + 59 = 3 (0011)
+56 + 60 = 4 (0100)
+56 + 61 = 5 (0101)
+56 + 62 = 6 (0110)
+56 + 63 = 7 (0111)
+57 + 0 = 9 (1001)
+57 + 1 = 10 (1010)
+57 + 2 = 11 (1011)
+57 + 3 = 12 (1100)
+57 + 4 = 13 (1101)
+57 + 5 = 14 (1110)
+57 + 6 = 15 (1111)
+57 + 7 = 0 (0000)
+57 + 8 = 1 (0001)
+57 + 9 = 2 (0010)
+57 + 10 = 3 (0011)
+57 + 11 = 4 (0100)
+57 + 12 = 5 (0101)
+57 + 13 = 6 (0110)
+57 + 14 = 7 (0111)
+57 + 15 = 8 (1000)
+57 + 16 = 9 (1001)
+57 + 17 = 10 (1010)
+57 + 18 = 11 (1011)
+57 + 19 = 12 (1100)
+57 + 20 = 13 (1101)
+57 + 21 = 14 (1110)
+57 + 22 = 15 (1111)
+57 + 23 = 0 (0000)
+57 + 24 = 1 (0001)
+57 + 25 = 2 (0010)
+57 + 26 = 3 (0011)
+57 + 27 = 4 (0100)
+57 + 28 = 5 (0101)
+57 + 29 = 6 (0110)
+57 + 30 = 7 (0111)
+57 + 31 = 8 (1000)
+57 + 32 = 9 (1001)
+57 + 33 = 10 (1010)
+57 + 34 = 11 (1011)
+57 + 35 = 12 (1100)
+57 + 36 = 13 (1101)
+57 + 37 = 14 (1110)
+57 + 38 = 15 (1111)
+57 + 39 = 0 (0000)
+57 + 40 = 1 (0001)
+57 + 41 = 2 (0010)
+57 + 42 = 3 (0011)
+57 + 43 = 4 (0100)
+57 + 44 = 5 (0101)
+57 + 45 = 6 (0110)
+57 + 46 = 7 (0111)
+57 + 47 = 8 (1000)
+57 + 48 = 9 (1001)
+57 + 49 = 10 (1010)
+57 + 50 = 11 (1011)
+57 + 51 = 12 (1100)
+57 + 52 = 13 (1101)
+57 + 53 = 14 (1110)
+57 + 54 = 15 (1111)
+57 + 55 = 0 (0000)
+57 + 56 = 1 (0001)
+57 + 57 = 2 (0010)
+57 + 58 = 3 (0011)
+57 + 59 = 4 (0100)
+57 + 60 = 5 (0101)
+57 + 61 = 6 (0110)
+57 + 62 = 7 (0111)
+57 + 63 = 8 (1000)
+58 + 0 = 10 (1010)
+58 + 1 = 11 (1011)
+58 + 2 = 12 (1100)
+58 + 3 = 13 (1101)
+58 + 4 = 14 (1110)
+58 + 5 = 15 (1111)
+58 + 6 = 0 (0000)
+58 + 7 = 1 (0001)
+58 + 8 = 2 (0010)
+58 + 9 = 3 (0011)
+58 + 10 = 4 (0100)
+58 + 11 = 5 (0101)
+58 + 12 = 6 (0110)
+58 + 13 = 7 (0111)
+58 + 14 = 8 (1000)
+58 + 15 = 9 (1001)
+58 + 16 = 10 (1010)
+58 + 17 = 11 (1011)
+58 + 18 = 12 (1100)
+58 + 19 = 13 (1101)
+58 + 20 = 14 (1110)
+58 + 21 = 15 (1111)
+58 + 22 = 0 (0000)
+58 + 23 = 1 (0001)
+58 + 24 = 2 (0010)
+58 + 25 = 3 (0011)
+58 + 26 = 4 (0100)
+58 + 27 = 5 (0101)
+58 + 28 = 6 (0110)
+58 + 29 = 7 (0111)
+58 + 30 = 8 (1000)
+58 + 31 = 9 (1001)
+58 + 32 = 10 (1010)
+58 + 33 = 11 (1011)
+58 + 34 = 12 (1100)
+58 + 35 = 13 (1101)
+58 + 36 = 14 (1110)
+58 + 37 = 15 (1111)
+58 + 38 = 0 (0000)
+58 + 39 = 1 (0001)
+58 + 40 = 2 (0010)
+58 + 41 = 3 (0011)
+58 + 42 = 4 (0100)
+58 + 43 = 5 (0101)
+58 + 44 = 6 (0110)
+58 + 45 = 7 (0111)
+58 + 46 = 8 (1000)
+58 + 47 = 9 (1001)
+58 + 48 = 10 (1010)
+58 + 49 = 11 (1011)
+58 + 50 = 12 (1100)
+58 + 51 = 13 (1101)
+58 + 52 = 14 (1110)
+58 + 53 = 15 (1111)
+58 + 54 = 0 (0000)
+58 + 55 = 1 (0001)
+58 + 56 = 2 (0010)
+58 + 57 = 3 (0011)
+58 + 58 = 4 (0100)
+58 + 59 = 5 (0101)
+58 + 60 = 6 (0110)
+58 + 61 = 7 (0111)
+58 + 62 = 8 (1000)
+58 + 63 = 9 (1001)
+59 + 0 = 11 (1011)
+59 + 1 = 12 (1100)
+59 + 2 = 13 (1101)
+59 + 3 = 14 (1110)
+59 + 4 = 15 (1111)
+59 + 5 = 0 (0000)
+59 + 6 = 1 (0001)
+59 + 7 = 2 (0010)
+59 + 8 = 3 (0011)
+59 + 9 = 4 (0100)
+59 + 10 = 5 (0101)
+59 + 11 = 6 (0110)
+59 + 12 = 7 (0111)
+59 + 13 = 8 (1000)
+59 + 14 = 9 (1001)
+59 + 15 = 10 (1010)
+59 + 16 = 11 (1011)
+59 + 17 = 12 (1100)
+59 + 18 = 13 (1101)
+59 + 19 = 14 (1110)
+59 + 20 = 15 (1111)
+59 + 21 = 0 (0000)
+59 + 22 = 1 (0001)
+59 + 23 = 2 (0010)
+59 + 24 = 3 (0011)
+59 + 25 = 4 (0100)
+59 + 26 = 5 (0101)
+59 + 27 = 6 (0110)
+59 + 28 = 7 (0111)
+59 + 29 = 8 (1000)
+59 + 30 = 9 (1001)
+59 + 31 = 10 (1010)
+59 + 32 = 11 (1011)
+59 + 33 = 12 (1100)
+59 + 34 = 13 (1101)
+59 + 35 = 14 (1110)
+59 + 36 = 15 (1111)
+59 + 37 = 0 (0000)
+59 + 38 = 1 (0001)
+59 + 39 = 2 (0010)
+59 + 40 = 3 (0011)
+59 + 41 = 4 (0100)
+59 + 42 = 5 (0101)
+59 + 43 = 6 (0110)
+59 + 44 = 7 (0111)
+59 + 45 = 8 (1000)
+59 + 46 = 9 (1001)
+59 + 47 = 10 (1010)
+59 + 48 = 11 (1011)
+59 + 49 = 12 (1100)
+59 + 50 = 13 (1101)
+59 + 51 = 14 (1110)
+59 + 52 = 15 (1111)
+59 + 53 = 0 (0000)
+59 + 54 = 1 (0001)
+59 + 55 = 2 (0010)
+59 + 56 = 3 (0011)
+59 + 57 = 4 (0100)
+59 + 58 = 5 (0101)
+59 + 59 = 6 (0110)
+59 + 60 = 7 (0111)
+59 + 61 = 8 (1000)
+59 + 62 = 9 (1001)
+59 + 63 = 10 (1010)
+60 + 0 = 12 (1100)
+60 + 1 = 13 (1101)
+60 + 2 = 14 (1110)
+60 + 3 = 15 (1111)
+60 + 4 = 0 (0000)
+60 + 5 = 1 (0001)
+60 + 6 = 2 (0010)
+60 + 7 = 3 (0011)
+60 + 8 = 4 (0100)
+60 + 9 = 5 (0101)
+60 + 10 = 6 (0110)
+60 + 11 = 7 (0111)
+60 + 12 = 8 (1000)
+60 + 13 = 9 (1001)
+60 + 14 = 10 (1010)
+60 + 15 = 11 (1011)
+60 + 16 = 12 (1100)
+60 + 17 = 13 (1101)
+60 + 18 = 14 (1110)
+60 + 19 = 15 (1111)
+60 + 20 = 0 (0000)
+60 + 21 = 1 (0001)
+60 + 22 = 2 (0010)
+60 + 23 = 3 (0011)
+60 + 24 = 4 (0100)
+60 + 25 = 5 (0101)
+60 + 26 = 6 (0110)
+60 + 27 = 7 (0111)
+60 + 28 = 8 (1000)
+60 + 29 = 9 (1001)
+60 + 30 = 10 (1010)
+60 + 31 = 11 (1011)
+60 + 32 = 12 (1100)
+60 + 33 = 13 (1101)
+60 + 34 = 14 (1110)
+60 + 35 = 15 (1111)
+60 + 36 = 0 (0000)
+60 + 37 = 1 (0001)
+60 + 38 = 2 (0010)
+60 + 39 = 3 (0011)
+60 + 40 = 4 (0100)
+60 + 41 = 5 (0101)
+60 + 42 = 6 (0110)
+60 + 43 = 7 (0111)
+60 + 44 = 8 (1000)
+60 + 45 = 9 (1001)
+60 + 46 = 10 (1010)
+60 + 47 = 11 (1011)
+60 + 48 = 12 (1100)
+60 + 49 = 13 (1101)
+60 + 50 = 14 (1110)
+60 + 51 = 15 (1111)
+60 + 52 = 0 (0000)
+60 + 53 = 1 (0001)
+60 + 54 = 2 (0010)
+60 + 55 = 3 (0011)
+60 + 56 = 4 (0100)
+60 + 57 = 5 (0101)
+60 + 58 = 6 (0110)
+60 + 59 = 7 (0111)
+60 + 60 = 8 (1000)
+60 + 61 = 9 (1001)
+60 + 62 = 10 (1010)
+60 + 63 = 11 (1011)
+61 + 0 = 13 (1101)
+61 + 1 = 14 (1110)
+61 + 2 = 15 (1111)
+61 + 3 = 0 (0000)
+61 + 4 = 1 (0001)
+61 + 5 = 2 (0010)
+61 + 6 = 3 (0011)
+61 + 7 = 4 (0100)
+61 + 8 = 5 (0101)
+61 + 9 = 6 (0110)
+61 + 10 = 7 (0111)
+61 + 11 = 8 (1000)
+61 + 12 = 9 (1001)
+61 + 13 = 10 (1010)
+61 + 14 = 11 (1011)
+61 + 15 = 12 (1100)
+61 + 16 = 13 (1101)
+61 + 17 = 14 (1110)
+61 + 18 = 15 (1111)
+61 + 19 = 0 (0000)
+61 + 20 = 1 (0001)
+61 + 21 = 2 (0010)
+61 + 22 = 3 (0011)
+61 + 23 = 4 (0100)
+61 + 24 = 5 (0101)
+61 + 25 = 6 (0110)
+61 + 26 = 7 (0111)
+61 + 27 = 8 (1000)
+61 + 28 = 9 (1001)
+61 + 29 = 10 (1010)
+61 + 30 = 11 (1011)
+61 + 31 = 12 (1100)
+61 + 32 = 13 (1101)
+61 + 33 = 14 (1110)
+61 + 34 = 15 (1111)
+61 + 35 = 0 (0000)
+61 + 36 = 1 (0001)
+61 + 37 = 2 (0010)
+61 + 38 = 3 (0011)
+61 + 39 = 4 (0100)
+61 + 40 = 5 (0101)
+61 + 41 = 6 (0110)
+61 + 42 = 7 (0111)
+61 + 43 = 8 (1000)
+61 + 44 = 9 (1001)
+61 + 45 = 10 (1010)
+61 + 46 = 11 (1011)
+61 + 47 = 12 (1100)
+61 + 48 = 13 (1101)
+61 + 49 = 14 (1110)
+61 + 50 = 15 (1111)
+61 + 51 = 0 (0000)
+61 + 52 = 1 (0001)
+61 + 53 = 2 (0010)
+61 + 54 = 3 (0011)
+61 + 55 = 4 (0100)
+61 + 56 = 5 (0101)
+61 + 57 = 6 (0110)
+61 + 58 = 7 (0111)
+61 + 59 = 8 (1000)
+61 + 60 = 9 (1001)
+61 + 61 = 10 (1010)
+61 + 62 = 11 (1011)
+61 + 63 = 12 (1100)
+62 + 0 = 14 (1110)
+62 + 1 = 15 (1111)
+62 + 2 = 0 (0000)
+62 + 3 = 1 (0001)
+62 + 4 = 2 (0010)
+62 + 5 = 3 (0011)
+62 + 6 = 4 (0100)
+62 + 7 = 5 (0101)
+62 + 8 = 6 (0110)
+62 + 9 = 7 (0111)
+62 + 10 = 8 (1000)
+62 + 11 = 9 (1001)
+62 + 12 = 10 (1010)
+62 + 13 = 11 (1011)
+62 + 14 = 12 (1100)
+62 + 15 = 13 (1101)
+62 + 16 = 14 (1110)
+62 + 17 = 15 (1111)
+62 + 18 = 0 (0000)
+62 + 19 = 1 (0001)
+62 + 20 = 2 (0010)
+62 + 21 = 3 (0011)
+62 + 22 = 4 (0100)
+62 + 23 = 5 (0101)
+62 + 24 = 6 (0110)
+62 + 25 = 7 (0111)
+62 + 26 = 8 (1000)
+62 + 27 = 9 (1001)
+62 + 28 = 10 (1010)
+62 + 29 = 11 (1011)
+62 + 30 = 12 (1100)
+62 + 31 = 13 (1101)
+62 + 32 = 14 (1110)
+62 + 33 = 15 (1111)
+62 + 34 = 0 (0000)
+62 + 35 = 1 (0001)
+62 + 36 = 2 (0010)
+62 + 37 = 3 (0011)
+62 + 38 = 4 (0100)
+62 + 39 = 5 (0101)
+62 + 40 = 6 (0110)
+62 + 41 = 7 (0111)
+62 + 42 = 8 (1000)
+62 + 43 = 9 (1001)
+62 + 44 = 10 (1010)
+62 + 45 = 11 (1011)
+62 + 46 = 12 (1100)
+62 + 47 = 13 (1101)
+62 + 48 = 14 (1110)
+62 + 49 = 15 (1111)
+62 + 50 = 0 (0000)
+62 + 51 = 1 (0001)
+62 + 52 = 2 (0010)
+62 + 53 = 3 (0011)
+62 + 54 = 4 (0100)
+62 + 55 = 5 (0101)
+62 + 56 = 6 (0110)
+62 + 57 = 7 (0111)
+62 + 58 = 8 (1000)
+62 + 59 = 9 (1001)
+62 + 60 = 10 (1010)
+62 + 61 = 11 (1011)
+62 + 62 = 12 (1100)
+62 + 63 = 13 (1101)
+63 + 0 = 15 (1111)
+63 + 1 = 0 (0000)
+63 + 2 = 1 (0001)
+63 + 3 = 2 (0010)
+63 + 4 = 3 (0011)
+63 + 5 = 4 (0100)
+63 + 6 = 5 (0101)
+63 + 7 = 6 (0110)
+63 + 8 = 7 (0111)
+63 + 9 = 8 (1000)
+63 + 10 = 9 (1001)
+63 + 11 = 10 (1010)
+63 + 12 = 11 (1011)
+63 + 13 = 12 (1100)
+63 + 14 = 13 (1101)
+63 + 15 = 14 (1110)
+63 + 16 = 15 (1111)
+63 + 17 = 0 (0000)
+63 + 18 = 1 (0001)
+63 + 19 = 2 (0010)
+63 + 20 = 3 (0011)
+63 + 21 = 4 (0100)
+63 + 22 = 5 (0101)
+63 + 23 = 6 (0110)
+63 + 24 = 7 (0111)
+63 + 25 = 8 (1000)
+63 + 26 = 9 (1001)
+63 + 27 = 10 (1010)
+63 + 28 = 11 (1011)
+63 + 29 = 12 (1100)
+63 + 30 = 13 (1101)
+63 + 31 = 14 (1110)
+63 + 32 = 15 (1111)
+63 + 33 = 0 (0000)
+63 + 34 = 1 (0001)
+63 + 35 = 2 (0010)
+63 + 36 = 3 (0011)
+63 + 37 = 4 (0100)
+63 + 38 = 5 (0101)
+63 + 39 = 6 (0110)
+63 + 40 = 7 (0111)
+63 + 41 = 8 (1000)
+63 + 42 = 9 (1001)
+63 + 43 = 10 (1010)
+63 + 44 = 11 (1011)
+63 + 45 = 12 (1100)
+63 + 46 = 13 (1101)
+63 + 47 = 14 (1110)
+63 + 48 = 15 (1111)
+63 + 49 = 0 (0000)
+63 + 50 = 1 (0001)
+63 + 51 = 2 (0010)
+63 + 52 = 3 (0011)
+63 + 53 = 4 (0100)
+63 + 54 = 5 (0101)
+63 + 55 = 6 (0110)
+63 + 56 = 7 (0111)
+63 + 57 = 8 (1000)
+63 + 58 = 9 (1001)
+63 + 59 = 10 (1010)
+63 + 60 = 11 (1011)
+63 + 61 = 12 (1100)
+63 + 62 = 13 (1101)
+63 + 63 = 14 (1110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/main.cpp
new file mode 100644
index 000000000..be64495c4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 4-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 4;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector4 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/stimgen.h
new file mode 100644
index 000000000..5a95ce7a8
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/truncation.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/truncation.f
new file mode 100644
index 000000000..d35040a90
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_bool_to_unsigned/truncation/truncation.f
@@ -0,0 +1,3 @@
+truncation/datawidth.cpp
+truncation/stimgen.cpp
+truncation/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/README b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/README
new file mode 100644
index 000000000..6d77c7cbb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/README
@@ -0,0 +1,9 @@
+bits_to_bits 7-bit = 6-bit + 6-bit
+lost_carry 6-bit = 6-bit + 6-bit
+extension 9-bit = 6-bit + 6-bit
+truncation 4-bit = 6-bit + 6-bit
+
+promote 7-bit = 4-bit + 6-bit
+promote_lost_carry 6-bit = 4-bit + 6-bit
+promote_extension 9-bit = 4-bit + 6-bit
+promote_truncation 4-bit = 4-bit + 6-bit
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/bits_to_bits.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/bits_to_bits.f
new file mode 100644
index 000000000..9fcbb2977
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/bits_to_bits.f
@@ -0,0 +1,3 @@
+bits_to_bits/datawidth.cpp
+bits_to_bits/stimgen.cpp
+bits_to_bits/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/common.h
new file mode 100644
index 000000000..d0b50248c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+typedef sc_signal<sc_bv<7> > signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/datawidth.cpp
new file mode 100644
index 000000000..25913d4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_signed tmp_a (in1_width);
+ sc_signed tmp_b (in2_width);
+ sc_signed tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/datawidth.h
new file mode 100644
index 000000000..df7ca5b2e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector7& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector7& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/golden/bits_to_bits.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/golden/bits_to_bits.log
new file mode 100644
index 000000000..4bf4390b9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/golden/bits_to_bits.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + -32 = -24 (1101000)
+8 + -31 = -23 (1101001)
+8 + -30 = -22 (1101010)
+8 + -29 = -21 (1101011)
+8 + -28 = -20 (1101100)
+8 + -27 = -19 (1101101)
+8 + -26 = -18 (1101110)
+8 + -25 = -17 (1101111)
+8 + -24 = -16 (1110000)
+8 + -23 = -15 (1110001)
+8 + -22 = -14 (1110010)
+8 + -21 = -13 (1110011)
+8 + -20 = -12 (1110100)
+8 + -19 = -11 (1110101)
+8 + -18 = -10 (1110110)
+8 + -17 = -9 (1110111)
+8 + -16 = -8 (1111000)
+8 + -15 = -7 (1111001)
+8 + -14 = -6 (1111010)
+8 + -13 = -5 (1111011)
+8 + -12 = -4 (1111100)
+8 + -11 = -3 (1111101)
+8 + -10 = -2 (1111110)
+8 + -9 = -1 (1111111)
+8 + -8 = 0 (0000000)
+8 + -7 = 1 (0000001)
+8 + -6 = 2 (0000010)
+8 + -5 = 3 (0000011)
+8 + -4 = 4 (0000100)
+8 + -3 = 5 (0000101)
+8 + -2 = 6 (0000110)
+8 + -1 = 7 (0000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + -32 = -23 (1101001)
+9 + -31 = -22 (1101010)
+9 + -30 = -21 (1101011)
+9 + -29 = -20 (1101100)
+9 + -28 = -19 (1101101)
+9 + -27 = -18 (1101110)
+9 + -26 = -17 (1101111)
+9 + -25 = -16 (1110000)
+9 + -24 = -15 (1110001)
+9 + -23 = -14 (1110010)
+9 + -22 = -13 (1110011)
+9 + -21 = -12 (1110100)
+9 + -20 = -11 (1110101)
+9 + -19 = -10 (1110110)
+9 + -18 = -9 (1110111)
+9 + -17 = -8 (1111000)
+9 + -16 = -7 (1111001)
+9 + -15 = -6 (1111010)
+9 + -14 = -5 (1111011)
+9 + -13 = -4 (1111100)
+9 + -12 = -3 (1111101)
+9 + -11 = -2 (1111110)
+9 + -10 = -1 (1111111)
+9 + -9 = 0 (0000000)
+9 + -8 = 1 (0000001)
+9 + -7 = 2 (0000010)
+9 + -6 = 3 (0000011)
+9 + -5 = 4 (0000100)
+9 + -4 = 5 (0000101)
+9 + -3 = 6 (0000110)
+9 + -2 = 7 (0000111)
+9 + -1 = 8 (0001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + -32 = -22 (1101010)
+10 + -31 = -21 (1101011)
+10 + -30 = -20 (1101100)
+10 + -29 = -19 (1101101)
+10 + -28 = -18 (1101110)
+10 + -27 = -17 (1101111)
+10 + -26 = -16 (1110000)
+10 + -25 = -15 (1110001)
+10 + -24 = -14 (1110010)
+10 + -23 = -13 (1110011)
+10 + -22 = -12 (1110100)
+10 + -21 = -11 (1110101)
+10 + -20 = -10 (1110110)
+10 + -19 = -9 (1110111)
+10 + -18 = -8 (1111000)
+10 + -17 = -7 (1111001)
+10 + -16 = -6 (1111010)
+10 + -15 = -5 (1111011)
+10 + -14 = -4 (1111100)
+10 + -13 = -3 (1111101)
+10 + -12 = -2 (1111110)
+10 + -11 = -1 (1111111)
+10 + -10 = 0 (0000000)
+10 + -9 = 1 (0000001)
+10 + -8 = 2 (0000010)
+10 + -7 = 3 (0000011)
+10 + -6 = 4 (0000100)
+10 + -5 = 5 (0000101)
+10 + -4 = 6 (0000110)
+10 + -3 = 7 (0000111)
+10 + -2 = 8 (0001000)
+10 + -1 = 9 (0001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + -32 = -21 (1101011)
+11 + -31 = -20 (1101100)
+11 + -30 = -19 (1101101)
+11 + -29 = -18 (1101110)
+11 + -28 = -17 (1101111)
+11 + -27 = -16 (1110000)
+11 + -26 = -15 (1110001)
+11 + -25 = -14 (1110010)
+11 + -24 = -13 (1110011)
+11 + -23 = -12 (1110100)
+11 + -22 = -11 (1110101)
+11 + -21 = -10 (1110110)
+11 + -20 = -9 (1110111)
+11 + -19 = -8 (1111000)
+11 + -18 = -7 (1111001)
+11 + -17 = -6 (1111010)
+11 + -16 = -5 (1111011)
+11 + -15 = -4 (1111100)
+11 + -14 = -3 (1111101)
+11 + -13 = -2 (1111110)
+11 + -12 = -1 (1111111)
+11 + -11 = 0 (0000000)
+11 + -10 = 1 (0000001)
+11 + -9 = 2 (0000010)
+11 + -8 = 3 (0000011)
+11 + -7 = 4 (0000100)
+11 + -6 = 5 (0000101)
+11 + -5 = 6 (0000110)
+11 + -4 = 7 (0000111)
+11 + -3 = 8 (0001000)
+11 + -2 = 9 (0001001)
+11 + -1 = 10 (0001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + -32 = -20 (1101100)
+12 + -31 = -19 (1101101)
+12 + -30 = -18 (1101110)
+12 + -29 = -17 (1101111)
+12 + -28 = -16 (1110000)
+12 + -27 = -15 (1110001)
+12 + -26 = -14 (1110010)
+12 + -25 = -13 (1110011)
+12 + -24 = -12 (1110100)
+12 + -23 = -11 (1110101)
+12 + -22 = -10 (1110110)
+12 + -21 = -9 (1110111)
+12 + -20 = -8 (1111000)
+12 + -19 = -7 (1111001)
+12 + -18 = -6 (1111010)
+12 + -17 = -5 (1111011)
+12 + -16 = -4 (1111100)
+12 + -15 = -3 (1111101)
+12 + -14 = -2 (1111110)
+12 + -13 = -1 (1111111)
+12 + -12 = 0 (0000000)
+12 + -11 = 1 (0000001)
+12 + -10 = 2 (0000010)
+12 + -9 = 3 (0000011)
+12 + -8 = 4 (0000100)
+12 + -7 = 5 (0000101)
+12 + -6 = 6 (0000110)
+12 + -5 = 7 (0000111)
+12 + -4 = 8 (0001000)
+12 + -3 = 9 (0001001)
+12 + -2 = 10 (0001010)
+12 + -1 = 11 (0001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + -32 = -19 (1101101)
+13 + -31 = -18 (1101110)
+13 + -30 = -17 (1101111)
+13 + -29 = -16 (1110000)
+13 + -28 = -15 (1110001)
+13 + -27 = -14 (1110010)
+13 + -26 = -13 (1110011)
+13 + -25 = -12 (1110100)
+13 + -24 = -11 (1110101)
+13 + -23 = -10 (1110110)
+13 + -22 = -9 (1110111)
+13 + -21 = -8 (1111000)
+13 + -20 = -7 (1111001)
+13 + -19 = -6 (1111010)
+13 + -18 = -5 (1111011)
+13 + -17 = -4 (1111100)
+13 + -16 = -3 (1111101)
+13 + -15 = -2 (1111110)
+13 + -14 = -1 (1111111)
+13 + -13 = 0 (0000000)
+13 + -12 = 1 (0000001)
+13 + -11 = 2 (0000010)
+13 + -10 = 3 (0000011)
+13 + -9 = 4 (0000100)
+13 + -8 = 5 (0000101)
+13 + -7 = 6 (0000110)
+13 + -6 = 7 (0000111)
+13 + -5 = 8 (0001000)
+13 + -4 = 9 (0001001)
+13 + -3 = 10 (0001010)
+13 + -2 = 11 (0001011)
+13 + -1 = 12 (0001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + -32 = -18 (1101110)
+14 + -31 = -17 (1101111)
+14 + -30 = -16 (1110000)
+14 + -29 = -15 (1110001)
+14 + -28 = -14 (1110010)
+14 + -27 = -13 (1110011)
+14 + -26 = -12 (1110100)
+14 + -25 = -11 (1110101)
+14 + -24 = -10 (1110110)
+14 + -23 = -9 (1110111)
+14 + -22 = -8 (1111000)
+14 + -21 = -7 (1111001)
+14 + -20 = -6 (1111010)
+14 + -19 = -5 (1111011)
+14 + -18 = -4 (1111100)
+14 + -17 = -3 (1111101)
+14 + -16 = -2 (1111110)
+14 + -15 = -1 (1111111)
+14 + -14 = 0 (0000000)
+14 + -13 = 1 (0000001)
+14 + -12 = 2 (0000010)
+14 + -11 = 3 (0000011)
+14 + -10 = 4 (0000100)
+14 + -9 = 5 (0000101)
+14 + -8 = 6 (0000110)
+14 + -7 = 7 (0000111)
+14 + -6 = 8 (0001000)
+14 + -5 = 9 (0001001)
+14 + -4 = 10 (0001010)
+14 + -3 = 11 (0001011)
+14 + -2 = 12 (0001100)
+14 + -1 = 13 (0001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + -32 = -17 (1101111)
+15 + -31 = -16 (1110000)
+15 + -30 = -15 (1110001)
+15 + -29 = -14 (1110010)
+15 + -28 = -13 (1110011)
+15 + -27 = -12 (1110100)
+15 + -26 = -11 (1110101)
+15 + -25 = -10 (1110110)
+15 + -24 = -9 (1110111)
+15 + -23 = -8 (1111000)
+15 + -22 = -7 (1111001)
+15 + -21 = -6 (1111010)
+15 + -20 = -5 (1111011)
+15 + -19 = -4 (1111100)
+15 + -18 = -3 (1111101)
+15 + -17 = -2 (1111110)
+15 + -16 = -1 (1111111)
+15 + -15 = 0 (0000000)
+15 + -14 = 1 (0000001)
+15 + -13 = 2 (0000010)
+15 + -12 = 3 (0000011)
+15 + -11 = 4 (0000100)
+15 + -10 = 5 (0000101)
+15 + -9 = 6 (0000110)
+15 + -8 = 7 (0000111)
+15 + -7 = 8 (0001000)
+15 + -6 = 9 (0001001)
+15 + -5 = 10 (0001010)
+15 + -4 = 11 (0001011)
+15 + -3 = 12 (0001100)
+15 + -2 = 13 (0001101)
+15 + -1 = 14 (0001110)
+16 + 0 = 16 (0010000)
+16 + 1 = 17 (0010001)
+16 + 2 = 18 (0010010)
+16 + 3 = 19 (0010011)
+16 + 4 = 20 (0010100)
+16 + 5 = 21 (0010101)
+16 + 6 = 22 (0010110)
+16 + 7 = 23 (0010111)
+16 + 8 = 24 (0011000)
+16 + 9 = 25 (0011001)
+16 + 10 = 26 (0011010)
+16 + 11 = 27 (0011011)
+16 + 12 = 28 (0011100)
+16 + 13 = 29 (0011101)
+16 + 14 = 30 (0011110)
+16 + 15 = 31 (0011111)
+16 + 16 = 32 (0100000)
+16 + 17 = 33 (0100001)
+16 + 18 = 34 (0100010)
+16 + 19 = 35 (0100011)
+16 + 20 = 36 (0100100)
+16 + 21 = 37 (0100101)
+16 + 22 = 38 (0100110)
+16 + 23 = 39 (0100111)
+16 + 24 = 40 (0101000)
+16 + 25 = 41 (0101001)
+16 + 26 = 42 (0101010)
+16 + 27 = 43 (0101011)
+16 + 28 = 44 (0101100)
+16 + 29 = 45 (0101101)
+16 + 30 = 46 (0101110)
+16 + 31 = 47 (0101111)
+16 + -32 = -16 (1110000)
+16 + -31 = -15 (1110001)
+16 + -30 = -14 (1110010)
+16 + -29 = -13 (1110011)
+16 + -28 = -12 (1110100)
+16 + -27 = -11 (1110101)
+16 + -26 = -10 (1110110)
+16 + -25 = -9 (1110111)
+16 + -24 = -8 (1111000)
+16 + -23 = -7 (1111001)
+16 + -22 = -6 (1111010)
+16 + -21 = -5 (1111011)
+16 + -20 = -4 (1111100)
+16 + -19 = -3 (1111101)
+16 + -18 = -2 (1111110)
+16 + -17 = -1 (1111111)
+16 + -16 = 0 (0000000)
+16 + -15 = 1 (0000001)
+16 + -14 = 2 (0000010)
+16 + -13 = 3 (0000011)
+16 + -12 = 4 (0000100)
+16 + -11 = 5 (0000101)
+16 + -10 = 6 (0000110)
+16 + -9 = 7 (0000111)
+16 + -8 = 8 (0001000)
+16 + -7 = 9 (0001001)
+16 + -6 = 10 (0001010)
+16 + -5 = 11 (0001011)
+16 + -4 = 12 (0001100)
+16 + -3 = 13 (0001101)
+16 + -2 = 14 (0001110)
+16 + -1 = 15 (0001111)
+17 + 0 = 17 (0010001)
+17 + 1 = 18 (0010010)
+17 + 2 = 19 (0010011)
+17 + 3 = 20 (0010100)
+17 + 4 = 21 (0010101)
+17 + 5 = 22 (0010110)
+17 + 6 = 23 (0010111)
+17 + 7 = 24 (0011000)
+17 + 8 = 25 (0011001)
+17 + 9 = 26 (0011010)
+17 + 10 = 27 (0011011)
+17 + 11 = 28 (0011100)
+17 + 12 = 29 (0011101)
+17 + 13 = 30 (0011110)
+17 + 14 = 31 (0011111)
+17 + 15 = 32 (0100000)
+17 + 16 = 33 (0100001)
+17 + 17 = 34 (0100010)
+17 + 18 = 35 (0100011)
+17 + 19 = 36 (0100100)
+17 + 20 = 37 (0100101)
+17 + 21 = 38 (0100110)
+17 + 22 = 39 (0100111)
+17 + 23 = 40 (0101000)
+17 + 24 = 41 (0101001)
+17 + 25 = 42 (0101010)
+17 + 26 = 43 (0101011)
+17 + 27 = 44 (0101100)
+17 + 28 = 45 (0101101)
+17 + 29 = 46 (0101110)
+17 + 30 = 47 (0101111)
+17 + 31 = 48 (0110000)
+17 + -32 = -15 (1110001)
+17 + -31 = -14 (1110010)
+17 + -30 = -13 (1110011)
+17 + -29 = -12 (1110100)
+17 + -28 = -11 (1110101)
+17 + -27 = -10 (1110110)
+17 + -26 = -9 (1110111)
+17 + -25 = -8 (1111000)
+17 + -24 = -7 (1111001)
+17 + -23 = -6 (1111010)
+17 + -22 = -5 (1111011)
+17 + -21 = -4 (1111100)
+17 + -20 = -3 (1111101)
+17 + -19 = -2 (1111110)
+17 + -18 = -1 (1111111)
+17 + -17 = 0 (0000000)
+17 + -16 = 1 (0000001)
+17 + -15 = 2 (0000010)
+17 + -14 = 3 (0000011)
+17 + -13 = 4 (0000100)
+17 + -12 = 5 (0000101)
+17 + -11 = 6 (0000110)
+17 + -10 = 7 (0000111)
+17 + -9 = 8 (0001000)
+17 + -8 = 9 (0001001)
+17 + -7 = 10 (0001010)
+17 + -6 = 11 (0001011)
+17 + -5 = 12 (0001100)
+17 + -4 = 13 (0001101)
+17 + -3 = 14 (0001110)
+17 + -2 = 15 (0001111)
+17 + -1 = 16 (0010000)
+18 + 0 = 18 (0010010)
+18 + 1 = 19 (0010011)
+18 + 2 = 20 (0010100)
+18 + 3 = 21 (0010101)
+18 + 4 = 22 (0010110)
+18 + 5 = 23 (0010111)
+18 + 6 = 24 (0011000)
+18 + 7 = 25 (0011001)
+18 + 8 = 26 (0011010)
+18 + 9 = 27 (0011011)
+18 + 10 = 28 (0011100)
+18 + 11 = 29 (0011101)
+18 + 12 = 30 (0011110)
+18 + 13 = 31 (0011111)
+18 + 14 = 32 (0100000)
+18 + 15 = 33 (0100001)
+18 + 16 = 34 (0100010)
+18 + 17 = 35 (0100011)
+18 + 18 = 36 (0100100)
+18 + 19 = 37 (0100101)
+18 + 20 = 38 (0100110)
+18 + 21 = 39 (0100111)
+18 + 22 = 40 (0101000)
+18 + 23 = 41 (0101001)
+18 + 24 = 42 (0101010)
+18 + 25 = 43 (0101011)
+18 + 26 = 44 (0101100)
+18 + 27 = 45 (0101101)
+18 + 28 = 46 (0101110)
+18 + 29 = 47 (0101111)
+18 + 30 = 48 (0110000)
+18 + 31 = 49 (0110001)
+18 + -32 = -14 (1110010)
+18 + -31 = -13 (1110011)
+18 + -30 = -12 (1110100)
+18 + -29 = -11 (1110101)
+18 + -28 = -10 (1110110)
+18 + -27 = -9 (1110111)
+18 + -26 = -8 (1111000)
+18 + -25 = -7 (1111001)
+18 + -24 = -6 (1111010)
+18 + -23 = -5 (1111011)
+18 + -22 = -4 (1111100)
+18 + -21 = -3 (1111101)
+18 + -20 = -2 (1111110)
+18 + -19 = -1 (1111111)
+18 + -18 = 0 (0000000)
+18 + -17 = 1 (0000001)
+18 + -16 = 2 (0000010)
+18 + -15 = 3 (0000011)
+18 + -14 = 4 (0000100)
+18 + -13 = 5 (0000101)
+18 + -12 = 6 (0000110)
+18 + -11 = 7 (0000111)
+18 + -10 = 8 (0001000)
+18 + -9 = 9 (0001001)
+18 + -8 = 10 (0001010)
+18 + -7 = 11 (0001011)
+18 + -6 = 12 (0001100)
+18 + -5 = 13 (0001101)
+18 + -4 = 14 (0001110)
+18 + -3 = 15 (0001111)
+18 + -2 = 16 (0010000)
+18 + -1 = 17 (0010001)
+19 + 0 = 19 (0010011)
+19 + 1 = 20 (0010100)
+19 + 2 = 21 (0010101)
+19 + 3 = 22 (0010110)
+19 + 4 = 23 (0010111)
+19 + 5 = 24 (0011000)
+19 + 6 = 25 (0011001)
+19 + 7 = 26 (0011010)
+19 + 8 = 27 (0011011)
+19 + 9 = 28 (0011100)
+19 + 10 = 29 (0011101)
+19 + 11 = 30 (0011110)
+19 + 12 = 31 (0011111)
+19 + 13 = 32 (0100000)
+19 + 14 = 33 (0100001)
+19 + 15 = 34 (0100010)
+19 + 16 = 35 (0100011)
+19 + 17 = 36 (0100100)
+19 + 18 = 37 (0100101)
+19 + 19 = 38 (0100110)
+19 + 20 = 39 (0100111)
+19 + 21 = 40 (0101000)
+19 + 22 = 41 (0101001)
+19 + 23 = 42 (0101010)
+19 + 24 = 43 (0101011)
+19 + 25 = 44 (0101100)
+19 + 26 = 45 (0101101)
+19 + 27 = 46 (0101110)
+19 + 28 = 47 (0101111)
+19 + 29 = 48 (0110000)
+19 + 30 = 49 (0110001)
+19 + 31 = 50 (0110010)
+19 + -32 = -13 (1110011)
+19 + -31 = -12 (1110100)
+19 + -30 = -11 (1110101)
+19 + -29 = -10 (1110110)
+19 + -28 = -9 (1110111)
+19 + -27 = -8 (1111000)
+19 + -26 = -7 (1111001)
+19 + -25 = -6 (1111010)
+19 + -24 = -5 (1111011)
+19 + -23 = -4 (1111100)
+19 + -22 = -3 (1111101)
+19 + -21 = -2 (1111110)
+19 + -20 = -1 (1111111)
+19 + -19 = 0 (0000000)
+19 + -18 = 1 (0000001)
+19 + -17 = 2 (0000010)
+19 + -16 = 3 (0000011)
+19 + -15 = 4 (0000100)
+19 + -14 = 5 (0000101)
+19 + -13 = 6 (0000110)
+19 + -12 = 7 (0000111)
+19 + -11 = 8 (0001000)
+19 + -10 = 9 (0001001)
+19 + -9 = 10 (0001010)
+19 + -8 = 11 (0001011)
+19 + -7 = 12 (0001100)
+19 + -6 = 13 (0001101)
+19 + -5 = 14 (0001110)
+19 + -4 = 15 (0001111)
+19 + -3 = 16 (0010000)
+19 + -2 = 17 (0010001)
+19 + -1 = 18 (0010010)
+20 + 0 = 20 (0010100)
+20 + 1 = 21 (0010101)
+20 + 2 = 22 (0010110)
+20 + 3 = 23 (0010111)
+20 + 4 = 24 (0011000)
+20 + 5 = 25 (0011001)
+20 + 6 = 26 (0011010)
+20 + 7 = 27 (0011011)
+20 + 8 = 28 (0011100)
+20 + 9 = 29 (0011101)
+20 + 10 = 30 (0011110)
+20 + 11 = 31 (0011111)
+20 + 12 = 32 (0100000)
+20 + 13 = 33 (0100001)
+20 + 14 = 34 (0100010)
+20 + 15 = 35 (0100011)
+20 + 16 = 36 (0100100)
+20 + 17 = 37 (0100101)
+20 + 18 = 38 (0100110)
+20 + 19 = 39 (0100111)
+20 + 20 = 40 (0101000)
+20 + 21 = 41 (0101001)
+20 + 22 = 42 (0101010)
+20 + 23 = 43 (0101011)
+20 + 24 = 44 (0101100)
+20 + 25 = 45 (0101101)
+20 + 26 = 46 (0101110)
+20 + 27 = 47 (0101111)
+20 + 28 = 48 (0110000)
+20 + 29 = 49 (0110001)
+20 + 30 = 50 (0110010)
+20 + 31 = 51 (0110011)
+20 + -32 = -12 (1110100)
+20 + -31 = -11 (1110101)
+20 + -30 = -10 (1110110)
+20 + -29 = -9 (1110111)
+20 + -28 = -8 (1111000)
+20 + -27 = -7 (1111001)
+20 + -26 = -6 (1111010)
+20 + -25 = -5 (1111011)
+20 + -24 = -4 (1111100)
+20 + -23 = -3 (1111101)
+20 + -22 = -2 (1111110)
+20 + -21 = -1 (1111111)
+20 + -20 = 0 (0000000)
+20 + -19 = 1 (0000001)
+20 + -18 = 2 (0000010)
+20 + -17 = 3 (0000011)
+20 + -16 = 4 (0000100)
+20 + -15 = 5 (0000101)
+20 + -14 = 6 (0000110)
+20 + -13 = 7 (0000111)
+20 + -12 = 8 (0001000)
+20 + -11 = 9 (0001001)
+20 + -10 = 10 (0001010)
+20 + -9 = 11 (0001011)
+20 + -8 = 12 (0001100)
+20 + -7 = 13 (0001101)
+20 + -6 = 14 (0001110)
+20 + -5 = 15 (0001111)
+20 + -4 = 16 (0010000)
+20 + -3 = 17 (0010001)
+20 + -2 = 18 (0010010)
+20 + -1 = 19 (0010011)
+21 + 0 = 21 (0010101)
+21 + 1 = 22 (0010110)
+21 + 2 = 23 (0010111)
+21 + 3 = 24 (0011000)
+21 + 4 = 25 (0011001)
+21 + 5 = 26 (0011010)
+21 + 6 = 27 (0011011)
+21 + 7 = 28 (0011100)
+21 + 8 = 29 (0011101)
+21 + 9 = 30 (0011110)
+21 + 10 = 31 (0011111)
+21 + 11 = 32 (0100000)
+21 + 12 = 33 (0100001)
+21 + 13 = 34 (0100010)
+21 + 14 = 35 (0100011)
+21 + 15 = 36 (0100100)
+21 + 16 = 37 (0100101)
+21 + 17 = 38 (0100110)
+21 + 18 = 39 (0100111)
+21 + 19 = 40 (0101000)
+21 + 20 = 41 (0101001)
+21 + 21 = 42 (0101010)
+21 + 22 = 43 (0101011)
+21 + 23 = 44 (0101100)
+21 + 24 = 45 (0101101)
+21 + 25 = 46 (0101110)
+21 + 26 = 47 (0101111)
+21 + 27 = 48 (0110000)
+21 + 28 = 49 (0110001)
+21 + 29 = 50 (0110010)
+21 + 30 = 51 (0110011)
+21 + 31 = 52 (0110100)
+21 + -32 = -11 (1110101)
+21 + -31 = -10 (1110110)
+21 + -30 = -9 (1110111)
+21 + -29 = -8 (1111000)
+21 + -28 = -7 (1111001)
+21 + -27 = -6 (1111010)
+21 + -26 = -5 (1111011)
+21 + -25 = -4 (1111100)
+21 + -24 = -3 (1111101)
+21 + -23 = -2 (1111110)
+21 + -22 = -1 (1111111)
+21 + -21 = 0 (0000000)
+21 + -20 = 1 (0000001)
+21 + -19 = 2 (0000010)
+21 + -18 = 3 (0000011)
+21 + -17 = 4 (0000100)
+21 + -16 = 5 (0000101)
+21 + -15 = 6 (0000110)
+21 + -14 = 7 (0000111)
+21 + -13 = 8 (0001000)
+21 + -12 = 9 (0001001)
+21 + -11 = 10 (0001010)
+21 + -10 = 11 (0001011)
+21 + -9 = 12 (0001100)
+21 + -8 = 13 (0001101)
+21 + -7 = 14 (0001110)
+21 + -6 = 15 (0001111)
+21 + -5 = 16 (0010000)
+21 + -4 = 17 (0010001)
+21 + -3 = 18 (0010010)
+21 + -2 = 19 (0010011)
+21 + -1 = 20 (0010100)
+22 + 0 = 22 (0010110)
+22 + 1 = 23 (0010111)
+22 + 2 = 24 (0011000)
+22 + 3 = 25 (0011001)
+22 + 4 = 26 (0011010)
+22 + 5 = 27 (0011011)
+22 + 6 = 28 (0011100)
+22 + 7 = 29 (0011101)
+22 + 8 = 30 (0011110)
+22 + 9 = 31 (0011111)
+22 + 10 = 32 (0100000)
+22 + 11 = 33 (0100001)
+22 + 12 = 34 (0100010)
+22 + 13 = 35 (0100011)
+22 + 14 = 36 (0100100)
+22 + 15 = 37 (0100101)
+22 + 16 = 38 (0100110)
+22 + 17 = 39 (0100111)
+22 + 18 = 40 (0101000)
+22 + 19 = 41 (0101001)
+22 + 20 = 42 (0101010)
+22 + 21 = 43 (0101011)
+22 + 22 = 44 (0101100)
+22 + 23 = 45 (0101101)
+22 + 24 = 46 (0101110)
+22 + 25 = 47 (0101111)
+22 + 26 = 48 (0110000)
+22 + 27 = 49 (0110001)
+22 + 28 = 50 (0110010)
+22 + 29 = 51 (0110011)
+22 + 30 = 52 (0110100)
+22 + 31 = 53 (0110101)
+22 + -32 = -10 (1110110)
+22 + -31 = -9 (1110111)
+22 + -30 = -8 (1111000)
+22 + -29 = -7 (1111001)
+22 + -28 = -6 (1111010)
+22 + -27 = -5 (1111011)
+22 + -26 = -4 (1111100)
+22 + -25 = -3 (1111101)
+22 + -24 = -2 (1111110)
+22 + -23 = -1 (1111111)
+22 + -22 = 0 (0000000)
+22 + -21 = 1 (0000001)
+22 + -20 = 2 (0000010)
+22 + -19 = 3 (0000011)
+22 + -18 = 4 (0000100)
+22 + -17 = 5 (0000101)
+22 + -16 = 6 (0000110)
+22 + -15 = 7 (0000111)
+22 + -14 = 8 (0001000)
+22 + -13 = 9 (0001001)
+22 + -12 = 10 (0001010)
+22 + -11 = 11 (0001011)
+22 + -10 = 12 (0001100)
+22 + -9 = 13 (0001101)
+22 + -8 = 14 (0001110)
+22 + -7 = 15 (0001111)
+22 + -6 = 16 (0010000)
+22 + -5 = 17 (0010001)
+22 + -4 = 18 (0010010)
+22 + -3 = 19 (0010011)
+22 + -2 = 20 (0010100)
+22 + -1 = 21 (0010101)
+23 + 0 = 23 (0010111)
+23 + 1 = 24 (0011000)
+23 + 2 = 25 (0011001)
+23 + 3 = 26 (0011010)
+23 + 4 = 27 (0011011)
+23 + 5 = 28 (0011100)
+23 + 6 = 29 (0011101)
+23 + 7 = 30 (0011110)
+23 + 8 = 31 (0011111)
+23 + 9 = 32 (0100000)
+23 + 10 = 33 (0100001)
+23 + 11 = 34 (0100010)
+23 + 12 = 35 (0100011)
+23 + 13 = 36 (0100100)
+23 + 14 = 37 (0100101)
+23 + 15 = 38 (0100110)
+23 + 16 = 39 (0100111)
+23 + 17 = 40 (0101000)
+23 + 18 = 41 (0101001)
+23 + 19 = 42 (0101010)
+23 + 20 = 43 (0101011)
+23 + 21 = 44 (0101100)
+23 + 22 = 45 (0101101)
+23 + 23 = 46 (0101110)
+23 + 24 = 47 (0101111)
+23 + 25 = 48 (0110000)
+23 + 26 = 49 (0110001)
+23 + 27 = 50 (0110010)
+23 + 28 = 51 (0110011)
+23 + 29 = 52 (0110100)
+23 + 30 = 53 (0110101)
+23 + 31 = 54 (0110110)
+23 + -32 = -9 (1110111)
+23 + -31 = -8 (1111000)
+23 + -30 = -7 (1111001)
+23 + -29 = -6 (1111010)
+23 + -28 = -5 (1111011)
+23 + -27 = -4 (1111100)
+23 + -26 = -3 (1111101)
+23 + -25 = -2 (1111110)
+23 + -24 = -1 (1111111)
+23 + -23 = 0 (0000000)
+23 + -22 = 1 (0000001)
+23 + -21 = 2 (0000010)
+23 + -20 = 3 (0000011)
+23 + -19 = 4 (0000100)
+23 + -18 = 5 (0000101)
+23 + -17 = 6 (0000110)
+23 + -16 = 7 (0000111)
+23 + -15 = 8 (0001000)
+23 + -14 = 9 (0001001)
+23 + -13 = 10 (0001010)
+23 + -12 = 11 (0001011)
+23 + -11 = 12 (0001100)
+23 + -10 = 13 (0001101)
+23 + -9 = 14 (0001110)
+23 + -8 = 15 (0001111)
+23 + -7 = 16 (0010000)
+23 + -6 = 17 (0010001)
+23 + -5 = 18 (0010010)
+23 + -4 = 19 (0010011)
+23 + -3 = 20 (0010100)
+23 + -2 = 21 (0010101)
+23 + -1 = 22 (0010110)
+24 + 0 = 24 (0011000)
+24 + 1 = 25 (0011001)
+24 + 2 = 26 (0011010)
+24 + 3 = 27 (0011011)
+24 + 4 = 28 (0011100)
+24 + 5 = 29 (0011101)
+24 + 6 = 30 (0011110)
+24 + 7 = 31 (0011111)
+24 + 8 = 32 (0100000)
+24 + 9 = 33 (0100001)
+24 + 10 = 34 (0100010)
+24 + 11 = 35 (0100011)
+24 + 12 = 36 (0100100)
+24 + 13 = 37 (0100101)
+24 + 14 = 38 (0100110)
+24 + 15 = 39 (0100111)
+24 + 16 = 40 (0101000)
+24 + 17 = 41 (0101001)
+24 + 18 = 42 (0101010)
+24 + 19 = 43 (0101011)
+24 + 20 = 44 (0101100)
+24 + 21 = 45 (0101101)
+24 + 22 = 46 (0101110)
+24 + 23 = 47 (0101111)
+24 + 24 = 48 (0110000)
+24 + 25 = 49 (0110001)
+24 + 26 = 50 (0110010)
+24 + 27 = 51 (0110011)
+24 + 28 = 52 (0110100)
+24 + 29 = 53 (0110101)
+24 + 30 = 54 (0110110)
+24 + 31 = 55 (0110111)
+24 + -32 = -8 (1111000)
+24 + -31 = -7 (1111001)
+24 + -30 = -6 (1111010)
+24 + -29 = -5 (1111011)
+24 + -28 = -4 (1111100)
+24 + -27 = -3 (1111101)
+24 + -26 = -2 (1111110)
+24 + -25 = -1 (1111111)
+24 + -24 = 0 (0000000)
+24 + -23 = 1 (0000001)
+24 + -22 = 2 (0000010)
+24 + -21 = 3 (0000011)
+24 + -20 = 4 (0000100)
+24 + -19 = 5 (0000101)
+24 + -18 = 6 (0000110)
+24 + -17 = 7 (0000111)
+24 + -16 = 8 (0001000)
+24 + -15 = 9 (0001001)
+24 + -14 = 10 (0001010)
+24 + -13 = 11 (0001011)
+24 + -12 = 12 (0001100)
+24 + -11 = 13 (0001101)
+24 + -10 = 14 (0001110)
+24 + -9 = 15 (0001111)
+24 + -8 = 16 (0010000)
+24 + -7 = 17 (0010001)
+24 + -6 = 18 (0010010)
+24 + -5 = 19 (0010011)
+24 + -4 = 20 (0010100)
+24 + -3 = 21 (0010101)
+24 + -2 = 22 (0010110)
+24 + -1 = 23 (0010111)
+25 + 0 = 25 (0011001)
+25 + 1 = 26 (0011010)
+25 + 2 = 27 (0011011)
+25 + 3 = 28 (0011100)
+25 + 4 = 29 (0011101)
+25 + 5 = 30 (0011110)
+25 + 6 = 31 (0011111)
+25 + 7 = 32 (0100000)
+25 + 8 = 33 (0100001)
+25 + 9 = 34 (0100010)
+25 + 10 = 35 (0100011)
+25 + 11 = 36 (0100100)
+25 + 12 = 37 (0100101)
+25 + 13 = 38 (0100110)
+25 + 14 = 39 (0100111)
+25 + 15 = 40 (0101000)
+25 + 16 = 41 (0101001)
+25 + 17 = 42 (0101010)
+25 + 18 = 43 (0101011)
+25 + 19 = 44 (0101100)
+25 + 20 = 45 (0101101)
+25 + 21 = 46 (0101110)
+25 + 22 = 47 (0101111)
+25 + 23 = 48 (0110000)
+25 + 24 = 49 (0110001)
+25 + 25 = 50 (0110010)
+25 + 26 = 51 (0110011)
+25 + 27 = 52 (0110100)
+25 + 28 = 53 (0110101)
+25 + 29 = 54 (0110110)
+25 + 30 = 55 (0110111)
+25 + 31 = 56 (0111000)
+25 + -32 = -7 (1111001)
+25 + -31 = -6 (1111010)
+25 + -30 = -5 (1111011)
+25 + -29 = -4 (1111100)
+25 + -28 = -3 (1111101)
+25 + -27 = -2 (1111110)
+25 + -26 = -1 (1111111)
+25 + -25 = 0 (0000000)
+25 + -24 = 1 (0000001)
+25 + -23 = 2 (0000010)
+25 + -22 = 3 (0000011)
+25 + -21 = 4 (0000100)
+25 + -20 = 5 (0000101)
+25 + -19 = 6 (0000110)
+25 + -18 = 7 (0000111)
+25 + -17 = 8 (0001000)
+25 + -16 = 9 (0001001)
+25 + -15 = 10 (0001010)
+25 + -14 = 11 (0001011)
+25 + -13 = 12 (0001100)
+25 + -12 = 13 (0001101)
+25 + -11 = 14 (0001110)
+25 + -10 = 15 (0001111)
+25 + -9 = 16 (0010000)
+25 + -8 = 17 (0010001)
+25 + -7 = 18 (0010010)
+25 + -6 = 19 (0010011)
+25 + -5 = 20 (0010100)
+25 + -4 = 21 (0010101)
+25 + -3 = 22 (0010110)
+25 + -2 = 23 (0010111)
+25 + -1 = 24 (0011000)
+26 + 0 = 26 (0011010)
+26 + 1 = 27 (0011011)
+26 + 2 = 28 (0011100)
+26 + 3 = 29 (0011101)
+26 + 4 = 30 (0011110)
+26 + 5 = 31 (0011111)
+26 + 6 = 32 (0100000)
+26 + 7 = 33 (0100001)
+26 + 8 = 34 (0100010)
+26 + 9 = 35 (0100011)
+26 + 10 = 36 (0100100)
+26 + 11 = 37 (0100101)
+26 + 12 = 38 (0100110)
+26 + 13 = 39 (0100111)
+26 + 14 = 40 (0101000)
+26 + 15 = 41 (0101001)
+26 + 16 = 42 (0101010)
+26 + 17 = 43 (0101011)
+26 + 18 = 44 (0101100)
+26 + 19 = 45 (0101101)
+26 + 20 = 46 (0101110)
+26 + 21 = 47 (0101111)
+26 + 22 = 48 (0110000)
+26 + 23 = 49 (0110001)
+26 + 24 = 50 (0110010)
+26 + 25 = 51 (0110011)
+26 + 26 = 52 (0110100)
+26 + 27 = 53 (0110101)
+26 + 28 = 54 (0110110)
+26 + 29 = 55 (0110111)
+26 + 30 = 56 (0111000)
+26 + 31 = 57 (0111001)
+26 + -32 = -6 (1111010)
+26 + -31 = -5 (1111011)
+26 + -30 = -4 (1111100)
+26 + -29 = -3 (1111101)
+26 + -28 = -2 (1111110)
+26 + -27 = -1 (1111111)
+26 + -26 = 0 (0000000)
+26 + -25 = 1 (0000001)
+26 + -24 = 2 (0000010)
+26 + -23 = 3 (0000011)
+26 + -22 = 4 (0000100)
+26 + -21 = 5 (0000101)
+26 + -20 = 6 (0000110)
+26 + -19 = 7 (0000111)
+26 + -18 = 8 (0001000)
+26 + -17 = 9 (0001001)
+26 + -16 = 10 (0001010)
+26 + -15 = 11 (0001011)
+26 + -14 = 12 (0001100)
+26 + -13 = 13 (0001101)
+26 + -12 = 14 (0001110)
+26 + -11 = 15 (0001111)
+26 + -10 = 16 (0010000)
+26 + -9 = 17 (0010001)
+26 + -8 = 18 (0010010)
+26 + -7 = 19 (0010011)
+26 + -6 = 20 (0010100)
+26 + -5 = 21 (0010101)
+26 + -4 = 22 (0010110)
+26 + -3 = 23 (0010111)
+26 + -2 = 24 (0011000)
+26 + -1 = 25 (0011001)
+27 + 0 = 27 (0011011)
+27 + 1 = 28 (0011100)
+27 + 2 = 29 (0011101)
+27 + 3 = 30 (0011110)
+27 + 4 = 31 (0011111)
+27 + 5 = 32 (0100000)
+27 + 6 = 33 (0100001)
+27 + 7 = 34 (0100010)
+27 + 8 = 35 (0100011)
+27 + 9 = 36 (0100100)
+27 + 10 = 37 (0100101)
+27 + 11 = 38 (0100110)
+27 + 12 = 39 (0100111)
+27 + 13 = 40 (0101000)
+27 + 14 = 41 (0101001)
+27 + 15 = 42 (0101010)
+27 + 16 = 43 (0101011)
+27 + 17 = 44 (0101100)
+27 + 18 = 45 (0101101)
+27 + 19 = 46 (0101110)
+27 + 20 = 47 (0101111)
+27 + 21 = 48 (0110000)
+27 + 22 = 49 (0110001)
+27 + 23 = 50 (0110010)
+27 + 24 = 51 (0110011)
+27 + 25 = 52 (0110100)
+27 + 26 = 53 (0110101)
+27 + 27 = 54 (0110110)
+27 + 28 = 55 (0110111)
+27 + 29 = 56 (0111000)
+27 + 30 = 57 (0111001)
+27 + 31 = 58 (0111010)
+27 + -32 = -5 (1111011)
+27 + -31 = -4 (1111100)
+27 + -30 = -3 (1111101)
+27 + -29 = -2 (1111110)
+27 + -28 = -1 (1111111)
+27 + -27 = 0 (0000000)
+27 + -26 = 1 (0000001)
+27 + -25 = 2 (0000010)
+27 + -24 = 3 (0000011)
+27 + -23 = 4 (0000100)
+27 + -22 = 5 (0000101)
+27 + -21 = 6 (0000110)
+27 + -20 = 7 (0000111)
+27 + -19 = 8 (0001000)
+27 + -18 = 9 (0001001)
+27 + -17 = 10 (0001010)
+27 + -16 = 11 (0001011)
+27 + -15 = 12 (0001100)
+27 + -14 = 13 (0001101)
+27 + -13 = 14 (0001110)
+27 + -12 = 15 (0001111)
+27 + -11 = 16 (0010000)
+27 + -10 = 17 (0010001)
+27 + -9 = 18 (0010010)
+27 + -8 = 19 (0010011)
+27 + -7 = 20 (0010100)
+27 + -6 = 21 (0010101)
+27 + -5 = 22 (0010110)
+27 + -4 = 23 (0010111)
+27 + -3 = 24 (0011000)
+27 + -2 = 25 (0011001)
+27 + -1 = 26 (0011010)
+28 + 0 = 28 (0011100)
+28 + 1 = 29 (0011101)
+28 + 2 = 30 (0011110)
+28 + 3 = 31 (0011111)
+28 + 4 = 32 (0100000)
+28 + 5 = 33 (0100001)
+28 + 6 = 34 (0100010)
+28 + 7 = 35 (0100011)
+28 + 8 = 36 (0100100)
+28 + 9 = 37 (0100101)
+28 + 10 = 38 (0100110)
+28 + 11 = 39 (0100111)
+28 + 12 = 40 (0101000)
+28 + 13 = 41 (0101001)
+28 + 14 = 42 (0101010)
+28 + 15 = 43 (0101011)
+28 + 16 = 44 (0101100)
+28 + 17 = 45 (0101101)
+28 + 18 = 46 (0101110)
+28 + 19 = 47 (0101111)
+28 + 20 = 48 (0110000)
+28 + 21 = 49 (0110001)
+28 + 22 = 50 (0110010)
+28 + 23 = 51 (0110011)
+28 + 24 = 52 (0110100)
+28 + 25 = 53 (0110101)
+28 + 26 = 54 (0110110)
+28 + 27 = 55 (0110111)
+28 + 28 = 56 (0111000)
+28 + 29 = 57 (0111001)
+28 + 30 = 58 (0111010)
+28 + 31 = 59 (0111011)
+28 + -32 = -4 (1111100)
+28 + -31 = -3 (1111101)
+28 + -30 = -2 (1111110)
+28 + -29 = -1 (1111111)
+28 + -28 = 0 (0000000)
+28 + -27 = 1 (0000001)
+28 + -26 = 2 (0000010)
+28 + -25 = 3 (0000011)
+28 + -24 = 4 (0000100)
+28 + -23 = 5 (0000101)
+28 + -22 = 6 (0000110)
+28 + -21 = 7 (0000111)
+28 + -20 = 8 (0001000)
+28 + -19 = 9 (0001001)
+28 + -18 = 10 (0001010)
+28 + -17 = 11 (0001011)
+28 + -16 = 12 (0001100)
+28 + -15 = 13 (0001101)
+28 + -14 = 14 (0001110)
+28 + -13 = 15 (0001111)
+28 + -12 = 16 (0010000)
+28 + -11 = 17 (0010001)
+28 + -10 = 18 (0010010)
+28 + -9 = 19 (0010011)
+28 + -8 = 20 (0010100)
+28 + -7 = 21 (0010101)
+28 + -6 = 22 (0010110)
+28 + -5 = 23 (0010111)
+28 + -4 = 24 (0011000)
+28 + -3 = 25 (0011001)
+28 + -2 = 26 (0011010)
+28 + -1 = 27 (0011011)
+29 + 0 = 29 (0011101)
+29 + 1 = 30 (0011110)
+29 + 2 = 31 (0011111)
+29 + 3 = 32 (0100000)
+29 + 4 = 33 (0100001)
+29 + 5 = 34 (0100010)
+29 + 6 = 35 (0100011)
+29 + 7 = 36 (0100100)
+29 + 8 = 37 (0100101)
+29 + 9 = 38 (0100110)
+29 + 10 = 39 (0100111)
+29 + 11 = 40 (0101000)
+29 + 12 = 41 (0101001)
+29 + 13 = 42 (0101010)
+29 + 14 = 43 (0101011)
+29 + 15 = 44 (0101100)
+29 + 16 = 45 (0101101)
+29 + 17 = 46 (0101110)
+29 + 18 = 47 (0101111)
+29 + 19 = 48 (0110000)
+29 + 20 = 49 (0110001)
+29 + 21 = 50 (0110010)
+29 + 22 = 51 (0110011)
+29 + 23 = 52 (0110100)
+29 + 24 = 53 (0110101)
+29 + 25 = 54 (0110110)
+29 + 26 = 55 (0110111)
+29 + 27 = 56 (0111000)
+29 + 28 = 57 (0111001)
+29 + 29 = 58 (0111010)
+29 + 30 = 59 (0111011)
+29 + 31 = 60 (0111100)
+29 + -32 = -3 (1111101)
+29 + -31 = -2 (1111110)
+29 + -30 = -1 (1111111)
+29 + -29 = 0 (0000000)
+29 + -28 = 1 (0000001)
+29 + -27 = 2 (0000010)
+29 + -26 = 3 (0000011)
+29 + -25 = 4 (0000100)
+29 + -24 = 5 (0000101)
+29 + -23 = 6 (0000110)
+29 + -22 = 7 (0000111)
+29 + -21 = 8 (0001000)
+29 + -20 = 9 (0001001)
+29 + -19 = 10 (0001010)
+29 + -18 = 11 (0001011)
+29 + -17 = 12 (0001100)
+29 + -16 = 13 (0001101)
+29 + -15 = 14 (0001110)
+29 + -14 = 15 (0001111)
+29 + -13 = 16 (0010000)
+29 + -12 = 17 (0010001)
+29 + -11 = 18 (0010010)
+29 + -10 = 19 (0010011)
+29 + -9 = 20 (0010100)
+29 + -8 = 21 (0010101)
+29 + -7 = 22 (0010110)
+29 + -6 = 23 (0010111)
+29 + -5 = 24 (0011000)
+29 + -4 = 25 (0011001)
+29 + -3 = 26 (0011010)
+29 + -2 = 27 (0011011)
+29 + -1 = 28 (0011100)
+30 + 0 = 30 (0011110)
+30 + 1 = 31 (0011111)
+30 + 2 = 32 (0100000)
+30 + 3 = 33 (0100001)
+30 + 4 = 34 (0100010)
+30 + 5 = 35 (0100011)
+30 + 6 = 36 (0100100)
+30 + 7 = 37 (0100101)
+30 + 8 = 38 (0100110)
+30 + 9 = 39 (0100111)
+30 + 10 = 40 (0101000)
+30 + 11 = 41 (0101001)
+30 + 12 = 42 (0101010)
+30 + 13 = 43 (0101011)
+30 + 14 = 44 (0101100)
+30 + 15 = 45 (0101101)
+30 + 16 = 46 (0101110)
+30 + 17 = 47 (0101111)
+30 + 18 = 48 (0110000)
+30 + 19 = 49 (0110001)
+30 + 20 = 50 (0110010)
+30 + 21 = 51 (0110011)
+30 + 22 = 52 (0110100)
+30 + 23 = 53 (0110101)
+30 + 24 = 54 (0110110)
+30 + 25 = 55 (0110111)
+30 + 26 = 56 (0111000)
+30 + 27 = 57 (0111001)
+30 + 28 = 58 (0111010)
+30 + 29 = 59 (0111011)
+30 + 30 = 60 (0111100)
+30 + 31 = 61 (0111101)
+30 + -32 = -2 (1111110)
+30 + -31 = -1 (1111111)
+30 + -30 = 0 (0000000)
+30 + -29 = 1 (0000001)
+30 + -28 = 2 (0000010)
+30 + -27 = 3 (0000011)
+30 + -26 = 4 (0000100)
+30 + -25 = 5 (0000101)
+30 + -24 = 6 (0000110)
+30 + -23 = 7 (0000111)
+30 + -22 = 8 (0001000)
+30 + -21 = 9 (0001001)
+30 + -20 = 10 (0001010)
+30 + -19 = 11 (0001011)
+30 + -18 = 12 (0001100)
+30 + -17 = 13 (0001101)
+30 + -16 = 14 (0001110)
+30 + -15 = 15 (0001111)
+30 + -14 = 16 (0010000)
+30 + -13 = 17 (0010001)
+30 + -12 = 18 (0010010)
+30 + -11 = 19 (0010011)
+30 + -10 = 20 (0010100)
+30 + -9 = 21 (0010101)
+30 + -8 = 22 (0010110)
+30 + -7 = 23 (0010111)
+30 + -6 = 24 (0011000)
+30 + -5 = 25 (0011001)
+30 + -4 = 26 (0011010)
+30 + -3 = 27 (0011011)
+30 + -2 = 28 (0011100)
+30 + -1 = 29 (0011101)
+31 + 0 = 31 (0011111)
+31 + 1 = 32 (0100000)
+31 + 2 = 33 (0100001)
+31 + 3 = 34 (0100010)
+31 + 4 = 35 (0100011)
+31 + 5 = 36 (0100100)
+31 + 6 = 37 (0100101)
+31 + 7 = 38 (0100110)
+31 + 8 = 39 (0100111)
+31 + 9 = 40 (0101000)
+31 + 10 = 41 (0101001)
+31 + 11 = 42 (0101010)
+31 + 12 = 43 (0101011)
+31 + 13 = 44 (0101100)
+31 + 14 = 45 (0101101)
+31 + 15 = 46 (0101110)
+31 + 16 = 47 (0101111)
+31 + 17 = 48 (0110000)
+31 + 18 = 49 (0110001)
+31 + 19 = 50 (0110010)
+31 + 20 = 51 (0110011)
+31 + 21 = 52 (0110100)
+31 + 22 = 53 (0110101)
+31 + 23 = 54 (0110110)
+31 + 24 = 55 (0110111)
+31 + 25 = 56 (0111000)
+31 + 26 = 57 (0111001)
+31 + 27 = 58 (0111010)
+31 + 28 = 59 (0111011)
+31 + 29 = 60 (0111100)
+31 + 30 = 61 (0111101)
+31 + 31 = 62 (0111110)
+31 + -32 = -1 (1111111)
+31 + -31 = 0 (0000000)
+31 + -30 = 1 (0000001)
+31 + -29 = 2 (0000010)
+31 + -28 = 3 (0000011)
+31 + -27 = 4 (0000100)
+31 + -26 = 5 (0000101)
+31 + -25 = 6 (0000110)
+31 + -24 = 7 (0000111)
+31 + -23 = 8 (0001000)
+31 + -22 = 9 (0001001)
+31 + -21 = 10 (0001010)
+31 + -20 = 11 (0001011)
+31 + -19 = 12 (0001100)
+31 + -18 = 13 (0001101)
+31 + -17 = 14 (0001110)
+31 + -16 = 15 (0001111)
+31 + -15 = 16 (0010000)
+31 + -14 = 17 (0010001)
+31 + -13 = 18 (0010010)
+31 + -12 = 19 (0010011)
+31 + -11 = 20 (0010100)
+31 + -10 = 21 (0010101)
+31 + -9 = 22 (0010110)
+31 + -8 = 23 (0010111)
+31 + -7 = 24 (0011000)
+31 + -6 = 25 (0011001)
+31 + -5 = 26 (0011010)
+31 + -4 = 27 (0011011)
+31 + -3 = 28 (0011100)
+31 + -2 = 29 (0011101)
+31 + -1 = 30 (0011110)
+-32 + 0 = -32 (1100000)
+-32 + 1 = -31 (1100001)
+-32 + 2 = -30 (1100010)
+-32 + 3 = -29 (1100011)
+-32 + 4 = -28 (1100100)
+-32 + 5 = -27 (1100101)
+-32 + 6 = -26 (1100110)
+-32 + 7 = -25 (1100111)
+-32 + 8 = -24 (1101000)
+-32 + 9 = -23 (1101001)
+-32 + 10 = -22 (1101010)
+-32 + 11 = -21 (1101011)
+-32 + 12 = -20 (1101100)
+-32 + 13 = -19 (1101101)
+-32 + 14 = -18 (1101110)
+-32 + 15 = -17 (1101111)
+-32 + 16 = -16 (1110000)
+-32 + 17 = -15 (1110001)
+-32 + 18 = -14 (1110010)
+-32 + 19 = -13 (1110011)
+-32 + 20 = -12 (1110100)
+-32 + 21 = -11 (1110101)
+-32 + 22 = -10 (1110110)
+-32 + 23 = -9 (1110111)
+-32 + 24 = -8 (1111000)
+-32 + 25 = -7 (1111001)
+-32 + 26 = -6 (1111010)
+-32 + 27 = -5 (1111011)
+-32 + 28 = -4 (1111100)
+-32 + 29 = -3 (1111101)
+-32 + 30 = -2 (1111110)
+-32 + 31 = -1 (1111111)
+-32 + -32 = -64 (1000000)
+-32 + -31 = -63 (1000001)
+-32 + -30 = -62 (1000010)
+-32 + -29 = -61 (1000011)
+-32 + -28 = -60 (1000100)
+-32 + -27 = -59 (1000101)
+-32 + -26 = -58 (1000110)
+-32 + -25 = -57 (1000111)
+-32 + -24 = -56 (1001000)
+-32 + -23 = -55 (1001001)
+-32 + -22 = -54 (1001010)
+-32 + -21 = -53 (1001011)
+-32 + -20 = -52 (1001100)
+-32 + -19 = -51 (1001101)
+-32 + -18 = -50 (1001110)
+-32 + -17 = -49 (1001111)
+-32 + -16 = -48 (1010000)
+-32 + -15 = -47 (1010001)
+-32 + -14 = -46 (1010010)
+-32 + -13 = -45 (1010011)
+-32 + -12 = -44 (1010100)
+-32 + -11 = -43 (1010101)
+-32 + -10 = -42 (1010110)
+-32 + -9 = -41 (1010111)
+-32 + -8 = -40 (1011000)
+-32 + -7 = -39 (1011001)
+-32 + -6 = -38 (1011010)
+-32 + -5 = -37 (1011011)
+-32 + -4 = -36 (1011100)
+-32 + -3 = -35 (1011101)
+-32 + -2 = -34 (1011110)
+-32 + -1 = -33 (1011111)
+-31 + 0 = -31 (1100001)
+-31 + 1 = -30 (1100010)
+-31 + 2 = -29 (1100011)
+-31 + 3 = -28 (1100100)
+-31 + 4 = -27 (1100101)
+-31 + 5 = -26 (1100110)
+-31 + 6 = -25 (1100111)
+-31 + 7 = -24 (1101000)
+-31 + 8 = -23 (1101001)
+-31 + 9 = -22 (1101010)
+-31 + 10 = -21 (1101011)
+-31 + 11 = -20 (1101100)
+-31 + 12 = -19 (1101101)
+-31 + 13 = -18 (1101110)
+-31 + 14 = -17 (1101111)
+-31 + 15 = -16 (1110000)
+-31 + 16 = -15 (1110001)
+-31 + 17 = -14 (1110010)
+-31 + 18 = -13 (1110011)
+-31 + 19 = -12 (1110100)
+-31 + 20 = -11 (1110101)
+-31 + 21 = -10 (1110110)
+-31 + 22 = -9 (1110111)
+-31 + 23 = -8 (1111000)
+-31 + 24 = -7 (1111001)
+-31 + 25 = -6 (1111010)
+-31 + 26 = -5 (1111011)
+-31 + 27 = -4 (1111100)
+-31 + 28 = -3 (1111101)
+-31 + 29 = -2 (1111110)
+-31 + 30 = -1 (1111111)
+-31 + 31 = 0 (0000000)
+-31 + -32 = -63 (1000001)
+-31 + -31 = -62 (1000010)
+-31 + -30 = -61 (1000011)
+-31 + -29 = -60 (1000100)
+-31 + -28 = -59 (1000101)
+-31 + -27 = -58 (1000110)
+-31 + -26 = -57 (1000111)
+-31 + -25 = -56 (1001000)
+-31 + -24 = -55 (1001001)
+-31 + -23 = -54 (1001010)
+-31 + -22 = -53 (1001011)
+-31 + -21 = -52 (1001100)
+-31 + -20 = -51 (1001101)
+-31 + -19 = -50 (1001110)
+-31 + -18 = -49 (1001111)
+-31 + -17 = -48 (1010000)
+-31 + -16 = -47 (1010001)
+-31 + -15 = -46 (1010010)
+-31 + -14 = -45 (1010011)
+-31 + -13 = -44 (1010100)
+-31 + -12 = -43 (1010101)
+-31 + -11 = -42 (1010110)
+-31 + -10 = -41 (1010111)
+-31 + -9 = -40 (1011000)
+-31 + -8 = -39 (1011001)
+-31 + -7 = -38 (1011010)
+-31 + -6 = -37 (1011011)
+-31 + -5 = -36 (1011100)
+-31 + -4 = -35 (1011101)
+-31 + -3 = -34 (1011110)
+-31 + -2 = -33 (1011111)
+-31 + -1 = -32 (1100000)
+-30 + 0 = -30 (1100010)
+-30 + 1 = -29 (1100011)
+-30 + 2 = -28 (1100100)
+-30 + 3 = -27 (1100101)
+-30 + 4 = -26 (1100110)
+-30 + 5 = -25 (1100111)
+-30 + 6 = -24 (1101000)
+-30 + 7 = -23 (1101001)
+-30 + 8 = -22 (1101010)
+-30 + 9 = -21 (1101011)
+-30 + 10 = -20 (1101100)
+-30 + 11 = -19 (1101101)
+-30 + 12 = -18 (1101110)
+-30 + 13 = -17 (1101111)
+-30 + 14 = -16 (1110000)
+-30 + 15 = -15 (1110001)
+-30 + 16 = -14 (1110010)
+-30 + 17 = -13 (1110011)
+-30 + 18 = -12 (1110100)
+-30 + 19 = -11 (1110101)
+-30 + 20 = -10 (1110110)
+-30 + 21 = -9 (1110111)
+-30 + 22 = -8 (1111000)
+-30 + 23 = -7 (1111001)
+-30 + 24 = -6 (1111010)
+-30 + 25 = -5 (1111011)
+-30 + 26 = -4 (1111100)
+-30 + 27 = -3 (1111101)
+-30 + 28 = -2 (1111110)
+-30 + 29 = -1 (1111111)
+-30 + 30 = 0 (0000000)
+-30 + 31 = 1 (0000001)
+-30 + -32 = -62 (1000010)
+-30 + -31 = -61 (1000011)
+-30 + -30 = -60 (1000100)
+-30 + -29 = -59 (1000101)
+-30 + -28 = -58 (1000110)
+-30 + -27 = -57 (1000111)
+-30 + -26 = -56 (1001000)
+-30 + -25 = -55 (1001001)
+-30 + -24 = -54 (1001010)
+-30 + -23 = -53 (1001011)
+-30 + -22 = -52 (1001100)
+-30 + -21 = -51 (1001101)
+-30 + -20 = -50 (1001110)
+-30 + -19 = -49 (1001111)
+-30 + -18 = -48 (1010000)
+-30 + -17 = -47 (1010001)
+-30 + -16 = -46 (1010010)
+-30 + -15 = -45 (1010011)
+-30 + -14 = -44 (1010100)
+-30 + -13 = -43 (1010101)
+-30 + -12 = -42 (1010110)
+-30 + -11 = -41 (1010111)
+-30 + -10 = -40 (1011000)
+-30 + -9 = -39 (1011001)
+-30 + -8 = -38 (1011010)
+-30 + -7 = -37 (1011011)
+-30 + -6 = -36 (1011100)
+-30 + -5 = -35 (1011101)
+-30 + -4 = -34 (1011110)
+-30 + -3 = -33 (1011111)
+-30 + -2 = -32 (1100000)
+-30 + -1 = -31 (1100001)
+-29 + 0 = -29 (1100011)
+-29 + 1 = -28 (1100100)
+-29 + 2 = -27 (1100101)
+-29 + 3 = -26 (1100110)
+-29 + 4 = -25 (1100111)
+-29 + 5 = -24 (1101000)
+-29 + 6 = -23 (1101001)
+-29 + 7 = -22 (1101010)
+-29 + 8 = -21 (1101011)
+-29 + 9 = -20 (1101100)
+-29 + 10 = -19 (1101101)
+-29 + 11 = -18 (1101110)
+-29 + 12 = -17 (1101111)
+-29 + 13 = -16 (1110000)
+-29 + 14 = -15 (1110001)
+-29 + 15 = -14 (1110010)
+-29 + 16 = -13 (1110011)
+-29 + 17 = -12 (1110100)
+-29 + 18 = -11 (1110101)
+-29 + 19 = -10 (1110110)
+-29 + 20 = -9 (1110111)
+-29 + 21 = -8 (1111000)
+-29 + 22 = -7 (1111001)
+-29 + 23 = -6 (1111010)
+-29 + 24 = -5 (1111011)
+-29 + 25 = -4 (1111100)
+-29 + 26 = -3 (1111101)
+-29 + 27 = -2 (1111110)
+-29 + 28 = -1 (1111111)
+-29 + 29 = 0 (0000000)
+-29 + 30 = 1 (0000001)
+-29 + 31 = 2 (0000010)
+-29 + -32 = -61 (1000011)
+-29 + -31 = -60 (1000100)
+-29 + -30 = -59 (1000101)
+-29 + -29 = -58 (1000110)
+-29 + -28 = -57 (1000111)
+-29 + -27 = -56 (1001000)
+-29 + -26 = -55 (1001001)
+-29 + -25 = -54 (1001010)
+-29 + -24 = -53 (1001011)
+-29 + -23 = -52 (1001100)
+-29 + -22 = -51 (1001101)
+-29 + -21 = -50 (1001110)
+-29 + -20 = -49 (1001111)
+-29 + -19 = -48 (1010000)
+-29 + -18 = -47 (1010001)
+-29 + -17 = -46 (1010010)
+-29 + -16 = -45 (1010011)
+-29 + -15 = -44 (1010100)
+-29 + -14 = -43 (1010101)
+-29 + -13 = -42 (1010110)
+-29 + -12 = -41 (1010111)
+-29 + -11 = -40 (1011000)
+-29 + -10 = -39 (1011001)
+-29 + -9 = -38 (1011010)
+-29 + -8 = -37 (1011011)
+-29 + -7 = -36 (1011100)
+-29 + -6 = -35 (1011101)
+-29 + -5 = -34 (1011110)
+-29 + -4 = -33 (1011111)
+-29 + -3 = -32 (1100000)
+-29 + -2 = -31 (1100001)
+-29 + -1 = -30 (1100010)
+-28 + 0 = -28 (1100100)
+-28 + 1 = -27 (1100101)
+-28 + 2 = -26 (1100110)
+-28 + 3 = -25 (1100111)
+-28 + 4 = -24 (1101000)
+-28 + 5 = -23 (1101001)
+-28 + 6 = -22 (1101010)
+-28 + 7 = -21 (1101011)
+-28 + 8 = -20 (1101100)
+-28 + 9 = -19 (1101101)
+-28 + 10 = -18 (1101110)
+-28 + 11 = -17 (1101111)
+-28 + 12 = -16 (1110000)
+-28 + 13 = -15 (1110001)
+-28 + 14 = -14 (1110010)
+-28 + 15 = -13 (1110011)
+-28 + 16 = -12 (1110100)
+-28 + 17 = -11 (1110101)
+-28 + 18 = -10 (1110110)
+-28 + 19 = -9 (1110111)
+-28 + 20 = -8 (1111000)
+-28 + 21 = -7 (1111001)
+-28 + 22 = -6 (1111010)
+-28 + 23 = -5 (1111011)
+-28 + 24 = -4 (1111100)
+-28 + 25 = -3 (1111101)
+-28 + 26 = -2 (1111110)
+-28 + 27 = -1 (1111111)
+-28 + 28 = 0 (0000000)
+-28 + 29 = 1 (0000001)
+-28 + 30 = 2 (0000010)
+-28 + 31 = 3 (0000011)
+-28 + -32 = -60 (1000100)
+-28 + -31 = -59 (1000101)
+-28 + -30 = -58 (1000110)
+-28 + -29 = -57 (1000111)
+-28 + -28 = -56 (1001000)
+-28 + -27 = -55 (1001001)
+-28 + -26 = -54 (1001010)
+-28 + -25 = -53 (1001011)
+-28 + -24 = -52 (1001100)
+-28 + -23 = -51 (1001101)
+-28 + -22 = -50 (1001110)
+-28 + -21 = -49 (1001111)
+-28 + -20 = -48 (1010000)
+-28 + -19 = -47 (1010001)
+-28 + -18 = -46 (1010010)
+-28 + -17 = -45 (1010011)
+-28 + -16 = -44 (1010100)
+-28 + -15 = -43 (1010101)
+-28 + -14 = -42 (1010110)
+-28 + -13 = -41 (1010111)
+-28 + -12 = -40 (1011000)
+-28 + -11 = -39 (1011001)
+-28 + -10 = -38 (1011010)
+-28 + -9 = -37 (1011011)
+-28 + -8 = -36 (1011100)
+-28 + -7 = -35 (1011101)
+-28 + -6 = -34 (1011110)
+-28 + -5 = -33 (1011111)
+-28 + -4 = -32 (1100000)
+-28 + -3 = -31 (1100001)
+-28 + -2 = -30 (1100010)
+-28 + -1 = -29 (1100011)
+-27 + 0 = -27 (1100101)
+-27 + 1 = -26 (1100110)
+-27 + 2 = -25 (1100111)
+-27 + 3 = -24 (1101000)
+-27 + 4 = -23 (1101001)
+-27 + 5 = -22 (1101010)
+-27 + 6 = -21 (1101011)
+-27 + 7 = -20 (1101100)
+-27 + 8 = -19 (1101101)
+-27 + 9 = -18 (1101110)
+-27 + 10 = -17 (1101111)
+-27 + 11 = -16 (1110000)
+-27 + 12 = -15 (1110001)
+-27 + 13 = -14 (1110010)
+-27 + 14 = -13 (1110011)
+-27 + 15 = -12 (1110100)
+-27 + 16 = -11 (1110101)
+-27 + 17 = -10 (1110110)
+-27 + 18 = -9 (1110111)
+-27 + 19 = -8 (1111000)
+-27 + 20 = -7 (1111001)
+-27 + 21 = -6 (1111010)
+-27 + 22 = -5 (1111011)
+-27 + 23 = -4 (1111100)
+-27 + 24 = -3 (1111101)
+-27 + 25 = -2 (1111110)
+-27 + 26 = -1 (1111111)
+-27 + 27 = 0 (0000000)
+-27 + 28 = 1 (0000001)
+-27 + 29 = 2 (0000010)
+-27 + 30 = 3 (0000011)
+-27 + 31 = 4 (0000100)
+-27 + -32 = -59 (1000101)
+-27 + -31 = -58 (1000110)
+-27 + -30 = -57 (1000111)
+-27 + -29 = -56 (1001000)
+-27 + -28 = -55 (1001001)
+-27 + -27 = -54 (1001010)
+-27 + -26 = -53 (1001011)
+-27 + -25 = -52 (1001100)
+-27 + -24 = -51 (1001101)
+-27 + -23 = -50 (1001110)
+-27 + -22 = -49 (1001111)
+-27 + -21 = -48 (1010000)
+-27 + -20 = -47 (1010001)
+-27 + -19 = -46 (1010010)
+-27 + -18 = -45 (1010011)
+-27 + -17 = -44 (1010100)
+-27 + -16 = -43 (1010101)
+-27 + -15 = -42 (1010110)
+-27 + -14 = -41 (1010111)
+-27 + -13 = -40 (1011000)
+-27 + -12 = -39 (1011001)
+-27 + -11 = -38 (1011010)
+-27 + -10 = -37 (1011011)
+-27 + -9 = -36 (1011100)
+-27 + -8 = -35 (1011101)
+-27 + -7 = -34 (1011110)
+-27 + -6 = -33 (1011111)
+-27 + -5 = -32 (1100000)
+-27 + -4 = -31 (1100001)
+-27 + -3 = -30 (1100010)
+-27 + -2 = -29 (1100011)
+-27 + -1 = -28 (1100100)
+-26 + 0 = -26 (1100110)
+-26 + 1 = -25 (1100111)
+-26 + 2 = -24 (1101000)
+-26 + 3 = -23 (1101001)
+-26 + 4 = -22 (1101010)
+-26 + 5 = -21 (1101011)
+-26 + 6 = -20 (1101100)
+-26 + 7 = -19 (1101101)
+-26 + 8 = -18 (1101110)
+-26 + 9 = -17 (1101111)
+-26 + 10 = -16 (1110000)
+-26 + 11 = -15 (1110001)
+-26 + 12 = -14 (1110010)
+-26 + 13 = -13 (1110011)
+-26 + 14 = -12 (1110100)
+-26 + 15 = -11 (1110101)
+-26 + 16 = -10 (1110110)
+-26 + 17 = -9 (1110111)
+-26 + 18 = -8 (1111000)
+-26 + 19 = -7 (1111001)
+-26 + 20 = -6 (1111010)
+-26 + 21 = -5 (1111011)
+-26 + 22 = -4 (1111100)
+-26 + 23 = -3 (1111101)
+-26 + 24 = -2 (1111110)
+-26 + 25 = -1 (1111111)
+-26 + 26 = 0 (0000000)
+-26 + 27 = 1 (0000001)
+-26 + 28 = 2 (0000010)
+-26 + 29 = 3 (0000011)
+-26 + 30 = 4 (0000100)
+-26 + 31 = 5 (0000101)
+-26 + -32 = -58 (1000110)
+-26 + -31 = -57 (1000111)
+-26 + -30 = -56 (1001000)
+-26 + -29 = -55 (1001001)
+-26 + -28 = -54 (1001010)
+-26 + -27 = -53 (1001011)
+-26 + -26 = -52 (1001100)
+-26 + -25 = -51 (1001101)
+-26 + -24 = -50 (1001110)
+-26 + -23 = -49 (1001111)
+-26 + -22 = -48 (1010000)
+-26 + -21 = -47 (1010001)
+-26 + -20 = -46 (1010010)
+-26 + -19 = -45 (1010011)
+-26 + -18 = -44 (1010100)
+-26 + -17 = -43 (1010101)
+-26 + -16 = -42 (1010110)
+-26 + -15 = -41 (1010111)
+-26 + -14 = -40 (1011000)
+-26 + -13 = -39 (1011001)
+-26 + -12 = -38 (1011010)
+-26 + -11 = -37 (1011011)
+-26 + -10 = -36 (1011100)
+-26 + -9 = -35 (1011101)
+-26 + -8 = -34 (1011110)
+-26 + -7 = -33 (1011111)
+-26 + -6 = -32 (1100000)
+-26 + -5 = -31 (1100001)
+-26 + -4 = -30 (1100010)
+-26 + -3 = -29 (1100011)
+-26 + -2 = -28 (1100100)
+-26 + -1 = -27 (1100101)
+-25 + 0 = -25 (1100111)
+-25 + 1 = -24 (1101000)
+-25 + 2 = -23 (1101001)
+-25 + 3 = -22 (1101010)
+-25 + 4 = -21 (1101011)
+-25 + 5 = -20 (1101100)
+-25 + 6 = -19 (1101101)
+-25 + 7 = -18 (1101110)
+-25 + 8 = -17 (1101111)
+-25 + 9 = -16 (1110000)
+-25 + 10 = -15 (1110001)
+-25 + 11 = -14 (1110010)
+-25 + 12 = -13 (1110011)
+-25 + 13 = -12 (1110100)
+-25 + 14 = -11 (1110101)
+-25 + 15 = -10 (1110110)
+-25 + 16 = -9 (1110111)
+-25 + 17 = -8 (1111000)
+-25 + 18 = -7 (1111001)
+-25 + 19 = -6 (1111010)
+-25 + 20 = -5 (1111011)
+-25 + 21 = -4 (1111100)
+-25 + 22 = -3 (1111101)
+-25 + 23 = -2 (1111110)
+-25 + 24 = -1 (1111111)
+-25 + 25 = 0 (0000000)
+-25 + 26 = 1 (0000001)
+-25 + 27 = 2 (0000010)
+-25 + 28 = 3 (0000011)
+-25 + 29 = 4 (0000100)
+-25 + 30 = 5 (0000101)
+-25 + 31 = 6 (0000110)
+-25 + -32 = -57 (1000111)
+-25 + -31 = -56 (1001000)
+-25 + -30 = -55 (1001001)
+-25 + -29 = -54 (1001010)
+-25 + -28 = -53 (1001011)
+-25 + -27 = -52 (1001100)
+-25 + -26 = -51 (1001101)
+-25 + -25 = -50 (1001110)
+-25 + -24 = -49 (1001111)
+-25 + -23 = -48 (1010000)
+-25 + -22 = -47 (1010001)
+-25 + -21 = -46 (1010010)
+-25 + -20 = -45 (1010011)
+-25 + -19 = -44 (1010100)
+-25 + -18 = -43 (1010101)
+-25 + -17 = -42 (1010110)
+-25 + -16 = -41 (1010111)
+-25 + -15 = -40 (1011000)
+-25 + -14 = -39 (1011001)
+-25 + -13 = -38 (1011010)
+-25 + -12 = -37 (1011011)
+-25 + -11 = -36 (1011100)
+-25 + -10 = -35 (1011101)
+-25 + -9 = -34 (1011110)
+-25 + -8 = -33 (1011111)
+-25 + -7 = -32 (1100000)
+-25 + -6 = -31 (1100001)
+-25 + -5 = -30 (1100010)
+-25 + -4 = -29 (1100011)
+-25 + -3 = -28 (1100100)
+-25 + -2 = -27 (1100101)
+-25 + -1 = -26 (1100110)
+-24 + 0 = -24 (1101000)
+-24 + 1 = -23 (1101001)
+-24 + 2 = -22 (1101010)
+-24 + 3 = -21 (1101011)
+-24 + 4 = -20 (1101100)
+-24 + 5 = -19 (1101101)
+-24 + 6 = -18 (1101110)
+-24 + 7 = -17 (1101111)
+-24 + 8 = -16 (1110000)
+-24 + 9 = -15 (1110001)
+-24 + 10 = -14 (1110010)
+-24 + 11 = -13 (1110011)
+-24 + 12 = -12 (1110100)
+-24 + 13 = -11 (1110101)
+-24 + 14 = -10 (1110110)
+-24 + 15 = -9 (1110111)
+-24 + 16 = -8 (1111000)
+-24 + 17 = -7 (1111001)
+-24 + 18 = -6 (1111010)
+-24 + 19 = -5 (1111011)
+-24 + 20 = -4 (1111100)
+-24 + 21 = -3 (1111101)
+-24 + 22 = -2 (1111110)
+-24 + 23 = -1 (1111111)
+-24 + 24 = 0 (0000000)
+-24 + 25 = 1 (0000001)
+-24 + 26 = 2 (0000010)
+-24 + 27 = 3 (0000011)
+-24 + 28 = 4 (0000100)
+-24 + 29 = 5 (0000101)
+-24 + 30 = 6 (0000110)
+-24 + 31 = 7 (0000111)
+-24 + -32 = -56 (1001000)
+-24 + -31 = -55 (1001001)
+-24 + -30 = -54 (1001010)
+-24 + -29 = -53 (1001011)
+-24 + -28 = -52 (1001100)
+-24 + -27 = -51 (1001101)
+-24 + -26 = -50 (1001110)
+-24 + -25 = -49 (1001111)
+-24 + -24 = -48 (1010000)
+-24 + -23 = -47 (1010001)
+-24 + -22 = -46 (1010010)
+-24 + -21 = -45 (1010011)
+-24 + -20 = -44 (1010100)
+-24 + -19 = -43 (1010101)
+-24 + -18 = -42 (1010110)
+-24 + -17 = -41 (1010111)
+-24 + -16 = -40 (1011000)
+-24 + -15 = -39 (1011001)
+-24 + -14 = -38 (1011010)
+-24 + -13 = -37 (1011011)
+-24 + -12 = -36 (1011100)
+-24 + -11 = -35 (1011101)
+-24 + -10 = -34 (1011110)
+-24 + -9 = -33 (1011111)
+-24 + -8 = -32 (1100000)
+-24 + -7 = -31 (1100001)
+-24 + -6 = -30 (1100010)
+-24 + -5 = -29 (1100011)
+-24 + -4 = -28 (1100100)
+-24 + -3 = -27 (1100101)
+-24 + -2 = -26 (1100110)
+-24 + -1 = -25 (1100111)
+-23 + 0 = -23 (1101001)
+-23 + 1 = -22 (1101010)
+-23 + 2 = -21 (1101011)
+-23 + 3 = -20 (1101100)
+-23 + 4 = -19 (1101101)
+-23 + 5 = -18 (1101110)
+-23 + 6 = -17 (1101111)
+-23 + 7 = -16 (1110000)
+-23 + 8 = -15 (1110001)
+-23 + 9 = -14 (1110010)
+-23 + 10 = -13 (1110011)
+-23 + 11 = -12 (1110100)
+-23 + 12 = -11 (1110101)
+-23 + 13 = -10 (1110110)
+-23 + 14 = -9 (1110111)
+-23 + 15 = -8 (1111000)
+-23 + 16 = -7 (1111001)
+-23 + 17 = -6 (1111010)
+-23 + 18 = -5 (1111011)
+-23 + 19 = -4 (1111100)
+-23 + 20 = -3 (1111101)
+-23 + 21 = -2 (1111110)
+-23 + 22 = -1 (1111111)
+-23 + 23 = 0 (0000000)
+-23 + 24 = 1 (0000001)
+-23 + 25 = 2 (0000010)
+-23 + 26 = 3 (0000011)
+-23 + 27 = 4 (0000100)
+-23 + 28 = 5 (0000101)
+-23 + 29 = 6 (0000110)
+-23 + 30 = 7 (0000111)
+-23 + 31 = 8 (0001000)
+-23 + -32 = -55 (1001001)
+-23 + -31 = -54 (1001010)
+-23 + -30 = -53 (1001011)
+-23 + -29 = -52 (1001100)
+-23 + -28 = -51 (1001101)
+-23 + -27 = -50 (1001110)
+-23 + -26 = -49 (1001111)
+-23 + -25 = -48 (1010000)
+-23 + -24 = -47 (1010001)
+-23 + -23 = -46 (1010010)
+-23 + -22 = -45 (1010011)
+-23 + -21 = -44 (1010100)
+-23 + -20 = -43 (1010101)
+-23 + -19 = -42 (1010110)
+-23 + -18 = -41 (1010111)
+-23 + -17 = -40 (1011000)
+-23 + -16 = -39 (1011001)
+-23 + -15 = -38 (1011010)
+-23 + -14 = -37 (1011011)
+-23 + -13 = -36 (1011100)
+-23 + -12 = -35 (1011101)
+-23 + -11 = -34 (1011110)
+-23 + -10 = -33 (1011111)
+-23 + -9 = -32 (1100000)
+-23 + -8 = -31 (1100001)
+-23 + -7 = -30 (1100010)
+-23 + -6 = -29 (1100011)
+-23 + -5 = -28 (1100100)
+-23 + -4 = -27 (1100101)
+-23 + -3 = -26 (1100110)
+-23 + -2 = -25 (1100111)
+-23 + -1 = -24 (1101000)
+-22 + 0 = -22 (1101010)
+-22 + 1 = -21 (1101011)
+-22 + 2 = -20 (1101100)
+-22 + 3 = -19 (1101101)
+-22 + 4 = -18 (1101110)
+-22 + 5 = -17 (1101111)
+-22 + 6 = -16 (1110000)
+-22 + 7 = -15 (1110001)
+-22 + 8 = -14 (1110010)
+-22 + 9 = -13 (1110011)
+-22 + 10 = -12 (1110100)
+-22 + 11 = -11 (1110101)
+-22 + 12 = -10 (1110110)
+-22 + 13 = -9 (1110111)
+-22 + 14 = -8 (1111000)
+-22 + 15 = -7 (1111001)
+-22 + 16 = -6 (1111010)
+-22 + 17 = -5 (1111011)
+-22 + 18 = -4 (1111100)
+-22 + 19 = -3 (1111101)
+-22 + 20 = -2 (1111110)
+-22 + 21 = -1 (1111111)
+-22 + 22 = 0 (0000000)
+-22 + 23 = 1 (0000001)
+-22 + 24 = 2 (0000010)
+-22 + 25 = 3 (0000011)
+-22 + 26 = 4 (0000100)
+-22 + 27 = 5 (0000101)
+-22 + 28 = 6 (0000110)
+-22 + 29 = 7 (0000111)
+-22 + 30 = 8 (0001000)
+-22 + 31 = 9 (0001001)
+-22 + -32 = -54 (1001010)
+-22 + -31 = -53 (1001011)
+-22 + -30 = -52 (1001100)
+-22 + -29 = -51 (1001101)
+-22 + -28 = -50 (1001110)
+-22 + -27 = -49 (1001111)
+-22 + -26 = -48 (1010000)
+-22 + -25 = -47 (1010001)
+-22 + -24 = -46 (1010010)
+-22 + -23 = -45 (1010011)
+-22 + -22 = -44 (1010100)
+-22 + -21 = -43 (1010101)
+-22 + -20 = -42 (1010110)
+-22 + -19 = -41 (1010111)
+-22 + -18 = -40 (1011000)
+-22 + -17 = -39 (1011001)
+-22 + -16 = -38 (1011010)
+-22 + -15 = -37 (1011011)
+-22 + -14 = -36 (1011100)
+-22 + -13 = -35 (1011101)
+-22 + -12 = -34 (1011110)
+-22 + -11 = -33 (1011111)
+-22 + -10 = -32 (1100000)
+-22 + -9 = -31 (1100001)
+-22 + -8 = -30 (1100010)
+-22 + -7 = -29 (1100011)
+-22 + -6 = -28 (1100100)
+-22 + -5 = -27 (1100101)
+-22 + -4 = -26 (1100110)
+-22 + -3 = -25 (1100111)
+-22 + -2 = -24 (1101000)
+-22 + -1 = -23 (1101001)
+-21 + 0 = -21 (1101011)
+-21 + 1 = -20 (1101100)
+-21 + 2 = -19 (1101101)
+-21 + 3 = -18 (1101110)
+-21 + 4 = -17 (1101111)
+-21 + 5 = -16 (1110000)
+-21 + 6 = -15 (1110001)
+-21 + 7 = -14 (1110010)
+-21 + 8 = -13 (1110011)
+-21 + 9 = -12 (1110100)
+-21 + 10 = -11 (1110101)
+-21 + 11 = -10 (1110110)
+-21 + 12 = -9 (1110111)
+-21 + 13 = -8 (1111000)
+-21 + 14 = -7 (1111001)
+-21 + 15 = -6 (1111010)
+-21 + 16 = -5 (1111011)
+-21 + 17 = -4 (1111100)
+-21 + 18 = -3 (1111101)
+-21 + 19 = -2 (1111110)
+-21 + 20 = -1 (1111111)
+-21 + 21 = 0 (0000000)
+-21 + 22 = 1 (0000001)
+-21 + 23 = 2 (0000010)
+-21 + 24 = 3 (0000011)
+-21 + 25 = 4 (0000100)
+-21 + 26 = 5 (0000101)
+-21 + 27 = 6 (0000110)
+-21 + 28 = 7 (0000111)
+-21 + 29 = 8 (0001000)
+-21 + 30 = 9 (0001001)
+-21 + 31 = 10 (0001010)
+-21 + -32 = -53 (1001011)
+-21 + -31 = -52 (1001100)
+-21 + -30 = -51 (1001101)
+-21 + -29 = -50 (1001110)
+-21 + -28 = -49 (1001111)
+-21 + -27 = -48 (1010000)
+-21 + -26 = -47 (1010001)
+-21 + -25 = -46 (1010010)
+-21 + -24 = -45 (1010011)
+-21 + -23 = -44 (1010100)
+-21 + -22 = -43 (1010101)
+-21 + -21 = -42 (1010110)
+-21 + -20 = -41 (1010111)
+-21 + -19 = -40 (1011000)
+-21 + -18 = -39 (1011001)
+-21 + -17 = -38 (1011010)
+-21 + -16 = -37 (1011011)
+-21 + -15 = -36 (1011100)
+-21 + -14 = -35 (1011101)
+-21 + -13 = -34 (1011110)
+-21 + -12 = -33 (1011111)
+-21 + -11 = -32 (1100000)
+-21 + -10 = -31 (1100001)
+-21 + -9 = -30 (1100010)
+-21 + -8 = -29 (1100011)
+-21 + -7 = -28 (1100100)
+-21 + -6 = -27 (1100101)
+-21 + -5 = -26 (1100110)
+-21 + -4 = -25 (1100111)
+-21 + -3 = -24 (1101000)
+-21 + -2 = -23 (1101001)
+-21 + -1 = -22 (1101010)
+-20 + 0 = -20 (1101100)
+-20 + 1 = -19 (1101101)
+-20 + 2 = -18 (1101110)
+-20 + 3 = -17 (1101111)
+-20 + 4 = -16 (1110000)
+-20 + 5 = -15 (1110001)
+-20 + 6 = -14 (1110010)
+-20 + 7 = -13 (1110011)
+-20 + 8 = -12 (1110100)
+-20 + 9 = -11 (1110101)
+-20 + 10 = -10 (1110110)
+-20 + 11 = -9 (1110111)
+-20 + 12 = -8 (1111000)
+-20 + 13 = -7 (1111001)
+-20 + 14 = -6 (1111010)
+-20 + 15 = -5 (1111011)
+-20 + 16 = -4 (1111100)
+-20 + 17 = -3 (1111101)
+-20 + 18 = -2 (1111110)
+-20 + 19 = -1 (1111111)
+-20 + 20 = 0 (0000000)
+-20 + 21 = 1 (0000001)
+-20 + 22 = 2 (0000010)
+-20 + 23 = 3 (0000011)
+-20 + 24 = 4 (0000100)
+-20 + 25 = 5 (0000101)
+-20 + 26 = 6 (0000110)
+-20 + 27 = 7 (0000111)
+-20 + 28 = 8 (0001000)
+-20 + 29 = 9 (0001001)
+-20 + 30 = 10 (0001010)
+-20 + 31 = 11 (0001011)
+-20 + -32 = -52 (1001100)
+-20 + -31 = -51 (1001101)
+-20 + -30 = -50 (1001110)
+-20 + -29 = -49 (1001111)
+-20 + -28 = -48 (1010000)
+-20 + -27 = -47 (1010001)
+-20 + -26 = -46 (1010010)
+-20 + -25 = -45 (1010011)
+-20 + -24 = -44 (1010100)
+-20 + -23 = -43 (1010101)
+-20 + -22 = -42 (1010110)
+-20 + -21 = -41 (1010111)
+-20 + -20 = -40 (1011000)
+-20 + -19 = -39 (1011001)
+-20 + -18 = -38 (1011010)
+-20 + -17 = -37 (1011011)
+-20 + -16 = -36 (1011100)
+-20 + -15 = -35 (1011101)
+-20 + -14 = -34 (1011110)
+-20 + -13 = -33 (1011111)
+-20 + -12 = -32 (1100000)
+-20 + -11 = -31 (1100001)
+-20 + -10 = -30 (1100010)
+-20 + -9 = -29 (1100011)
+-20 + -8 = -28 (1100100)
+-20 + -7 = -27 (1100101)
+-20 + -6 = -26 (1100110)
+-20 + -5 = -25 (1100111)
+-20 + -4 = -24 (1101000)
+-20 + -3 = -23 (1101001)
+-20 + -2 = -22 (1101010)
+-20 + -1 = -21 (1101011)
+-19 + 0 = -19 (1101101)
+-19 + 1 = -18 (1101110)
+-19 + 2 = -17 (1101111)
+-19 + 3 = -16 (1110000)
+-19 + 4 = -15 (1110001)
+-19 + 5 = -14 (1110010)
+-19 + 6 = -13 (1110011)
+-19 + 7 = -12 (1110100)
+-19 + 8 = -11 (1110101)
+-19 + 9 = -10 (1110110)
+-19 + 10 = -9 (1110111)
+-19 + 11 = -8 (1111000)
+-19 + 12 = -7 (1111001)
+-19 + 13 = -6 (1111010)
+-19 + 14 = -5 (1111011)
+-19 + 15 = -4 (1111100)
+-19 + 16 = -3 (1111101)
+-19 + 17 = -2 (1111110)
+-19 + 18 = -1 (1111111)
+-19 + 19 = 0 (0000000)
+-19 + 20 = 1 (0000001)
+-19 + 21 = 2 (0000010)
+-19 + 22 = 3 (0000011)
+-19 + 23 = 4 (0000100)
+-19 + 24 = 5 (0000101)
+-19 + 25 = 6 (0000110)
+-19 + 26 = 7 (0000111)
+-19 + 27 = 8 (0001000)
+-19 + 28 = 9 (0001001)
+-19 + 29 = 10 (0001010)
+-19 + 30 = 11 (0001011)
+-19 + 31 = 12 (0001100)
+-19 + -32 = -51 (1001101)
+-19 + -31 = -50 (1001110)
+-19 + -30 = -49 (1001111)
+-19 + -29 = -48 (1010000)
+-19 + -28 = -47 (1010001)
+-19 + -27 = -46 (1010010)
+-19 + -26 = -45 (1010011)
+-19 + -25 = -44 (1010100)
+-19 + -24 = -43 (1010101)
+-19 + -23 = -42 (1010110)
+-19 + -22 = -41 (1010111)
+-19 + -21 = -40 (1011000)
+-19 + -20 = -39 (1011001)
+-19 + -19 = -38 (1011010)
+-19 + -18 = -37 (1011011)
+-19 + -17 = -36 (1011100)
+-19 + -16 = -35 (1011101)
+-19 + -15 = -34 (1011110)
+-19 + -14 = -33 (1011111)
+-19 + -13 = -32 (1100000)
+-19 + -12 = -31 (1100001)
+-19 + -11 = -30 (1100010)
+-19 + -10 = -29 (1100011)
+-19 + -9 = -28 (1100100)
+-19 + -8 = -27 (1100101)
+-19 + -7 = -26 (1100110)
+-19 + -6 = -25 (1100111)
+-19 + -5 = -24 (1101000)
+-19 + -4 = -23 (1101001)
+-19 + -3 = -22 (1101010)
+-19 + -2 = -21 (1101011)
+-19 + -1 = -20 (1101100)
+-18 + 0 = -18 (1101110)
+-18 + 1 = -17 (1101111)
+-18 + 2 = -16 (1110000)
+-18 + 3 = -15 (1110001)
+-18 + 4 = -14 (1110010)
+-18 + 5 = -13 (1110011)
+-18 + 6 = -12 (1110100)
+-18 + 7 = -11 (1110101)
+-18 + 8 = -10 (1110110)
+-18 + 9 = -9 (1110111)
+-18 + 10 = -8 (1111000)
+-18 + 11 = -7 (1111001)
+-18 + 12 = -6 (1111010)
+-18 + 13 = -5 (1111011)
+-18 + 14 = -4 (1111100)
+-18 + 15 = -3 (1111101)
+-18 + 16 = -2 (1111110)
+-18 + 17 = -1 (1111111)
+-18 + 18 = 0 (0000000)
+-18 + 19 = 1 (0000001)
+-18 + 20 = 2 (0000010)
+-18 + 21 = 3 (0000011)
+-18 + 22 = 4 (0000100)
+-18 + 23 = 5 (0000101)
+-18 + 24 = 6 (0000110)
+-18 + 25 = 7 (0000111)
+-18 + 26 = 8 (0001000)
+-18 + 27 = 9 (0001001)
+-18 + 28 = 10 (0001010)
+-18 + 29 = 11 (0001011)
+-18 + 30 = 12 (0001100)
+-18 + 31 = 13 (0001101)
+-18 + -32 = -50 (1001110)
+-18 + -31 = -49 (1001111)
+-18 + -30 = -48 (1010000)
+-18 + -29 = -47 (1010001)
+-18 + -28 = -46 (1010010)
+-18 + -27 = -45 (1010011)
+-18 + -26 = -44 (1010100)
+-18 + -25 = -43 (1010101)
+-18 + -24 = -42 (1010110)
+-18 + -23 = -41 (1010111)
+-18 + -22 = -40 (1011000)
+-18 + -21 = -39 (1011001)
+-18 + -20 = -38 (1011010)
+-18 + -19 = -37 (1011011)
+-18 + -18 = -36 (1011100)
+-18 + -17 = -35 (1011101)
+-18 + -16 = -34 (1011110)
+-18 + -15 = -33 (1011111)
+-18 + -14 = -32 (1100000)
+-18 + -13 = -31 (1100001)
+-18 + -12 = -30 (1100010)
+-18 + -11 = -29 (1100011)
+-18 + -10 = -28 (1100100)
+-18 + -9 = -27 (1100101)
+-18 + -8 = -26 (1100110)
+-18 + -7 = -25 (1100111)
+-18 + -6 = -24 (1101000)
+-18 + -5 = -23 (1101001)
+-18 + -4 = -22 (1101010)
+-18 + -3 = -21 (1101011)
+-18 + -2 = -20 (1101100)
+-18 + -1 = -19 (1101101)
+-17 + 0 = -17 (1101111)
+-17 + 1 = -16 (1110000)
+-17 + 2 = -15 (1110001)
+-17 + 3 = -14 (1110010)
+-17 + 4 = -13 (1110011)
+-17 + 5 = -12 (1110100)
+-17 + 6 = -11 (1110101)
+-17 + 7 = -10 (1110110)
+-17 + 8 = -9 (1110111)
+-17 + 9 = -8 (1111000)
+-17 + 10 = -7 (1111001)
+-17 + 11 = -6 (1111010)
+-17 + 12 = -5 (1111011)
+-17 + 13 = -4 (1111100)
+-17 + 14 = -3 (1111101)
+-17 + 15 = -2 (1111110)
+-17 + 16 = -1 (1111111)
+-17 + 17 = 0 (0000000)
+-17 + 18 = 1 (0000001)
+-17 + 19 = 2 (0000010)
+-17 + 20 = 3 (0000011)
+-17 + 21 = 4 (0000100)
+-17 + 22 = 5 (0000101)
+-17 + 23 = 6 (0000110)
+-17 + 24 = 7 (0000111)
+-17 + 25 = 8 (0001000)
+-17 + 26 = 9 (0001001)
+-17 + 27 = 10 (0001010)
+-17 + 28 = 11 (0001011)
+-17 + 29 = 12 (0001100)
+-17 + 30 = 13 (0001101)
+-17 + 31 = 14 (0001110)
+-17 + -32 = -49 (1001111)
+-17 + -31 = -48 (1010000)
+-17 + -30 = -47 (1010001)
+-17 + -29 = -46 (1010010)
+-17 + -28 = -45 (1010011)
+-17 + -27 = -44 (1010100)
+-17 + -26 = -43 (1010101)
+-17 + -25 = -42 (1010110)
+-17 + -24 = -41 (1010111)
+-17 + -23 = -40 (1011000)
+-17 + -22 = -39 (1011001)
+-17 + -21 = -38 (1011010)
+-17 + -20 = -37 (1011011)
+-17 + -19 = -36 (1011100)
+-17 + -18 = -35 (1011101)
+-17 + -17 = -34 (1011110)
+-17 + -16 = -33 (1011111)
+-17 + -15 = -32 (1100000)
+-17 + -14 = -31 (1100001)
+-17 + -13 = -30 (1100010)
+-17 + -12 = -29 (1100011)
+-17 + -11 = -28 (1100100)
+-17 + -10 = -27 (1100101)
+-17 + -9 = -26 (1100110)
+-17 + -8 = -25 (1100111)
+-17 + -7 = -24 (1101000)
+-17 + -6 = -23 (1101001)
+-17 + -5 = -22 (1101010)
+-17 + -4 = -21 (1101011)
+-17 + -3 = -20 (1101100)
+-17 + -2 = -19 (1101101)
+-17 + -1 = -18 (1101110)
+-16 + 0 = -16 (1110000)
+-16 + 1 = -15 (1110001)
+-16 + 2 = -14 (1110010)
+-16 + 3 = -13 (1110011)
+-16 + 4 = -12 (1110100)
+-16 + 5 = -11 (1110101)
+-16 + 6 = -10 (1110110)
+-16 + 7 = -9 (1110111)
+-16 + 8 = -8 (1111000)
+-16 + 9 = -7 (1111001)
+-16 + 10 = -6 (1111010)
+-16 + 11 = -5 (1111011)
+-16 + 12 = -4 (1111100)
+-16 + 13 = -3 (1111101)
+-16 + 14 = -2 (1111110)
+-16 + 15 = -1 (1111111)
+-16 + 16 = 0 (0000000)
+-16 + 17 = 1 (0000001)
+-16 + 18 = 2 (0000010)
+-16 + 19 = 3 (0000011)
+-16 + 20 = 4 (0000100)
+-16 + 21 = 5 (0000101)
+-16 + 22 = 6 (0000110)
+-16 + 23 = 7 (0000111)
+-16 + 24 = 8 (0001000)
+-16 + 25 = 9 (0001001)
+-16 + 26 = 10 (0001010)
+-16 + 27 = 11 (0001011)
+-16 + 28 = 12 (0001100)
+-16 + 29 = 13 (0001101)
+-16 + 30 = 14 (0001110)
+-16 + 31 = 15 (0001111)
+-16 + -32 = -48 (1010000)
+-16 + -31 = -47 (1010001)
+-16 + -30 = -46 (1010010)
+-16 + -29 = -45 (1010011)
+-16 + -28 = -44 (1010100)
+-16 + -27 = -43 (1010101)
+-16 + -26 = -42 (1010110)
+-16 + -25 = -41 (1010111)
+-16 + -24 = -40 (1011000)
+-16 + -23 = -39 (1011001)
+-16 + -22 = -38 (1011010)
+-16 + -21 = -37 (1011011)
+-16 + -20 = -36 (1011100)
+-16 + -19 = -35 (1011101)
+-16 + -18 = -34 (1011110)
+-16 + -17 = -33 (1011111)
+-16 + -16 = -32 (1100000)
+-16 + -15 = -31 (1100001)
+-16 + -14 = -30 (1100010)
+-16 + -13 = -29 (1100011)
+-16 + -12 = -28 (1100100)
+-16 + -11 = -27 (1100101)
+-16 + -10 = -26 (1100110)
+-16 + -9 = -25 (1100111)
+-16 + -8 = -24 (1101000)
+-16 + -7 = -23 (1101001)
+-16 + -6 = -22 (1101010)
+-16 + -5 = -21 (1101011)
+-16 + -4 = -20 (1101100)
+-16 + -3 = -19 (1101101)
+-16 + -2 = -18 (1101110)
+-16 + -1 = -17 (1101111)
+-15 + 0 = -15 (1110001)
+-15 + 1 = -14 (1110010)
+-15 + 2 = -13 (1110011)
+-15 + 3 = -12 (1110100)
+-15 + 4 = -11 (1110101)
+-15 + 5 = -10 (1110110)
+-15 + 6 = -9 (1110111)
+-15 + 7 = -8 (1111000)
+-15 + 8 = -7 (1111001)
+-15 + 9 = -6 (1111010)
+-15 + 10 = -5 (1111011)
+-15 + 11 = -4 (1111100)
+-15 + 12 = -3 (1111101)
+-15 + 13 = -2 (1111110)
+-15 + 14 = -1 (1111111)
+-15 + 15 = 0 (0000000)
+-15 + 16 = 1 (0000001)
+-15 + 17 = 2 (0000010)
+-15 + 18 = 3 (0000011)
+-15 + 19 = 4 (0000100)
+-15 + 20 = 5 (0000101)
+-15 + 21 = 6 (0000110)
+-15 + 22 = 7 (0000111)
+-15 + 23 = 8 (0001000)
+-15 + 24 = 9 (0001001)
+-15 + 25 = 10 (0001010)
+-15 + 26 = 11 (0001011)
+-15 + 27 = 12 (0001100)
+-15 + 28 = 13 (0001101)
+-15 + 29 = 14 (0001110)
+-15 + 30 = 15 (0001111)
+-15 + 31 = 16 (0010000)
+-15 + -32 = -47 (1010001)
+-15 + -31 = -46 (1010010)
+-15 + -30 = -45 (1010011)
+-15 + -29 = -44 (1010100)
+-15 + -28 = -43 (1010101)
+-15 + -27 = -42 (1010110)
+-15 + -26 = -41 (1010111)
+-15 + -25 = -40 (1011000)
+-15 + -24 = -39 (1011001)
+-15 + -23 = -38 (1011010)
+-15 + -22 = -37 (1011011)
+-15 + -21 = -36 (1011100)
+-15 + -20 = -35 (1011101)
+-15 + -19 = -34 (1011110)
+-15 + -18 = -33 (1011111)
+-15 + -17 = -32 (1100000)
+-15 + -16 = -31 (1100001)
+-15 + -15 = -30 (1100010)
+-15 + -14 = -29 (1100011)
+-15 + -13 = -28 (1100100)
+-15 + -12 = -27 (1100101)
+-15 + -11 = -26 (1100110)
+-15 + -10 = -25 (1100111)
+-15 + -9 = -24 (1101000)
+-15 + -8 = -23 (1101001)
+-15 + -7 = -22 (1101010)
+-15 + -6 = -21 (1101011)
+-15 + -5 = -20 (1101100)
+-15 + -4 = -19 (1101101)
+-15 + -3 = -18 (1101110)
+-15 + -2 = -17 (1101111)
+-15 + -1 = -16 (1110000)
+-14 + 0 = -14 (1110010)
+-14 + 1 = -13 (1110011)
+-14 + 2 = -12 (1110100)
+-14 + 3 = -11 (1110101)
+-14 + 4 = -10 (1110110)
+-14 + 5 = -9 (1110111)
+-14 + 6 = -8 (1111000)
+-14 + 7 = -7 (1111001)
+-14 + 8 = -6 (1111010)
+-14 + 9 = -5 (1111011)
+-14 + 10 = -4 (1111100)
+-14 + 11 = -3 (1111101)
+-14 + 12 = -2 (1111110)
+-14 + 13 = -1 (1111111)
+-14 + 14 = 0 (0000000)
+-14 + 15 = 1 (0000001)
+-14 + 16 = 2 (0000010)
+-14 + 17 = 3 (0000011)
+-14 + 18 = 4 (0000100)
+-14 + 19 = 5 (0000101)
+-14 + 20 = 6 (0000110)
+-14 + 21 = 7 (0000111)
+-14 + 22 = 8 (0001000)
+-14 + 23 = 9 (0001001)
+-14 + 24 = 10 (0001010)
+-14 + 25 = 11 (0001011)
+-14 + 26 = 12 (0001100)
+-14 + 27 = 13 (0001101)
+-14 + 28 = 14 (0001110)
+-14 + 29 = 15 (0001111)
+-14 + 30 = 16 (0010000)
+-14 + 31 = 17 (0010001)
+-14 + -32 = -46 (1010010)
+-14 + -31 = -45 (1010011)
+-14 + -30 = -44 (1010100)
+-14 + -29 = -43 (1010101)
+-14 + -28 = -42 (1010110)
+-14 + -27 = -41 (1010111)
+-14 + -26 = -40 (1011000)
+-14 + -25 = -39 (1011001)
+-14 + -24 = -38 (1011010)
+-14 + -23 = -37 (1011011)
+-14 + -22 = -36 (1011100)
+-14 + -21 = -35 (1011101)
+-14 + -20 = -34 (1011110)
+-14 + -19 = -33 (1011111)
+-14 + -18 = -32 (1100000)
+-14 + -17 = -31 (1100001)
+-14 + -16 = -30 (1100010)
+-14 + -15 = -29 (1100011)
+-14 + -14 = -28 (1100100)
+-14 + -13 = -27 (1100101)
+-14 + -12 = -26 (1100110)
+-14 + -11 = -25 (1100111)
+-14 + -10 = -24 (1101000)
+-14 + -9 = -23 (1101001)
+-14 + -8 = -22 (1101010)
+-14 + -7 = -21 (1101011)
+-14 + -6 = -20 (1101100)
+-14 + -5 = -19 (1101101)
+-14 + -4 = -18 (1101110)
+-14 + -3 = -17 (1101111)
+-14 + -2 = -16 (1110000)
+-14 + -1 = -15 (1110001)
+-13 + 0 = -13 (1110011)
+-13 + 1 = -12 (1110100)
+-13 + 2 = -11 (1110101)
+-13 + 3 = -10 (1110110)
+-13 + 4 = -9 (1110111)
+-13 + 5 = -8 (1111000)
+-13 + 6 = -7 (1111001)
+-13 + 7 = -6 (1111010)
+-13 + 8 = -5 (1111011)
+-13 + 9 = -4 (1111100)
+-13 + 10 = -3 (1111101)
+-13 + 11 = -2 (1111110)
+-13 + 12 = -1 (1111111)
+-13 + 13 = 0 (0000000)
+-13 + 14 = 1 (0000001)
+-13 + 15 = 2 (0000010)
+-13 + 16 = 3 (0000011)
+-13 + 17 = 4 (0000100)
+-13 + 18 = 5 (0000101)
+-13 + 19 = 6 (0000110)
+-13 + 20 = 7 (0000111)
+-13 + 21 = 8 (0001000)
+-13 + 22 = 9 (0001001)
+-13 + 23 = 10 (0001010)
+-13 + 24 = 11 (0001011)
+-13 + 25 = 12 (0001100)
+-13 + 26 = 13 (0001101)
+-13 + 27 = 14 (0001110)
+-13 + 28 = 15 (0001111)
+-13 + 29 = 16 (0010000)
+-13 + 30 = 17 (0010001)
+-13 + 31 = 18 (0010010)
+-13 + -32 = -45 (1010011)
+-13 + -31 = -44 (1010100)
+-13 + -30 = -43 (1010101)
+-13 + -29 = -42 (1010110)
+-13 + -28 = -41 (1010111)
+-13 + -27 = -40 (1011000)
+-13 + -26 = -39 (1011001)
+-13 + -25 = -38 (1011010)
+-13 + -24 = -37 (1011011)
+-13 + -23 = -36 (1011100)
+-13 + -22 = -35 (1011101)
+-13 + -21 = -34 (1011110)
+-13 + -20 = -33 (1011111)
+-13 + -19 = -32 (1100000)
+-13 + -18 = -31 (1100001)
+-13 + -17 = -30 (1100010)
+-13 + -16 = -29 (1100011)
+-13 + -15 = -28 (1100100)
+-13 + -14 = -27 (1100101)
+-13 + -13 = -26 (1100110)
+-13 + -12 = -25 (1100111)
+-13 + -11 = -24 (1101000)
+-13 + -10 = -23 (1101001)
+-13 + -9 = -22 (1101010)
+-13 + -8 = -21 (1101011)
+-13 + -7 = -20 (1101100)
+-13 + -6 = -19 (1101101)
+-13 + -5 = -18 (1101110)
+-13 + -4 = -17 (1101111)
+-13 + -3 = -16 (1110000)
+-13 + -2 = -15 (1110001)
+-13 + -1 = -14 (1110010)
+-12 + 0 = -12 (1110100)
+-12 + 1 = -11 (1110101)
+-12 + 2 = -10 (1110110)
+-12 + 3 = -9 (1110111)
+-12 + 4 = -8 (1111000)
+-12 + 5 = -7 (1111001)
+-12 + 6 = -6 (1111010)
+-12 + 7 = -5 (1111011)
+-12 + 8 = -4 (1111100)
+-12 + 9 = -3 (1111101)
+-12 + 10 = -2 (1111110)
+-12 + 11 = -1 (1111111)
+-12 + 12 = 0 (0000000)
+-12 + 13 = 1 (0000001)
+-12 + 14 = 2 (0000010)
+-12 + 15 = 3 (0000011)
+-12 + 16 = 4 (0000100)
+-12 + 17 = 5 (0000101)
+-12 + 18 = 6 (0000110)
+-12 + 19 = 7 (0000111)
+-12 + 20 = 8 (0001000)
+-12 + 21 = 9 (0001001)
+-12 + 22 = 10 (0001010)
+-12 + 23 = 11 (0001011)
+-12 + 24 = 12 (0001100)
+-12 + 25 = 13 (0001101)
+-12 + 26 = 14 (0001110)
+-12 + 27 = 15 (0001111)
+-12 + 28 = 16 (0010000)
+-12 + 29 = 17 (0010001)
+-12 + 30 = 18 (0010010)
+-12 + 31 = 19 (0010011)
+-12 + -32 = -44 (1010100)
+-12 + -31 = -43 (1010101)
+-12 + -30 = -42 (1010110)
+-12 + -29 = -41 (1010111)
+-12 + -28 = -40 (1011000)
+-12 + -27 = -39 (1011001)
+-12 + -26 = -38 (1011010)
+-12 + -25 = -37 (1011011)
+-12 + -24 = -36 (1011100)
+-12 + -23 = -35 (1011101)
+-12 + -22 = -34 (1011110)
+-12 + -21 = -33 (1011111)
+-12 + -20 = -32 (1100000)
+-12 + -19 = -31 (1100001)
+-12 + -18 = -30 (1100010)
+-12 + -17 = -29 (1100011)
+-12 + -16 = -28 (1100100)
+-12 + -15 = -27 (1100101)
+-12 + -14 = -26 (1100110)
+-12 + -13 = -25 (1100111)
+-12 + -12 = -24 (1101000)
+-12 + -11 = -23 (1101001)
+-12 + -10 = -22 (1101010)
+-12 + -9 = -21 (1101011)
+-12 + -8 = -20 (1101100)
+-12 + -7 = -19 (1101101)
+-12 + -6 = -18 (1101110)
+-12 + -5 = -17 (1101111)
+-12 + -4 = -16 (1110000)
+-12 + -3 = -15 (1110001)
+-12 + -2 = -14 (1110010)
+-12 + -1 = -13 (1110011)
+-11 + 0 = -11 (1110101)
+-11 + 1 = -10 (1110110)
+-11 + 2 = -9 (1110111)
+-11 + 3 = -8 (1111000)
+-11 + 4 = -7 (1111001)
+-11 + 5 = -6 (1111010)
+-11 + 6 = -5 (1111011)
+-11 + 7 = -4 (1111100)
+-11 + 8 = -3 (1111101)
+-11 + 9 = -2 (1111110)
+-11 + 10 = -1 (1111111)
+-11 + 11 = 0 (0000000)
+-11 + 12 = 1 (0000001)
+-11 + 13 = 2 (0000010)
+-11 + 14 = 3 (0000011)
+-11 + 15 = 4 (0000100)
+-11 + 16 = 5 (0000101)
+-11 + 17 = 6 (0000110)
+-11 + 18 = 7 (0000111)
+-11 + 19 = 8 (0001000)
+-11 + 20 = 9 (0001001)
+-11 + 21 = 10 (0001010)
+-11 + 22 = 11 (0001011)
+-11 + 23 = 12 (0001100)
+-11 + 24 = 13 (0001101)
+-11 + 25 = 14 (0001110)
+-11 + 26 = 15 (0001111)
+-11 + 27 = 16 (0010000)
+-11 + 28 = 17 (0010001)
+-11 + 29 = 18 (0010010)
+-11 + 30 = 19 (0010011)
+-11 + 31 = 20 (0010100)
+-11 + -32 = -43 (1010101)
+-11 + -31 = -42 (1010110)
+-11 + -30 = -41 (1010111)
+-11 + -29 = -40 (1011000)
+-11 + -28 = -39 (1011001)
+-11 + -27 = -38 (1011010)
+-11 + -26 = -37 (1011011)
+-11 + -25 = -36 (1011100)
+-11 + -24 = -35 (1011101)
+-11 + -23 = -34 (1011110)
+-11 + -22 = -33 (1011111)
+-11 + -21 = -32 (1100000)
+-11 + -20 = -31 (1100001)
+-11 + -19 = -30 (1100010)
+-11 + -18 = -29 (1100011)
+-11 + -17 = -28 (1100100)
+-11 + -16 = -27 (1100101)
+-11 + -15 = -26 (1100110)
+-11 + -14 = -25 (1100111)
+-11 + -13 = -24 (1101000)
+-11 + -12 = -23 (1101001)
+-11 + -11 = -22 (1101010)
+-11 + -10 = -21 (1101011)
+-11 + -9 = -20 (1101100)
+-11 + -8 = -19 (1101101)
+-11 + -7 = -18 (1101110)
+-11 + -6 = -17 (1101111)
+-11 + -5 = -16 (1110000)
+-11 + -4 = -15 (1110001)
+-11 + -3 = -14 (1110010)
+-11 + -2 = -13 (1110011)
+-11 + -1 = -12 (1110100)
+-10 + 0 = -10 (1110110)
+-10 + 1 = -9 (1110111)
+-10 + 2 = -8 (1111000)
+-10 + 3 = -7 (1111001)
+-10 + 4 = -6 (1111010)
+-10 + 5 = -5 (1111011)
+-10 + 6 = -4 (1111100)
+-10 + 7 = -3 (1111101)
+-10 + 8 = -2 (1111110)
+-10 + 9 = -1 (1111111)
+-10 + 10 = 0 (0000000)
+-10 + 11 = 1 (0000001)
+-10 + 12 = 2 (0000010)
+-10 + 13 = 3 (0000011)
+-10 + 14 = 4 (0000100)
+-10 + 15 = 5 (0000101)
+-10 + 16 = 6 (0000110)
+-10 + 17 = 7 (0000111)
+-10 + 18 = 8 (0001000)
+-10 + 19 = 9 (0001001)
+-10 + 20 = 10 (0001010)
+-10 + 21 = 11 (0001011)
+-10 + 22 = 12 (0001100)
+-10 + 23 = 13 (0001101)
+-10 + 24 = 14 (0001110)
+-10 + 25 = 15 (0001111)
+-10 + 26 = 16 (0010000)
+-10 + 27 = 17 (0010001)
+-10 + 28 = 18 (0010010)
+-10 + 29 = 19 (0010011)
+-10 + 30 = 20 (0010100)
+-10 + 31 = 21 (0010101)
+-10 + -32 = -42 (1010110)
+-10 + -31 = -41 (1010111)
+-10 + -30 = -40 (1011000)
+-10 + -29 = -39 (1011001)
+-10 + -28 = -38 (1011010)
+-10 + -27 = -37 (1011011)
+-10 + -26 = -36 (1011100)
+-10 + -25 = -35 (1011101)
+-10 + -24 = -34 (1011110)
+-10 + -23 = -33 (1011111)
+-10 + -22 = -32 (1100000)
+-10 + -21 = -31 (1100001)
+-10 + -20 = -30 (1100010)
+-10 + -19 = -29 (1100011)
+-10 + -18 = -28 (1100100)
+-10 + -17 = -27 (1100101)
+-10 + -16 = -26 (1100110)
+-10 + -15 = -25 (1100111)
+-10 + -14 = -24 (1101000)
+-10 + -13 = -23 (1101001)
+-10 + -12 = -22 (1101010)
+-10 + -11 = -21 (1101011)
+-10 + -10 = -20 (1101100)
+-10 + -9 = -19 (1101101)
+-10 + -8 = -18 (1101110)
+-10 + -7 = -17 (1101111)
+-10 + -6 = -16 (1110000)
+-10 + -5 = -15 (1110001)
+-10 + -4 = -14 (1110010)
+-10 + -3 = -13 (1110011)
+-10 + -2 = -12 (1110100)
+-10 + -1 = -11 (1110101)
+-9 + 0 = -9 (1110111)
+-9 + 1 = -8 (1111000)
+-9 + 2 = -7 (1111001)
+-9 + 3 = -6 (1111010)
+-9 + 4 = -5 (1111011)
+-9 + 5 = -4 (1111100)
+-9 + 6 = -3 (1111101)
+-9 + 7 = -2 (1111110)
+-9 + 8 = -1 (1111111)
+-9 + 9 = 0 (0000000)
+-9 + 10 = 1 (0000001)
+-9 + 11 = 2 (0000010)
+-9 + 12 = 3 (0000011)
+-9 + 13 = 4 (0000100)
+-9 + 14 = 5 (0000101)
+-9 + 15 = 6 (0000110)
+-9 + 16 = 7 (0000111)
+-9 + 17 = 8 (0001000)
+-9 + 18 = 9 (0001001)
+-9 + 19 = 10 (0001010)
+-9 + 20 = 11 (0001011)
+-9 + 21 = 12 (0001100)
+-9 + 22 = 13 (0001101)
+-9 + 23 = 14 (0001110)
+-9 + 24 = 15 (0001111)
+-9 + 25 = 16 (0010000)
+-9 + 26 = 17 (0010001)
+-9 + 27 = 18 (0010010)
+-9 + 28 = 19 (0010011)
+-9 + 29 = 20 (0010100)
+-9 + 30 = 21 (0010101)
+-9 + 31 = 22 (0010110)
+-9 + -32 = -41 (1010111)
+-9 + -31 = -40 (1011000)
+-9 + -30 = -39 (1011001)
+-9 + -29 = -38 (1011010)
+-9 + -28 = -37 (1011011)
+-9 + -27 = -36 (1011100)
+-9 + -26 = -35 (1011101)
+-9 + -25 = -34 (1011110)
+-9 + -24 = -33 (1011111)
+-9 + -23 = -32 (1100000)
+-9 + -22 = -31 (1100001)
+-9 + -21 = -30 (1100010)
+-9 + -20 = -29 (1100011)
+-9 + -19 = -28 (1100100)
+-9 + -18 = -27 (1100101)
+-9 + -17 = -26 (1100110)
+-9 + -16 = -25 (1100111)
+-9 + -15 = -24 (1101000)
+-9 + -14 = -23 (1101001)
+-9 + -13 = -22 (1101010)
+-9 + -12 = -21 (1101011)
+-9 + -11 = -20 (1101100)
+-9 + -10 = -19 (1101101)
+-9 + -9 = -18 (1101110)
+-9 + -8 = -17 (1101111)
+-9 + -7 = -16 (1110000)
+-9 + -6 = -15 (1110001)
+-9 + -5 = -14 (1110010)
+-9 + -4 = -13 (1110011)
+-9 + -3 = -12 (1110100)
+-9 + -2 = -11 (1110101)
+-9 + -1 = -10 (1110110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/main.cpp
new file mode 100644
index 000000000..24eb43ae7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 7-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 7;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/stimgen.h
new file mode 100644
index 000000000..feeda4215
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/bits_to_bits/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector7& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector7& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/common.h
new file mode 100644
index 000000000..4ffc0e670
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+typedef sc_signal<sc_bv<9> > signal_bool_vector9;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/datawidth.cpp
new file mode 100644
index 000000000..25913d4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_signed tmp_a (in1_width);
+ sc_signed tmp_b (in2_width);
+ sc_signed tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/datawidth.h
new file mode 100644
index 000000000..911b72c4f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector9& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector9& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/extension.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/extension.f
new file mode 100644
index 000000000..673123bd2
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/extension.f
@@ -0,0 +1,3 @@
+extension/datawidth.cpp
+extension/stimgen.cpp
+extension/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/golden/extension.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/golden/extension.log
new file mode 100644
index 000000000..e7488d162
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/golden/extension.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + -32 = -24 (111101000)
+8 + -31 = -23 (111101001)
+8 + -30 = -22 (111101010)
+8 + -29 = -21 (111101011)
+8 + -28 = -20 (111101100)
+8 + -27 = -19 (111101101)
+8 + -26 = -18 (111101110)
+8 + -25 = -17 (111101111)
+8 + -24 = -16 (111110000)
+8 + -23 = -15 (111110001)
+8 + -22 = -14 (111110010)
+8 + -21 = -13 (111110011)
+8 + -20 = -12 (111110100)
+8 + -19 = -11 (111110101)
+8 + -18 = -10 (111110110)
+8 + -17 = -9 (111110111)
+8 + -16 = -8 (111111000)
+8 + -15 = -7 (111111001)
+8 + -14 = -6 (111111010)
+8 + -13 = -5 (111111011)
+8 + -12 = -4 (111111100)
+8 + -11 = -3 (111111101)
+8 + -10 = -2 (111111110)
+8 + -9 = -1 (111111111)
+8 + -8 = 0 (000000000)
+8 + -7 = 1 (000000001)
+8 + -6 = 2 (000000010)
+8 + -5 = 3 (000000011)
+8 + -4 = 4 (000000100)
+8 + -3 = 5 (000000101)
+8 + -2 = 6 (000000110)
+8 + -1 = 7 (000000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + -32 = -23 (111101001)
+9 + -31 = -22 (111101010)
+9 + -30 = -21 (111101011)
+9 + -29 = -20 (111101100)
+9 + -28 = -19 (111101101)
+9 + -27 = -18 (111101110)
+9 + -26 = -17 (111101111)
+9 + -25 = -16 (111110000)
+9 + -24 = -15 (111110001)
+9 + -23 = -14 (111110010)
+9 + -22 = -13 (111110011)
+9 + -21 = -12 (111110100)
+9 + -20 = -11 (111110101)
+9 + -19 = -10 (111110110)
+9 + -18 = -9 (111110111)
+9 + -17 = -8 (111111000)
+9 + -16 = -7 (111111001)
+9 + -15 = -6 (111111010)
+9 + -14 = -5 (111111011)
+9 + -13 = -4 (111111100)
+9 + -12 = -3 (111111101)
+9 + -11 = -2 (111111110)
+9 + -10 = -1 (111111111)
+9 + -9 = 0 (000000000)
+9 + -8 = 1 (000000001)
+9 + -7 = 2 (000000010)
+9 + -6 = 3 (000000011)
+9 + -5 = 4 (000000100)
+9 + -4 = 5 (000000101)
+9 + -3 = 6 (000000110)
+9 + -2 = 7 (000000111)
+9 + -1 = 8 (000001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + -32 = -22 (111101010)
+10 + -31 = -21 (111101011)
+10 + -30 = -20 (111101100)
+10 + -29 = -19 (111101101)
+10 + -28 = -18 (111101110)
+10 + -27 = -17 (111101111)
+10 + -26 = -16 (111110000)
+10 + -25 = -15 (111110001)
+10 + -24 = -14 (111110010)
+10 + -23 = -13 (111110011)
+10 + -22 = -12 (111110100)
+10 + -21 = -11 (111110101)
+10 + -20 = -10 (111110110)
+10 + -19 = -9 (111110111)
+10 + -18 = -8 (111111000)
+10 + -17 = -7 (111111001)
+10 + -16 = -6 (111111010)
+10 + -15 = -5 (111111011)
+10 + -14 = -4 (111111100)
+10 + -13 = -3 (111111101)
+10 + -12 = -2 (111111110)
+10 + -11 = -1 (111111111)
+10 + -10 = 0 (000000000)
+10 + -9 = 1 (000000001)
+10 + -8 = 2 (000000010)
+10 + -7 = 3 (000000011)
+10 + -6 = 4 (000000100)
+10 + -5 = 5 (000000101)
+10 + -4 = 6 (000000110)
+10 + -3 = 7 (000000111)
+10 + -2 = 8 (000001000)
+10 + -1 = 9 (000001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + -32 = -21 (111101011)
+11 + -31 = -20 (111101100)
+11 + -30 = -19 (111101101)
+11 + -29 = -18 (111101110)
+11 + -28 = -17 (111101111)
+11 + -27 = -16 (111110000)
+11 + -26 = -15 (111110001)
+11 + -25 = -14 (111110010)
+11 + -24 = -13 (111110011)
+11 + -23 = -12 (111110100)
+11 + -22 = -11 (111110101)
+11 + -21 = -10 (111110110)
+11 + -20 = -9 (111110111)
+11 + -19 = -8 (111111000)
+11 + -18 = -7 (111111001)
+11 + -17 = -6 (111111010)
+11 + -16 = -5 (111111011)
+11 + -15 = -4 (111111100)
+11 + -14 = -3 (111111101)
+11 + -13 = -2 (111111110)
+11 + -12 = -1 (111111111)
+11 + -11 = 0 (000000000)
+11 + -10 = 1 (000000001)
+11 + -9 = 2 (000000010)
+11 + -8 = 3 (000000011)
+11 + -7 = 4 (000000100)
+11 + -6 = 5 (000000101)
+11 + -5 = 6 (000000110)
+11 + -4 = 7 (000000111)
+11 + -3 = 8 (000001000)
+11 + -2 = 9 (000001001)
+11 + -1 = 10 (000001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + -32 = -20 (111101100)
+12 + -31 = -19 (111101101)
+12 + -30 = -18 (111101110)
+12 + -29 = -17 (111101111)
+12 + -28 = -16 (111110000)
+12 + -27 = -15 (111110001)
+12 + -26 = -14 (111110010)
+12 + -25 = -13 (111110011)
+12 + -24 = -12 (111110100)
+12 + -23 = -11 (111110101)
+12 + -22 = -10 (111110110)
+12 + -21 = -9 (111110111)
+12 + -20 = -8 (111111000)
+12 + -19 = -7 (111111001)
+12 + -18 = -6 (111111010)
+12 + -17 = -5 (111111011)
+12 + -16 = -4 (111111100)
+12 + -15 = -3 (111111101)
+12 + -14 = -2 (111111110)
+12 + -13 = -1 (111111111)
+12 + -12 = 0 (000000000)
+12 + -11 = 1 (000000001)
+12 + -10 = 2 (000000010)
+12 + -9 = 3 (000000011)
+12 + -8 = 4 (000000100)
+12 + -7 = 5 (000000101)
+12 + -6 = 6 (000000110)
+12 + -5 = 7 (000000111)
+12 + -4 = 8 (000001000)
+12 + -3 = 9 (000001001)
+12 + -2 = 10 (000001010)
+12 + -1 = 11 (000001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + -32 = -19 (111101101)
+13 + -31 = -18 (111101110)
+13 + -30 = -17 (111101111)
+13 + -29 = -16 (111110000)
+13 + -28 = -15 (111110001)
+13 + -27 = -14 (111110010)
+13 + -26 = -13 (111110011)
+13 + -25 = -12 (111110100)
+13 + -24 = -11 (111110101)
+13 + -23 = -10 (111110110)
+13 + -22 = -9 (111110111)
+13 + -21 = -8 (111111000)
+13 + -20 = -7 (111111001)
+13 + -19 = -6 (111111010)
+13 + -18 = -5 (111111011)
+13 + -17 = -4 (111111100)
+13 + -16 = -3 (111111101)
+13 + -15 = -2 (111111110)
+13 + -14 = -1 (111111111)
+13 + -13 = 0 (000000000)
+13 + -12 = 1 (000000001)
+13 + -11 = 2 (000000010)
+13 + -10 = 3 (000000011)
+13 + -9 = 4 (000000100)
+13 + -8 = 5 (000000101)
+13 + -7 = 6 (000000110)
+13 + -6 = 7 (000000111)
+13 + -5 = 8 (000001000)
+13 + -4 = 9 (000001001)
+13 + -3 = 10 (000001010)
+13 + -2 = 11 (000001011)
+13 + -1 = 12 (000001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + -32 = -18 (111101110)
+14 + -31 = -17 (111101111)
+14 + -30 = -16 (111110000)
+14 + -29 = -15 (111110001)
+14 + -28 = -14 (111110010)
+14 + -27 = -13 (111110011)
+14 + -26 = -12 (111110100)
+14 + -25 = -11 (111110101)
+14 + -24 = -10 (111110110)
+14 + -23 = -9 (111110111)
+14 + -22 = -8 (111111000)
+14 + -21 = -7 (111111001)
+14 + -20 = -6 (111111010)
+14 + -19 = -5 (111111011)
+14 + -18 = -4 (111111100)
+14 + -17 = -3 (111111101)
+14 + -16 = -2 (111111110)
+14 + -15 = -1 (111111111)
+14 + -14 = 0 (000000000)
+14 + -13 = 1 (000000001)
+14 + -12 = 2 (000000010)
+14 + -11 = 3 (000000011)
+14 + -10 = 4 (000000100)
+14 + -9 = 5 (000000101)
+14 + -8 = 6 (000000110)
+14 + -7 = 7 (000000111)
+14 + -6 = 8 (000001000)
+14 + -5 = 9 (000001001)
+14 + -4 = 10 (000001010)
+14 + -3 = 11 (000001011)
+14 + -2 = 12 (000001100)
+14 + -1 = 13 (000001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + -32 = -17 (111101111)
+15 + -31 = -16 (111110000)
+15 + -30 = -15 (111110001)
+15 + -29 = -14 (111110010)
+15 + -28 = -13 (111110011)
+15 + -27 = -12 (111110100)
+15 + -26 = -11 (111110101)
+15 + -25 = -10 (111110110)
+15 + -24 = -9 (111110111)
+15 + -23 = -8 (111111000)
+15 + -22 = -7 (111111001)
+15 + -21 = -6 (111111010)
+15 + -20 = -5 (111111011)
+15 + -19 = -4 (111111100)
+15 + -18 = -3 (111111101)
+15 + -17 = -2 (111111110)
+15 + -16 = -1 (111111111)
+15 + -15 = 0 (000000000)
+15 + -14 = 1 (000000001)
+15 + -13 = 2 (000000010)
+15 + -12 = 3 (000000011)
+15 + -11 = 4 (000000100)
+15 + -10 = 5 (000000101)
+15 + -9 = 6 (000000110)
+15 + -8 = 7 (000000111)
+15 + -7 = 8 (000001000)
+15 + -6 = 9 (000001001)
+15 + -5 = 10 (000001010)
+15 + -4 = 11 (000001011)
+15 + -3 = 12 (000001100)
+15 + -2 = 13 (000001101)
+15 + -1 = 14 (000001110)
+16 + 0 = 16 (000010000)
+16 + 1 = 17 (000010001)
+16 + 2 = 18 (000010010)
+16 + 3 = 19 (000010011)
+16 + 4 = 20 (000010100)
+16 + 5 = 21 (000010101)
+16 + 6 = 22 (000010110)
+16 + 7 = 23 (000010111)
+16 + 8 = 24 (000011000)
+16 + 9 = 25 (000011001)
+16 + 10 = 26 (000011010)
+16 + 11 = 27 (000011011)
+16 + 12 = 28 (000011100)
+16 + 13 = 29 (000011101)
+16 + 14 = 30 (000011110)
+16 + 15 = 31 (000011111)
+16 + 16 = 32 (000100000)
+16 + 17 = 33 (000100001)
+16 + 18 = 34 (000100010)
+16 + 19 = 35 (000100011)
+16 + 20 = 36 (000100100)
+16 + 21 = 37 (000100101)
+16 + 22 = 38 (000100110)
+16 + 23 = 39 (000100111)
+16 + 24 = 40 (000101000)
+16 + 25 = 41 (000101001)
+16 + 26 = 42 (000101010)
+16 + 27 = 43 (000101011)
+16 + 28 = 44 (000101100)
+16 + 29 = 45 (000101101)
+16 + 30 = 46 (000101110)
+16 + 31 = 47 (000101111)
+16 + -32 = -16 (111110000)
+16 + -31 = -15 (111110001)
+16 + -30 = -14 (111110010)
+16 + -29 = -13 (111110011)
+16 + -28 = -12 (111110100)
+16 + -27 = -11 (111110101)
+16 + -26 = -10 (111110110)
+16 + -25 = -9 (111110111)
+16 + -24 = -8 (111111000)
+16 + -23 = -7 (111111001)
+16 + -22 = -6 (111111010)
+16 + -21 = -5 (111111011)
+16 + -20 = -4 (111111100)
+16 + -19 = -3 (111111101)
+16 + -18 = -2 (111111110)
+16 + -17 = -1 (111111111)
+16 + -16 = 0 (000000000)
+16 + -15 = 1 (000000001)
+16 + -14 = 2 (000000010)
+16 + -13 = 3 (000000011)
+16 + -12 = 4 (000000100)
+16 + -11 = 5 (000000101)
+16 + -10 = 6 (000000110)
+16 + -9 = 7 (000000111)
+16 + -8 = 8 (000001000)
+16 + -7 = 9 (000001001)
+16 + -6 = 10 (000001010)
+16 + -5 = 11 (000001011)
+16 + -4 = 12 (000001100)
+16 + -3 = 13 (000001101)
+16 + -2 = 14 (000001110)
+16 + -1 = 15 (000001111)
+17 + 0 = 17 (000010001)
+17 + 1 = 18 (000010010)
+17 + 2 = 19 (000010011)
+17 + 3 = 20 (000010100)
+17 + 4 = 21 (000010101)
+17 + 5 = 22 (000010110)
+17 + 6 = 23 (000010111)
+17 + 7 = 24 (000011000)
+17 + 8 = 25 (000011001)
+17 + 9 = 26 (000011010)
+17 + 10 = 27 (000011011)
+17 + 11 = 28 (000011100)
+17 + 12 = 29 (000011101)
+17 + 13 = 30 (000011110)
+17 + 14 = 31 (000011111)
+17 + 15 = 32 (000100000)
+17 + 16 = 33 (000100001)
+17 + 17 = 34 (000100010)
+17 + 18 = 35 (000100011)
+17 + 19 = 36 (000100100)
+17 + 20 = 37 (000100101)
+17 + 21 = 38 (000100110)
+17 + 22 = 39 (000100111)
+17 + 23 = 40 (000101000)
+17 + 24 = 41 (000101001)
+17 + 25 = 42 (000101010)
+17 + 26 = 43 (000101011)
+17 + 27 = 44 (000101100)
+17 + 28 = 45 (000101101)
+17 + 29 = 46 (000101110)
+17 + 30 = 47 (000101111)
+17 + 31 = 48 (000110000)
+17 + -32 = -15 (111110001)
+17 + -31 = -14 (111110010)
+17 + -30 = -13 (111110011)
+17 + -29 = -12 (111110100)
+17 + -28 = -11 (111110101)
+17 + -27 = -10 (111110110)
+17 + -26 = -9 (111110111)
+17 + -25 = -8 (111111000)
+17 + -24 = -7 (111111001)
+17 + -23 = -6 (111111010)
+17 + -22 = -5 (111111011)
+17 + -21 = -4 (111111100)
+17 + -20 = -3 (111111101)
+17 + -19 = -2 (111111110)
+17 + -18 = -1 (111111111)
+17 + -17 = 0 (000000000)
+17 + -16 = 1 (000000001)
+17 + -15 = 2 (000000010)
+17 + -14 = 3 (000000011)
+17 + -13 = 4 (000000100)
+17 + -12 = 5 (000000101)
+17 + -11 = 6 (000000110)
+17 + -10 = 7 (000000111)
+17 + -9 = 8 (000001000)
+17 + -8 = 9 (000001001)
+17 + -7 = 10 (000001010)
+17 + -6 = 11 (000001011)
+17 + -5 = 12 (000001100)
+17 + -4 = 13 (000001101)
+17 + -3 = 14 (000001110)
+17 + -2 = 15 (000001111)
+17 + -1 = 16 (000010000)
+18 + 0 = 18 (000010010)
+18 + 1 = 19 (000010011)
+18 + 2 = 20 (000010100)
+18 + 3 = 21 (000010101)
+18 + 4 = 22 (000010110)
+18 + 5 = 23 (000010111)
+18 + 6 = 24 (000011000)
+18 + 7 = 25 (000011001)
+18 + 8 = 26 (000011010)
+18 + 9 = 27 (000011011)
+18 + 10 = 28 (000011100)
+18 + 11 = 29 (000011101)
+18 + 12 = 30 (000011110)
+18 + 13 = 31 (000011111)
+18 + 14 = 32 (000100000)
+18 + 15 = 33 (000100001)
+18 + 16 = 34 (000100010)
+18 + 17 = 35 (000100011)
+18 + 18 = 36 (000100100)
+18 + 19 = 37 (000100101)
+18 + 20 = 38 (000100110)
+18 + 21 = 39 (000100111)
+18 + 22 = 40 (000101000)
+18 + 23 = 41 (000101001)
+18 + 24 = 42 (000101010)
+18 + 25 = 43 (000101011)
+18 + 26 = 44 (000101100)
+18 + 27 = 45 (000101101)
+18 + 28 = 46 (000101110)
+18 + 29 = 47 (000101111)
+18 + 30 = 48 (000110000)
+18 + 31 = 49 (000110001)
+18 + -32 = -14 (111110010)
+18 + -31 = -13 (111110011)
+18 + -30 = -12 (111110100)
+18 + -29 = -11 (111110101)
+18 + -28 = -10 (111110110)
+18 + -27 = -9 (111110111)
+18 + -26 = -8 (111111000)
+18 + -25 = -7 (111111001)
+18 + -24 = -6 (111111010)
+18 + -23 = -5 (111111011)
+18 + -22 = -4 (111111100)
+18 + -21 = -3 (111111101)
+18 + -20 = -2 (111111110)
+18 + -19 = -1 (111111111)
+18 + -18 = 0 (000000000)
+18 + -17 = 1 (000000001)
+18 + -16 = 2 (000000010)
+18 + -15 = 3 (000000011)
+18 + -14 = 4 (000000100)
+18 + -13 = 5 (000000101)
+18 + -12 = 6 (000000110)
+18 + -11 = 7 (000000111)
+18 + -10 = 8 (000001000)
+18 + -9 = 9 (000001001)
+18 + -8 = 10 (000001010)
+18 + -7 = 11 (000001011)
+18 + -6 = 12 (000001100)
+18 + -5 = 13 (000001101)
+18 + -4 = 14 (000001110)
+18 + -3 = 15 (000001111)
+18 + -2 = 16 (000010000)
+18 + -1 = 17 (000010001)
+19 + 0 = 19 (000010011)
+19 + 1 = 20 (000010100)
+19 + 2 = 21 (000010101)
+19 + 3 = 22 (000010110)
+19 + 4 = 23 (000010111)
+19 + 5 = 24 (000011000)
+19 + 6 = 25 (000011001)
+19 + 7 = 26 (000011010)
+19 + 8 = 27 (000011011)
+19 + 9 = 28 (000011100)
+19 + 10 = 29 (000011101)
+19 + 11 = 30 (000011110)
+19 + 12 = 31 (000011111)
+19 + 13 = 32 (000100000)
+19 + 14 = 33 (000100001)
+19 + 15 = 34 (000100010)
+19 + 16 = 35 (000100011)
+19 + 17 = 36 (000100100)
+19 + 18 = 37 (000100101)
+19 + 19 = 38 (000100110)
+19 + 20 = 39 (000100111)
+19 + 21 = 40 (000101000)
+19 + 22 = 41 (000101001)
+19 + 23 = 42 (000101010)
+19 + 24 = 43 (000101011)
+19 + 25 = 44 (000101100)
+19 + 26 = 45 (000101101)
+19 + 27 = 46 (000101110)
+19 + 28 = 47 (000101111)
+19 + 29 = 48 (000110000)
+19 + 30 = 49 (000110001)
+19 + 31 = 50 (000110010)
+19 + -32 = -13 (111110011)
+19 + -31 = -12 (111110100)
+19 + -30 = -11 (111110101)
+19 + -29 = -10 (111110110)
+19 + -28 = -9 (111110111)
+19 + -27 = -8 (111111000)
+19 + -26 = -7 (111111001)
+19 + -25 = -6 (111111010)
+19 + -24 = -5 (111111011)
+19 + -23 = -4 (111111100)
+19 + -22 = -3 (111111101)
+19 + -21 = -2 (111111110)
+19 + -20 = -1 (111111111)
+19 + -19 = 0 (000000000)
+19 + -18 = 1 (000000001)
+19 + -17 = 2 (000000010)
+19 + -16 = 3 (000000011)
+19 + -15 = 4 (000000100)
+19 + -14 = 5 (000000101)
+19 + -13 = 6 (000000110)
+19 + -12 = 7 (000000111)
+19 + -11 = 8 (000001000)
+19 + -10 = 9 (000001001)
+19 + -9 = 10 (000001010)
+19 + -8 = 11 (000001011)
+19 + -7 = 12 (000001100)
+19 + -6 = 13 (000001101)
+19 + -5 = 14 (000001110)
+19 + -4 = 15 (000001111)
+19 + -3 = 16 (000010000)
+19 + -2 = 17 (000010001)
+19 + -1 = 18 (000010010)
+20 + 0 = 20 (000010100)
+20 + 1 = 21 (000010101)
+20 + 2 = 22 (000010110)
+20 + 3 = 23 (000010111)
+20 + 4 = 24 (000011000)
+20 + 5 = 25 (000011001)
+20 + 6 = 26 (000011010)
+20 + 7 = 27 (000011011)
+20 + 8 = 28 (000011100)
+20 + 9 = 29 (000011101)
+20 + 10 = 30 (000011110)
+20 + 11 = 31 (000011111)
+20 + 12 = 32 (000100000)
+20 + 13 = 33 (000100001)
+20 + 14 = 34 (000100010)
+20 + 15 = 35 (000100011)
+20 + 16 = 36 (000100100)
+20 + 17 = 37 (000100101)
+20 + 18 = 38 (000100110)
+20 + 19 = 39 (000100111)
+20 + 20 = 40 (000101000)
+20 + 21 = 41 (000101001)
+20 + 22 = 42 (000101010)
+20 + 23 = 43 (000101011)
+20 + 24 = 44 (000101100)
+20 + 25 = 45 (000101101)
+20 + 26 = 46 (000101110)
+20 + 27 = 47 (000101111)
+20 + 28 = 48 (000110000)
+20 + 29 = 49 (000110001)
+20 + 30 = 50 (000110010)
+20 + 31 = 51 (000110011)
+20 + -32 = -12 (111110100)
+20 + -31 = -11 (111110101)
+20 + -30 = -10 (111110110)
+20 + -29 = -9 (111110111)
+20 + -28 = -8 (111111000)
+20 + -27 = -7 (111111001)
+20 + -26 = -6 (111111010)
+20 + -25 = -5 (111111011)
+20 + -24 = -4 (111111100)
+20 + -23 = -3 (111111101)
+20 + -22 = -2 (111111110)
+20 + -21 = -1 (111111111)
+20 + -20 = 0 (000000000)
+20 + -19 = 1 (000000001)
+20 + -18 = 2 (000000010)
+20 + -17 = 3 (000000011)
+20 + -16 = 4 (000000100)
+20 + -15 = 5 (000000101)
+20 + -14 = 6 (000000110)
+20 + -13 = 7 (000000111)
+20 + -12 = 8 (000001000)
+20 + -11 = 9 (000001001)
+20 + -10 = 10 (000001010)
+20 + -9 = 11 (000001011)
+20 + -8 = 12 (000001100)
+20 + -7 = 13 (000001101)
+20 + -6 = 14 (000001110)
+20 + -5 = 15 (000001111)
+20 + -4 = 16 (000010000)
+20 + -3 = 17 (000010001)
+20 + -2 = 18 (000010010)
+20 + -1 = 19 (000010011)
+21 + 0 = 21 (000010101)
+21 + 1 = 22 (000010110)
+21 + 2 = 23 (000010111)
+21 + 3 = 24 (000011000)
+21 + 4 = 25 (000011001)
+21 + 5 = 26 (000011010)
+21 + 6 = 27 (000011011)
+21 + 7 = 28 (000011100)
+21 + 8 = 29 (000011101)
+21 + 9 = 30 (000011110)
+21 + 10 = 31 (000011111)
+21 + 11 = 32 (000100000)
+21 + 12 = 33 (000100001)
+21 + 13 = 34 (000100010)
+21 + 14 = 35 (000100011)
+21 + 15 = 36 (000100100)
+21 + 16 = 37 (000100101)
+21 + 17 = 38 (000100110)
+21 + 18 = 39 (000100111)
+21 + 19 = 40 (000101000)
+21 + 20 = 41 (000101001)
+21 + 21 = 42 (000101010)
+21 + 22 = 43 (000101011)
+21 + 23 = 44 (000101100)
+21 + 24 = 45 (000101101)
+21 + 25 = 46 (000101110)
+21 + 26 = 47 (000101111)
+21 + 27 = 48 (000110000)
+21 + 28 = 49 (000110001)
+21 + 29 = 50 (000110010)
+21 + 30 = 51 (000110011)
+21 + 31 = 52 (000110100)
+21 + -32 = -11 (111110101)
+21 + -31 = -10 (111110110)
+21 + -30 = -9 (111110111)
+21 + -29 = -8 (111111000)
+21 + -28 = -7 (111111001)
+21 + -27 = -6 (111111010)
+21 + -26 = -5 (111111011)
+21 + -25 = -4 (111111100)
+21 + -24 = -3 (111111101)
+21 + -23 = -2 (111111110)
+21 + -22 = -1 (111111111)
+21 + -21 = 0 (000000000)
+21 + -20 = 1 (000000001)
+21 + -19 = 2 (000000010)
+21 + -18 = 3 (000000011)
+21 + -17 = 4 (000000100)
+21 + -16 = 5 (000000101)
+21 + -15 = 6 (000000110)
+21 + -14 = 7 (000000111)
+21 + -13 = 8 (000001000)
+21 + -12 = 9 (000001001)
+21 + -11 = 10 (000001010)
+21 + -10 = 11 (000001011)
+21 + -9 = 12 (000001100)
+21 + -8 = 13 (000001101)
+21 + -7 = 14 (000001110)
+21 + -6 = 15 (000001111)
+21 + -5 = 16 (000010000)
+21 + -4 = 17 (000010001)
+21 + -3 = 18 (000010010)
+21 + -2 = 19 (000010011)
+21 + -1 = 20 (000010100)
+22 + 0 = 22 (000010110)
+22 + 1 = 23 (000010111)
+22 + 2 = 24 (000011000)
+22 + 3 = 25 (000011001)
+22 + 4 = 26 (000011010)
+22 + 5 = 27 (000011011)
+22 + 6 = 28 (000011100)
+22 + 7 = 29 (000011101)
+22 + 8 = 30 (000011110)
+22 + 9 = 31 (000011111)
+22 + 10 = 32 (000100000)
+22 + 11 = 33 (000100001)
+22 + 12 = 34 (000100010)
+22 + 13 = 35 (000100011)
+22 + 14 = 36 (000100100)
+22 + 15 = 37 (000100101)
+22 + 16 = 38 (000100110)
+22 + 17 = 39 (000100111)
+22 + 18 = 40 (000101000)
+22 + 19 = 41 (000101001)
+22 + 20 = 42 (000101010)
+22 + 21 = 43 (000101011)
+22 + 22 = 44 (000101100)
+22 + 23 = 45 (000101101)
+22 + 24 = 46 (000101110)
+22 + 25 = 47 (000101111)
+22 + 26 = 48 (000110000)
+22 + 27 = 49 (000110001)
+22 + 28 = 50 (000110010)
+22 + 29 = 51 (000110011)
+22 + 30 = 52 (000110100)
+22 + 31 = 53 (000110101)
+22 + -32 = -10 (111110110)
+22 + -31 = -9 (111110111)
+22 + -30 = -8 (111111000)
+22 + -29 = -7 (111111001)
+22 + -28 = -6 (111111010)
+22 + -27 = -5 (111111011)
+22 + -26 = -4 (111111100)
+22 + -25 = -3 (111111101)
+22 + -24 = -2 (111111110)
+22 + -23 = -1 (111111111)
+22 + -22 = 0 (000000000)
+22 + -21 = 1 (000000001)
+22 + -20 = 2 (000000010)
+22 + -19 = 3 (000000011)
+22 + -18 = 4 (000000100)
+22 + -17 = 5 (000000101)
+22 + -16 = 6 (000000110)
+22 + -15 = 7 (000000111)
+22 + -14 = 8 (000001000)
+22 + -13 = 9 (000001001)
+22 + -12 = 10 (000001010)
+22 + -11 = 11 (000001011)
+22 + -10 = 12 (000001100)
+22 + -9 = 13 (000001101)
+22 + -8 = 14 (000001110)
+22 + -7 = 15 (000001111)
+22 + -6 = 16 (000010000)
+22 + -5 = 17 (000010001)
+22 + -4 = 18 (000010010)
+22 + -3 = 19 (000010011)
+22 + -2 = 20 (000010100)
+22 + -1 = 21 (000010101)
+23 + 0 = 23 (000010111)
+23 + 1 = 24 (000011000)
+23 + 2 = 25 (000011001)
+23 + 3 = 26 (000011010)
+23 + 4 = 27 (000011011)
+23 + 5 = 28 (000011100)
+23 + 6 = 29 (000011101)
+23 + 7 = 30 (000011110)
+23 + 8 = 31 (000011111)
+23 + 9 = 32 (000100000)
+23 + 10 = 33 (000100001)
+23 + 11 = 34 (000100010)
+23 + 12 = 35 (000100011)
+23 + 13 = 36 (000100100)
+23 + 14 = 37 (000100101)
+23 + 15 = 38 (000100110)
+23 + 16 = 39 (000100111)
+23 + 17 = 40 (000101000)
+23 + 18 = 41 (000101001)
+23 + 19 = 42 (000101010)
+23 + 20 = 43 (000101011)
+23 + 21 = 44 (000101100)
+23 + 22 = 45 (000101101)
+23 + 23 = 46 (000101110)
+23 + 24 = 47 (000101111)
+23 + 25 = 48 (000110000)
+23 + 26 = 49 (000110001)
+23 + 27 = 50 (000110010)
+23 + 28 = 51 (000110011)
+23 + 29 = 52 (000110100)
+23 + 30 = 53 (000110101)
+23 + 31 = 54 (000110110)
+23 + -32 = -9 (111110111)
+23 + -31 = -8 (111111000)
+23 + -30 = -7 (111111001)
+23 + -29 = -6 (111111010)
+23 + -28 = -5 (111111011)
+23 + -27 = -4 (111111100)
+23 + -26 = -3 (111111101)
+23 + -25 = -2 (111111110)
+23 + -24 = -1 (111111111)
+23 + -23 = 0 (000000000)
+23 + -22 = 1 (000000001)
+23 + -21 = 2 (000000010)
+23 + -20 = 3 (000000011)
+23 + -19 = 4 (000000100)
+23 + -18 = 5 (000000101)
+23 + -17 = 6 (000000110)
+23 + -16 = 7 (000000111)
+23 + -15 = 8 (000001000)
+23 + -14 = 9 (000001001)
+23 + -13 = 10 (000001010)
+23 + -12 = 11 (000001011)
+23 + -11 = 12 (000001100)
+23 + -10 = 13 (000001101)
+23 + -9 = 14 (000001110)
+23 + -8 = 15 (000001111)
+23 + -7 = 16 (000010000)
+23 + -6 = 17 (000010001)
+23 + -5 = 18 (000010010)
+23 + -4 = 19 (000010011)
+23 + -3 = 20 (000010100)
+23 + -2 = 21 (000010101)
+23 + -1 = 22 (000010110)
+24 + 0 = 24 (000011000)
+24 + 1 = 25 (000011001)
+24 + 2 = 26 (000011010)
+24 + 3 = 27 (000011011)
+24 + 4 = 28 (000011100)
+24 + 5 = 29 (000011101)
+24 + 6 = 30 (000011110)
+24 + 7 = 31 (000011111)
+24 + 8 = 32 (000100000)
+24 + 9 = 33 (000100001)
+24 + 10 = 34 (000100010)
+24 + 11 = 35 (000100011)
+24 + 12 = 36 (000100100)
+24 + 13 = 37 (000100101)
+24 + 14 = 38 (000100110)
+24 + 15 = 39 (000100111)
+24 + 16 = 40 (000101000)
+24 + 17 = 41 (000101001)
+24 + 18 = 42 (000101010)
+24 + 19 = 43 (000101011)
+24 + 20 = 44 (000101100)
+24 + 21 = 45 (000101101)
+24 + 22 = 46 (000101110)
+24 + 23 = 47 (000101111)
+24 + 24 = 48 (000110000)
+24 + 25 = 49 (000110001)
+24 + 26 = 50 (000110010)
+24 + 27 = 51 (000110011)
+24 + 28 = 52 (000110100)
+24 + 29 = 53 (000110101)
+24 + 30 = 54 (000110110)
+24 + 31 = 55 (000110111)
+24 + -32 = -8 (111111000)
+24 + -31 = -7 (111111001)
+24 + -30 = -6 (111111010)
+24 + -29 = -5 (111111011)
+24 + -28 = -4 (111111100)
+24 + -27 = -3 (111111101)
+24 + -26 = -2 (111111110)
+24 + -25 = -1 (111111111)
+24 + -24 = 0 (000000000)
+24 + -23 = 1 (000000001)
+24 + -22 = 2 (000000010)
+24 + -21 = 3 (000000011)
+24 + -20 = 4 (000000100)
+24 + -19 = 5 (000000101)
+24 + -18 = 6 (000000110)
+24 + -17 = 7 (000000111)
+24 + -16 = 8 (000001000)
+24 + -15 = 9 (000001001)
+24 + -14 = 10 (000001010)
+24 + -13 = 11 (000001011)
+24 + -12 = 12 (000001100)
+24 + -11 = 13 (000001101)
+24 + -10 = 14 (000001110)
+24 + -9 = 15 (000001111)
+24 + -8 = 16 (000010000)
+24 + -7 = 17 (000010001)
+24 + -6 = 18 (000010010)
+24 + -5 = 19 (000010011)
+24 + -4 = 20 (000010100)
+24 + -3 = 21 (000010101)
+24 + -2 = 22 (000010110)
+24 + -1 = 23 (000010111)
+25 + 0 = 25 (000011001)
+25 + 1 = 26 (000011010)
+25 + 2 = 27 (000011011)
+25 + 3 = 28 (000011100)
+25 + 4 = 29 (000011101)
+25 + 5 = 30 (000011110)
+25 + 6 = 31 (000011111)
+25 + 7 = 32 (000100000)
+25 + 8 = 33 (000100001)
+25 + 9 = 34 (000100010)
+25 + 10 = 35 (000100011)
+25 + 11 = 36 (000100100)
+25 + 12 = 37 (000100101)
+25 + 13 = 38 (000100110)
+25 + 14 = 39 (000100111)
+25 + 15 = 40 (000101000)
+25 + 16 = 41 (000101001)
+25 + 17 = 42 (000101010)
+25 + 18 = 43 (000101011)
+25 + 19 = 44 (000101100)
+25 + 20 = 45 (000101101)
+25 + 21 = 46 (000101110)
+25 + 22 = 47 (000101111)
+25 + 23 = 48 (000110000)
+25 + 24 = 49 (000110001)
+25 + 25 = 50 (000110010)
+25 + 26 = 51 (000110011)
+25 + 27 = 52 (000110100)
+25 + 28 = 53 (000110101)
+25 + 29 = 54 (000110110)
+25 + 30 = 55 (000110111)
+25 + 31 = 56 (000111000)
+25 + -32 = -7 (111111001)
+25 + -31 = -6 (111111010)
+25 + -30 = -5 (111111011)
+25 + -29 = -4 (111111100)
+25 + -28 = -3 (111111101)
+25 + -27 = -2 (111111110)
+25 + -26 = -1 (111111111)
+25 + -25 = 0 (000000000)
+25 + -24 = 1 (000000001)
+25 + -23 = 2 (000000010)
+25 + -22 = 3 (000000011)
+25 + -21 = 4 (000000100)
+25 + -20 = 5 (000000101)
+25 + -19 = 6 (000000110)
+25 + -18 = 7 (000000111)
+25 + -17 = 8 (000001000)
+25 + -16 = 9 (000001001)
+25 + -15 = 10 (000001010)
+25 + -14 = 11 (000001011)
+25 + -13 = 12 (000001100)
+25 + -12 = 13 (000001101)
+25 + -11 = 14 (000001110)
+25 + -10 = 15 (000001111)
+25 + -9 = 16 (000010000)
+25 + -8 = 17 (000010001)
+25 + -7 = 18 (000010010)
+25 + -6 = 19 (000010011)
+25 + -5 = 20 (000010100)
+25 + -4 = 21 (000010101)
+25 + -3 = 22 (000010110)
+25 + -2 = 23 (000010111)
+25 + -1 = 24 (000011000)
+26 + 0 = 26 (000011010)
+26 + 1 = 27 (000011011)
+26 + 2 = 28 (000011100)
+26 + 3 = 29 (000011101)
+26 + 4 = 30 (000011110)
+26 + 5 = 31 (000011111)
+26 + 6 = 32 (000100000)
+26 + 7 = 33 (000100001)
+26 + 8 = 34 (000100010)
+26 + 9 = 35 (000100011)
+26 + 10 = 36 (000100100)
+26 + 11 = 37 (000100101)
+26 + 12 = 38 (000100110)
+26 + 13 = 39 (000100111)
+26 + 14 = 40 (000101000)
+26 + 15 = 41 (000101001)
+26 + 16 = 42 (000101010)
+26 + 17 = 43 (000101011)
+26 + 18 = 44 (000101100)
+26 + 19 = 45 (000101101)
+26 + 20 = 46 (000101110)
+26 + 21 = 47 (000101111)
+26 + 22 = 48 (000110000)
+26 + 23 = 49 (000110001)
+26 + 24 = 50 (000110010)
+26 + 25 = 51 (000110011)
+26 + 26 = 52 (000110100)
+26 + 27 = 53 (000110101)
+26 + 28 = 54 (000110110)
+26 + 29 = 55 (000110111)
+26 + 30 = 56 (000111000)
+26 + 31 = 57 (000111001)
+26 + -32 = -6 (111111010)
+26 + -31 = -5 (111111011)
+26 + -30 = -4 (111111100)
+26 + -29 = -3 (111111101)
+26 + -28 = -2 (111111110)
+26 + -27 = -1 (111111111)
+26 + -26 = 0 (000000000)
+26 + -25 = 1 (000000001)
+26 + -24 = 2 (000000010)
+26 + -23 = 3 (000000011)
+26 + -22 = 4 (000000100)
+26 + -21 = 5 (000000101)
+26 + -20 = 6 (000000110)
+26 + -19 = 7 (000000111)
+26 + -18 = 8 (000001000)
+26 + -17 = 9 (000001001)
+26 + -16 = 10 (000001010)
+26 + -15 = 11 (000001011)
+26 + -14 = 12 (000001100)
+26 + -13 = 13 (000001101)
+26 + -12 = 14 (000001110)
+26 + -11 = 15 (000001111)
+26 + -10 = 16 (000010000)
+26 + -9 = 17 (000010001)
+26 + -8 = 18 (000010010)
+26 + -7 = 19 (000010011)
+26 + -6 = 20 (000010100)
+26 + -5 = 21 (000010101)
+26 + -4 = 22 (000010110)
+26 + -3 = 23 (000010111)
+26 + -2 = 24 (000011000)
+26 + -1 = 25 (000011001)
+27 + 0 = 27 (000011011)
+27 + 1 = 28 (000011100)
+27 + 2 = 29 (000011101)
+27 + 3 = 30 (000011110)
+27 + 4 = 31 (000011111)
+27 + 5 = 32 (000100000)
+27 + 6 = 33 (000100001)
+27 + 7 = 34 (000100010)
+27 + 8 = 35 (000100011)
+27 + 9 = 36 (000100100)
+27 + 10 = 37 (000100101)
+27 + 11 = 38 (000100110)
+27 + 12 = 39 (000100111)
+27 + 13 = 40 (000101000)
+27 + 14 = 41 (000101001)
+27 + 15 = 42 (000101010)
+27 + 16 = 43 (000101011)
+27 + 17 = 44 (000101100)
+27 + 18 = 45 (000101101)
+27 + 19 = 46 (000101110)
+27 + 20 = 47 (000101111)
+27 + 21 = 48 (000110000)
+27 + 22 = 49 (000110001)
+27 + 23 = 50 (000110010)
+27 + 24 = 51 (000110011)
+27 + 25 = 52 (000110100)
+27 + 26 = 53 (000110101)
+27 + 27 = 54 (000110110)
+27 + 28 = 55 (000110111)
+27 + 29 = 56 (000111000)
+27 + 30 = 57 (000111001)
+27 + 31 = 58 (000111010)
+27 + -32 = -5 (111111011)
+27 + -31 = -4 (111111100)
+27 + -30 = -3 (111111101)
+27 + -29 = -2 (111111110)
+27 + -28 = -1 (111111111)
+27 + -27 = 0 (000000000)
+27 + -26 = 1 (000000001)
+27 + -25 = 2 (000000010)
+27 + -24 = 3 (000000011)
+27 + -23 = 4 (000000100)
+27 + -22 = 5 (000000101)
+27 + -21 = 6 (000000110)
+27 + -20 = 7 (000000111)
+27 + -19 = 8 (000001000)
+27 + -18 = 9 (000001001)
+27 + -17 = 10 (000001010)
+27 + -16 = 11 (000001011)
+27 + -15 = 12 (000001100)
+27 + -14 = 13 (000001101)
+27 + -13 = 14 (000001110)
+27 + -12 = 15 (000001111)
+27 + -11 = 16 (000010000)
+27 + -10 = 17 (000010001)
+27 + -9 = 18 (000010010)
+27 + -8 = 19 (000010011)
+27 + -7 = 20 (000010100)
+27 + -6 = 21 (000010101)
+27 + -5 = 22 (000010110)
+27 + -4 = 23 (000010111)
+27 + -3 = 24 (000011000)
+27 + -2 = 25 (000011001)
+27 + -1 = 26 (000011010)
+28 + 0 = 28 (000011100)
+28 + 1 = 29 (000011101)
+28 + 2 = 30 (000011110)
+28 + 3 = 31 (000011111)
+28 + 4 = 32 (000100000)
+28 + 5 = 33 (000100001)
+28 + 6 = 34 (000100010)
+28 + 7 = 35 (000100011)
+28 + 8 = 36 (000100100)
+28 + 9 = 37 (000100101)
+28 + 10 = 38 (000100110)
+28 + 11 = 39 (000100111)
+28 + 12 = 40 (000101000)
+28 + 13 = 41 (000101001)
+28 + 14 = 42 (000101010)
+28 + 15 = 43 (000101011)
+28 + 16 = 44 (000101100)
+28 + 17 = 45 (000101101)
+28 + 18 = 46 (000101110)
+28 + 19 = 47 (000101111)
+28 + 20 = 48 (000110000)
+28 + 21 = 49 (000110001)
+28 + 22 = 50 (000110010)
+28 + 23 = 51 (000110011)
+28 + 24 = 52 (000110100)
+28 + 25 = 53 (000110101)
+28 + 26 = 54 (000110110)
+28 + 27 = 55 (000110111)
+28 + 28 = 56 (000111000)
+28 + 29 = 57 (000111001)
+28 + 30 = 58 (000111010)
+28 + 31 = 59 (000111011)
+28 + -32 = -4 (111111100)
+28 + -31 = -3 (111111101)
+28 + -30 = -2 (111111110)
+28 + -29 = -1 (111111111)
+28 + -28 = 0 (000000000)
+28 + -27 = 1 (000000001)
+28 + -26 = 2 (000000010)
+28 + -25 = 3 (000000011)
+28 + -24 = 4 (000000100)
+28 + -23 = 5 (000000101)
+28 + -22 = 6 (000000110)
+28 + -21 = 7 (000000111)
+28 + -20 = 8 (000001000)
+28 + -19 = 9 (000001001)
+28 + -18 = 10 (000001010)
+28 + -17 = 11 (000001011)
+28 + -16 = 12 (000001100)
+28 + -15 = 13 (000001101)
+28 + -14 = 14 (000001110)
+28 + -13 = 15 (000001111)
+28 + -12 = 16 (000010000)
+28 + -11 = 17 (000010001)
+28 + -10 = 18 (000010010)
+28 + -9 = 19 (000010011)
+28 + -8 = 20 (000010100)
+28 + -7 = 21 (000010101)
+28 + -6 = 22 (000010110)
+28 + -5 = 23 (000010111)
+28 + -4 = 24 (000011000)
+28 + -3 = 25 (000011001)
+28 + -2 = 26 (000011010)
+28 + -1 = 27 (000011011)
+29 + 0 = 29 (000011101)
+29 + 1 = 30 (000011110)
+29 + 2 = 31 (000011111)
+29 + 3 = 32 (000100000)
+29 + 4 = 33 (000100001)
+29 + 5 = 34 (000100010)
+29 + 6 = 35 (000100011)
+29 + 7 = 36 (000100100)
+29 + 8 = 37 (000100101)
+29 + 9 = 38 (000100110)
+29 + 10 = 39 (000100111)
+29 + 11 = 40 (000101000)
+29 + 12 = 41 (000101001)
+29 + 13 = 42 (000101010)
+29 + 14 = 43 (000101011)
+29 + 15 = 44 (000101100)
+29 + 16 = 45 (000101101)
+29 + 17 = 46 (000101110)
+29 + 18 = 47 (000101111)
+29 + 19 = 48 (000110000)
+29 + 20 = 49 (000110001)
+29 + 21 = 50 (000110010)
+29 + 22 = 51 (000110011)
+29 + 23 = 52 (000110100)
+29 + 24 = 53 (000110101)
+29 + 25 = 54 (000110110)
+29 + 26 = 55 (000110111)
+29 + 27 = 56 (000111000)
+29 + 28 = 57 (000111001)
+29 + 29 = 58 (000111010)
+29 + 30 = 59 (000111011)
+29 + 31 = 60 (000111100)
+29 + -32 = -3 (111111101)
+29 + -31 = -2 (111111110)
+29 + -30 = -1 (111111111)
+29 + -29 = 0 (000000000)
+29 + -28 = 1 (000000001)
+29 + -27 = 2 (000000010)
+29 + -26 = 3 (000000011)
+29 + -25 = 4 (000000100)
+29 + -24 = 5 (000000101)
+29 + -23 = 6 (000000110)
+29 + -22 = 7 (000000111)
+29 + -21 = 8 (000001000)
+29 + -20 = 9 (000001001)
+29 + -19 = 10 (000001010)
+29 + -18 = 11 (000001011)
+29 + -17 = 12 (000001100)
+29 + -16 = 13 (000001101)
+29 + -15 = 14 (000001110)
+29 + -14 = 15 (000001111)
+29 + -13 = 16 (000010000)
+29 + -12 = 17 (000010001)
+29 + -11 = 18 (000010010)
+29 + -10 = 19 (000010011)
+29 + -9 = 20 (000010100)
+29 + -8 = 21 (000010101)
+29 + -7 = 22 (000010110)
+29 + -6 = 23 (000010111)
+29 + -5 = 24 (000011000)
+29 + -4 = 25 (000011001)
+29 + -3 = 26 (000011010)
+29 + -2 = 27 (000011011)
+29 + -1 = 28 (000011100)
+30 + 0 = 30 (000011110)
+30 + 1 = 31 (000011111)
+30 + 2 = 32 (000100000)
+30 + 3 = 33 (000100001)
+30 + 4 = 34 (000100010)
+30 + 5 = 35 (000100011)
+30 + 6 = 36 (000100100)
+30 + 7 = 37 (000100101)
+30 + 8 = 38 (000100110)
+30 + 9 = 39 (000100111)
+30 + 10 = 40 (000101000)
+30 + 11 = 41 (000101001)
+30 + 12 = 42 (000101010)
+30 + 13 = 43 (000101011)
+30 + 14 = 44 (000101100)
+30 + 15 = 45 (000101101)
+30 + 16 = 46 (000101110)
+30 + 17 = 47 (000101111)
+30 + 18 = 48 (000110000)
+30 + 19 = 49 (000110001)
+30 + 20 = 50 (000110010)
+30 + 21 = 51 (000110011)
+30 + 22 = 52 (000110100)
+30 + 23 = 53 (000110101)
+30 + 24 = 54 (000110110)
+30 + 25 = 55 (000110111)
+30 + 26 = 56 (000111000)
+30 + 27 = 57 (000111001)
+30 + 28 = 58 (000111010)
+30 + 29 = 59 (000111011)
+30 + 30 = 60 (000111100)
+30 + 31 = 61 (000111101)
+30 + -32 = -2 (111111110)
+30 + -31 = -1 (111111111)
+30 + -30 = 0 (000000000)
+30 + -29 = 1 (000000001)
+30 + -28 = 2 (000000010)
+30 + -27 = 3 (000000011)
+30 + -26 = 4 (000000100)
+30 + -25 = 5 (000000101)
+30 + -24 = 6 (000000110)
+30 + -23 = 7 (000000111)
+30 + -22 = 8 (000001000)
+30 + -21 = 9 (000001001)
+30 + -20 = 10 (000001010)
+30 + -19 = 11 (000001011)
+30 + -18 = 12 (000001100)
+30 + -17 = 13 (000001101)
+30 + -16 = 14 (000001110)
+30 + -15 = 15 (000001111)
+30 + -14 = 16 (000010000)
+30 + -13 = 17 (000010001)
+30 + -12 = 18 (000010010)
+30 + -11 = 19 (000010011)
+30 + -10 = 20 (000010100)
+30 + -9 = 21 (000010101)
+30 + -8 = 22 (000010110)
+30 + -7 = 23 (000010111)
+30 + -6 = 24 (000011000)
+30 + -5 = 25 (000011001)
+30 + -4 = 26 (000011010)
+30 + -3 = 27 (000011011)
+30 + -2 = 28 (000011100)
+30 + -1 = 29 (000011101)
+31 + 0 = 31 (000011111)
+31 + 1 = 32 (000100000)
+31 + 2 = 33 (000100001)
+31 + 3 = 34 (000100010)
+31 + 4 = 35 (000100011)
+31 + 5 = 36 (000100100)
+31 + 6 = 37 (000100101)
+31 + 7 = 38 (000100110)
+31 + 8 = 39 (000100111)
+31 + 9 = 40 (000101000)
+31 + 10 = 41 (000101001)
+31 + 11 = 42 (000101010)
+31 + 12 = 43 (000101011)
+31 + 13 = 44 (000101100)
+31 + 14 = 45 (000101101)
+31 + 15 = 46 (000101110)
+31 + 16 = 47 (000101111)
+31 + 17 = 48 (000110000)
+31 + 18 = 49 (000110001)
+31 + 19 = 50 (000110010)
+31 + 20 = 51 (000110011)
+31 + 21 = 52 (000110100)
+31 + 22 = 53 (000110101)
+31 + 23 = 54 (000110110)
+31 + 24 = 55 (000110111)
+31 + 25 = 56 (000111000)
+31 + 26 = 57 (000111001)
+31 + 27 = 58 (000111010)
+31 + 28 = 59 (000111011)
+31 + 29 = 60 (000111100)
+31 + 30 = 61 (000111101)
+31 + 31 = 62 (000111110)
+31 + -32 = -1 (111111111)
+31 + -31 = 0 (000000000)
+31 + -30 = 1 (000000001)
+31 + -29 = 2 (000000010)
+31 + -28 = 3 (000000011)
+31 + -27 = 4 (000000100)
+31 + -26 = 5 (000000101)
+31 + -25 = 6 (000000110)
+31 + -24 = 7 (000000111)
+31 + -23 = 8 (000001000)
+31 + -22 = 9 (000001001)
+31 + -21 = 10 (000001010)
+31 + -20 = 11 (000001011)
+31 + -19 = 12 (000001100)
+31 + -18 = 13 (000001101)
+31 + -17 = 14 (000001110)
+31 + -16 = 15 (000001111)
+31 + -15 = 16 (000010000)
+31 + -14 = 17 (000010001)
+31 + -13 = 18 (000010010)
+31 + -12 = 19 (000010011)
+31 + -11 = 20 (000010100)
+31 + -10 = 21 (000010101)
+31 + -9 = 22 (000010110)
+31 + -8 = 23 (000010111)
+31 + -7 = 24 (000011000)
+31 + -6 = 25 (000011001)
+31 + -5 = 26 (000011010)
+31 + -4 = 27 (000011011)
+31 + -3 = 28 (000011100)
+31 + -2 = 29 (000011101)
+31 + -1 = 30 (000011110)
+-32 + 0 = -32 (111100000)
+-32 + 1 = -31 (111100001)
+-32 + 2 = -30 (111100010)
+-32 + 3 = -29 (111100011)
+-32 + 4 = -28 (111100100)
+-32 + 5 = -27 (111100101)
+-32 + 6 = -26 (111100110)
+-32 + 7 = -25 (111100111)
+-32 + 8 = -24 (111101000)
+-32 + 9 = -23 (111101001)
+-32 + 10 = -22 (111101010)
+-32 + 11 = -21 (111101011)
+-32 + 12 = -20 (111101100)
+-32 + 13 = -19 (111101101)
+-32 + 14 = -18 (111101110)
+-32 + 15 = -17 (111101111)
+-32 + 16 = -16 (111110000)
+-32 + 17 = -15 (111110001)
+-32 + 18 = -14 (111110010)
+-32 + 19 = -13 (111110011)
+-32 + 20 = -12 (111110100)
+-32 + 21 = -11 (111110101)
+-32 + 22 = -10 (111110110)
+-32 + 23 = -9 (111110111)
+-32 + 24 = -8 (111111000)
+-32 + 25 = -7 (111111001)
+-32 + 26 = -6 (111111010)
+-32 + 27 = -5 (111111011)
+-32 + 28 = -4 (111111100)
+-32 + 29 = -3 (111111101)
+-32 + 30 = -2 (111111110)
+-32 + 31 = -1 (111111111)
+-32 + -32 = -64 (111000000)
+-32 + -31 = -63 (111000001)
+-32 + -30 = -62 (111000010)
+-32 + -29 = -61 (111000011)
+-32 + -28 = -60 (111000100)
+-32 + -27 = -59 (111000101)
+-32 + -26 = -58 (111000110)
+-32 + -25 = -57 (111000111)
+-32 + -24 = -56 (111001000)
+-32 + -23 = -55 (111001001)
+-32 + -22 = -54 (111001010)
+-32 + -21 = -53 (111001011)
+-32 + -20 = -52 (111001100)
+-32 + -19 = -51 (111001101)
+-32 + -18 = -50 (111001110)
+-32 + -17 = -49 (111001111)
+-32 + -16 = -48 (111010000)
+-32 + -15 = -47 (111010001)
+-32 + -14 = -46 (111010010)
+-32 + -13 = -45 (111010011)
+-32 + -12 = -44 (111010100)
+-32 + -11 = -43 (111010101)
+-32 + -10 = -42 (111010110)
+-32 + -9 = -41 (111010111)
+-32 + -8 = -40 (111011000)
+-32 + -7 = -39 (111011001)
+-32 + -6 = -38 (111011010)
+-32 + -5 = -37 (111011011)
+-32 + -4 = -36 (111011100)
+-32 + -3 = -35 (111011101)
+-32 + -2 = -34 (111011110)
+-32 + -1 = -33 (111011111)
+-31 + 0 = -31 (111100001)
+-31 + 1 = -30 (111100010)
+-31 + 2 = -29 (111100011)
+-31 + 3 = -28 (111100100)
+-31 + 4 = -27 (111100101)
+-31 + 5 = -26 (111100110)
+-31 + 6 = -25 (111100111)
+-31 + 7 = -24 (111101000)
+-31 + 8 = -23 (111101001)
+-31 + 9 = -22 (111101010)
+-31 + 10 = -21 (111101011)
+-31 + 11 = -20 (111101100)
+-31 + 12 = -19 (111101101)
+-31 + 13 = -18 (111101110)
+-31 + 14 = -17 (111101111)
+-31 + 15 = -16 (111110000)
+-31 + 16 = -15 (111110001)
+-31 + 17 = -14 (111110010)
+-31 + 18 = -13 (111110011)
+-31 + 19 = -12 (111110100)
+-31 + 20 = -11 (111110101)
+-31 + 21 = -10 (111110110)
+-31 + 22 = -9 (111110111)
+-31 + 23 = -8 (111111000)
+-31 + 24 = -7 (111111001)
+-31 + 25 = -6 (111111010)
+-31 + 26 = -5 (111111011)
+-31 + 27 = -4 (111111100)
+-31 + 28 = -3 (111111101)
+-31 + 29 = -2 (111111110)
+-31 + 30 = -1 (111111111)
+-31 + 31 = 0 (000000000)
+-31 + -32 = -63 (111000001)
+-31 + -31 = -62 (111000010)
+-31 + -30 = -61 (111000011)
+-31 + -29 = -60 (111000100)
+-31 + -28 = -59 (111000101)
+-31 + -27 = -58 (111000110)
+-31 + -26 = -57 (111000111)
+-31 + -25 = -56 (111001000)
+-31 + -24 = -55 (111001001)
+-31 + -23 = -54 (111001010)
+-31 + -22 = -53 (111001011)
+-31 + -21 = -52 (111001100)
+-31 + -20 = -51 (111001101)
+-31 + -19 = -50 (111001110)
+-31 + -18 = -49 (111001111)
+-31 + -17 = -48 (111010000)
+-31 + -16 = -47 (111010001)
+-31 + -15 = -46 (111010010)
+-31 + -14 = -45 (111010011)
+-31 + -13 = -44 (111010100)
+-31 + -12 = -43 (111010101)
+-31 + -11 = -42 (111010110)
+-31 + -10 = -41 (111010111)
+-31 + -9 = -40 (111011000)
+-31 + -8 = -39 (111011001)
+-31 + -7 = -38 (111011010)
+-31 + -6 = -37 (111011011)
+-31 + -5 = -36 (111011100)
+-31 + -4 = -35 (111011101)
+-31 + -3 = -34 (111011110)
+-31 + -2 = -33 (111011111)
+-31 + -1 = -32 (111100000)
+-30 + 0 = -30 (111100010)
+-30 + 1 = -29 (111100011)
+-30 + 2 = -28 (111100100)
+-30 + 3 = -27 (111100101)
+-30 + 4 = -26 (111100110)
+-30 + 5 = -25 (111100111)
+-30 + 6 = -24 (111101000)
+-30 + 7 = -23 (111101001)
+-30 + 8 = -22 (111101010)
+-30 + 9 = -21 (111101011)
+-30 + 10 = -20 (111101100)
+-30 + 11 = -19 (111101101)
+-30 + 12 = -18 (111101110)
+-30 + 13 = -17 (111101111)
+-30 + 14 = -16 (111110000)
+-30 + 15 = -15 (111110001)
+-30 + 16 = -14 (111110010)
+-30 + 17 = -13 (111110011)
+-30 + 18 = -12 (111110100)
+-30 + 19 = -11 (111110101)
+-30 + 20 = -10 (111110110)
+-30 + 21 = -9 (111110111)
+-30 + 22 = -8 (111111000)
+-30 + 23 = -7 (111111001)
+-30 + 24 = -6 (111111010)
+-30 + 25 = -5 (111111011)
+-30 + 26 = -4 (111111100)
+-30 + 27 = -3 (111111101)
+-30 + 28 = -2 (111111110)
+-30 + 29 = -1 (111111111)
+-30 + 30 = 0 (000000000)
+-30 + 31 = 1 (000000001)
+-30 + -32 = -62 (111000010)
+-30 + -31 = -61 (111000011)
+-30 + -30 = -60 (111000100)
+-30 + -29 = -59 (111000101)
+-30 + -28 = -58 (111000110)
+-30 + -27 = -57 (111000111)
+-30 + -26 = -56 (111001000)
+-30 + -25 = -55 (111001001)
+-30 + -24 = -54 (111001010)
+-30 + -23 = -53 (111001011)
+-30 + -22 = -52 (111001100)
+-30 + -21 = -51 (111001101)
+-30 + -20 = -50 (111001110)
+-30 + -19 = -49 (111001111)
+-30 + -18 = -48 (111010000)
+-30 + -17 = -47 (111010001)
+-30 + -16 = -46 (111010010)
+-30 + -15 = -45 (111010011)
+-30 + -14 = -44 (111010100)
+-30 + -13 = -43 (111010101)
+-30 + -12 = -42 (111010110)
+-30 + -11 = -41 (111010111)
+-30 + -10 = -40 (111011000)
+-30 + -9 = -39 (111011001)
+-30 + -8 = -38 (111011010)
+-30 + -7 = -37 (111011011)
+-30 + -6 = -36 (111011100)
+-30 + -5 = -35 (111011101)
+-30 + -4 = -34 (111011110)
+-30 + -3 = -33 (111011111)
+-30 + -2 = -32 (111100000)
+-30 + -1 = -31 (111100001)
+-29 + 0 = -29 (111100011)
+-29 + 1 = -28 (111100100)
+-29 + 2 = -27 (111100101)
+-29 + 3 = -26 (111100110)
+-29 + 4 = -25 (111100111)
+-29 + 5 = -24 (111101000)
+-29 + 6 = -23 (111101001)
+-29 + 7 = -22 (111101010)
+-29 + 8 = -21 (111101011)
+-29 + 9 = -20 (111101100)
+-29 + 10 = -19 (111101101)
+-29 + 11 = -18 (111101110)
+-29 + 12 = -17 (111101111)
+-29 + 13 = -16 (111110000)
+-29 + 14 = -15 (111110001)
+-29 + 15 = -14 (111110010)
+-29 + 16 = -13 (111110011)
+-29 + 17 = -12 (111110100)
+-29 + 18 = -11 (111110101)
+-29 + 19 = -10 (111110110)
+-29 + 20 = -9 (111110111)
+-29 + 21 = -8 (111111000)
+-29 + 22 = -7 (111111001)
+-29 + 23 = -6 (111111010)
+-29 + 24 = -5 (111111011)
+-29 + 25 = -4 (111111100)
+-29 + 26 = -3 (111111101)
+-29 + 27 = -2 (111111110)
+-29 + 28 = -1 (111111111)
+-29 + 29 = 0 (000000000)
+-29 + 30 = 1 (000000001)
+-29 + 31 = 2 (000000010)
+-29 + -32 = -61 (111000011)
+-29 + -31 = -60 (111000100)
+-29 + -30 = -59 (111000101)
+-29 + -29 = -58 (111000110)
+-29 + -28 = -57 (111000111)
+-29 + -27 = -56 (111001000)
+-29 + -26 = -55 (111001001)
+-29 + -25 = -54 (111001010)
+-29 + -24 = -53 (111001011)
+-29 + -23 = -52 (111001100)
+-29 + -22 = -51 (111001101)
+-29 + -21 = -50 (111001110)
+-29 + -20 = -49 (111001111)
+-29 + -19 = -48 (111010000)
+-29 + -18 = -47 (111010001)
+-29 + -17 = -46 (111010010)
+-29 + -16 = -45 (111010011)
+-29 + -15 = -44 (111010100)
+-29 + -14 = -43 (111010101)
+-29 + -13 = -42 (111010110)
+-29 + -12 = -41 (111010111)
+-29 + -11 = -40 (111011000)
+-29 + -10 = -39 (111011001)
+-29 + -9 = -38 (111011010)
+-29 + -8 = -37 (111011011)
+-29 + -7 = -36 (111011100)
+-29 + -6 = -35 (111011101)
+-29 + -5 = -34 (111011110)
+-29 + -4 = -33 (111011111)
+-29 + -3 = -32 (111100000)
+-29 + -2 = -31 (111100001)
+-29 + -1 = -30 (111100010)
+-28 + 0 = -28 (111100100)
+-28 + 1 = -27 (111100101)
+-28 + 2 = -26 (111100110)
+-28 + 3 = -25 (111100111)
+-28 + 4 = -24 (111101000)
+-28 + 5 = -23 (111101001)
+-28 + 6 = -22 (111101010)
+-28 + 7 = -21 (111101011)
+-28 + 8 = -20 (111101100)
+-28 + 9 = -19 (111101101)
+-28 + 10 = -18 (111101110)
+-28 + 11 = -17 (111101111)
+-28 + 12 = -16 (111110000)
+-28 + 13 = -15 (111110001)
+-28 + 14 = -14 (111110010)
+-28 + 15 = -13 (111110011)
+-28 + 16 = -12 (111110100)
+-28 + 17 = -11 (111110101)
+-28 + 18 = -10 (111110110)
+-28 + 19 = -9 (111110111)
+-28 + 20 = -8 (111111000)
+-28 + 21 = -7 (111111001)
+-28 + 22 = -6 (111111010)
+-28 + 23 = -5 (111111011)
+-28 + 24 = -4 (111111100)
+-28 + 25 = -3 (111111101)
+-28 + 26 = -2 (111111110)
+-28 + 27 = -1 (111111111)
+-28 + 28 = 0 (000000000)
+-28 + 29 = 1 (000000001)
+-28 + 30 = 2 (000000010)
+-28 + 31 = 3 (000000011)
+-28 + -32 = -60 (111000100)
+-28 + -31 = -59 (111000101)
+-28 + -30 = -58 (111000110)
+-28 + -29 = -57 (111000111)
+-28 + -28 = -56 (111001000)
+-28 + -27 = -55 (111001001)
+-28 + -26 = -54 (111001010)
+-28 + -25 = -53 (111001011)
+-28 + -24 = -52 (111001100)
+-28 + -23 = -51 (111001101)
+-28 + -22 = -50 (111001110)
+-28 + -21 = -49 (111001111)
+-28 + -20 = -48 (111010000)
+-28 + -19 = -47 (111010001)
+-28 + -18 = -46 (111010010)
+-28 + -17 = -45 (111010011)
+-28 + -16 = -44 (111010100)
+-28 + -15 = -43 (111010101)
+-28 + -14 = -42 (111010110)
+-28 + -13 = -41 (111010111)
+-28 + -12 = -40 (111011000)
+-28 + -11 = -39 (111011001)
+-28 + -10 = -38 (111011010)
+-28 + -9 = -37 (111011011)
+-28 + -8 = -36 (111011100)
+-28 + -7 = -35 (111011101)
+-28 + -6 = -34 (111011110)
+-28 + -5 = -33 (111011111)
+-28 + -4 = -32 (111100000)
+-28 + -3 = -31 (111100001)
+-28 + -2 = -30 (111100010)
+-28 + -1 = -29 (111100011)
+-27 + 0 = -27 (111100101)
+-27 + 1 = -26 (111100110)
+-27 + 2 = -25 (111100111)
+-27 + 3 = -24 (111101000)
+-27 + 4 = -23 (111101001)
+-27 + 5 = -22 (111101010)
+-27 + 6 = -21 (111101011)
+-27 + 7 = -20 (111101100)
+-27 + 8 = -19 (111101101)
+-27 + 9 = -18 (111101110)
+-27 + 10 = -17 (111101111)
+-27 + 11 = -16 (111110000)
+-27 + 12 = -15 (111110001)
+-27 + 13 = -14 (111110010)
+-27 + 14 = -13 (111110011)
+-27 + 15 = -12 (111110100)
+-27 + 16 = -11 (111110101)
+-27 + 17 = -10 (111110110)
+-27 + 18 = -9 (111110111)
+-27 + 19 = -8 (111111000)
+-27 + 20 = -7 (111111001)
+-27 + 21 = -6 (111111010)
+-27 + 22 = -5 (111111011)
+-27 + 23 = -4 (111111100)
+-27 + 24 = -3 (111111101)
+-27 + 25 = -2 (111111110)
+-27 + 26 = -1 (111111111)
+-27 + 27 = 0 (000000000)
+-27 + 28 = 1 (000000001)
+-27 + 29 = 2 (000000010)
+-27 + 30 = 3 (000000011)
+-27 + 31 = 4 (000000100)
+-27 + -32 = -59 (111000101)
+-27 + -31 = -58 (111000110)
+-27 + -30 = -57 (111000111)
+-27 + -29 = -56 (111001000)
+-27 + -28 = -55 (111001001)
+-27 + -27 = -54 (111001010)
+-27 + -26 = -53 (111001011)
+-27 + -25 = -52 (111001100)
+-27 + -24 = -51 (111001101)
+-27 + -23 = -50 (111001110)
+-27 + -22 = -49 (111001111)
+-27 + -21 = -48 (111010000)
+-27 + -20 = -47 (111010001)
+-27 + -19 = -46 (111010010)
+-27 + -18 = -45 (111010011)
+-27 + -17 = -44 (111010100)
+-27 + -16 = -43 (111010101)
+-27 + -15 = -42 (111010110)
+-27 + -14 = -41 (111010111)
+-27 + -13 = -40 (111011000)
+-27 + -12 = -39 (111011001)
+-27 + -11 = -38 (111011010)
+-27 + -10 = -37 (111011011)
+-27 + -9 = -36 (111011100)
+-27 + -8 = -35 (111011101)
+-27 + -7 = -34 (111011110)
+-27 + -6 = -33 (111011111)
+-27 + -5 = -32 (111100000)
+-27 + -4 = -31 (111100001)
+-27 + -3 = -30 (111100010)
+-27 + -2 = -29 (111100011)
+-27 + -1 = -28 (111100100)
+-26 + 0 = -26 (111100110)
+-26 + 1 = -25 (111100111)
+-26 + 2 = -24 (111101000)
+-26 + 3 = -23 (111101001)
+-26 + 4 = -22 (111101010)
+-26 + 5 = -21 (111101011)
+-26 + 6 = -20 (111101100)
+-26 + 7 = -19 (111101101)
+-26 + 8 = -18 (111101110)
+-26 + 9 = -17 (111101111)
+-26 + 10 = -16 (111110000)
+-26 + 11 = -15 (111110001)
+-26 + 12 = -14 (111110010)
+-26 + 13 = -13 (111110011)
+-26 + 14 = -12 (111110100)
+-26 + 15 = -11 (111110101)
+-26 + 16 = -10 (111110110)
+-26 + 17 = -9 (111110111)
+-26 + 18 = -8 (111111000)
+-26 + 19 = -7 (111111001)
+-26 + 20 = -6 (111111010)
+-26 + 21 = -5 (111111011)
+-26 + 22 = -4 (111111100)
+-26 + 23 = -3 (111111101)
+-26 + 24 = -2 (111111110)
+-26 + 25 = -1 (111111111)
+-26 + 26 = 0 (000000000)
+-26 + 27 = 1 (000000001)
+-26 + 28 = 2 (000000010)
+-26 + 29 = 3 (000000011)
+-26 + 30 = 4 (000000100)
+-26 + 31 = 5 (000000101)
+-26 + -32 = -58 (111000110)
+-26 + -31 = -57 (111000111)
+-26 + -30 = -56 (111001000)
+-26 + -29 = -55 (111001001)
+-26 + -28 = -54 (111001010)
+-26 + -27 = -53 (111001011)
+-26 + -26 = -52 (111001100)
+-26 + -25 = -51 (111001101)
+-26 + -24 = -50 (111001110)
+-26 + -23 = -49 (111001111)
+-26 + -22 = -48 (111010000)
+-26 + -21 = -47 (111010001)
+-26 + -20 = -46 (111010010)
+-26 + -19 = -45 (111010011)
+-26 + -18 = -44 (111010100)
+-26 + -17 = -43 (111010101)
+-26 + -16 = -42 (111010110)
+-26 + -15 = -41 (111010111)
+-26 + -14 = -40 (111011000)
+-26 + -13 = -39 (111011001)
+-26 + -12 = -38 (111011010)
+-26 + -11 = -37 (111011011)
+-26 + -10 = -36 (111011100)
+-26 + -9 = -35 (111011101)
+-26 + -8 = -34 (111011110)
+-26 + -7 = -33 (111011111)
+-26 + -6 = -32 (111100000)
+-26 + -5 = -31 (111100001)
+-26 + -4 = -30 (111100010)
+-26 + -3 = -29 (111100011)
+-26 + -2 = -28 (111100100)
+-26 + -1 = -27 (111100101)
+-25 + 0 = -25 (111100111)
+-25 + 1 = -24 (111101000)
+-25 + 2 = -23 (111101001)
+-25 + 3 = -22 (111101010)
+-25 + 4 = -21 (111101011)
+-25 + 5 = -20 (111101100)
+-25 + 6 = -19 (111101101)
+-25 + 7 = -18 (111101110)
+-25 + 8 = -17 (111101111)
+-25 + 9 = -16 (111110000)
+-25 + 10 = -15 (111110001)
+-25 + 11 = -14 (111110010)
+-25 + 12 = -13 (111110011)
+-25 + 13 = -12 (111110100)
+-25 + 14 = -11 (111110101)
+-25 + 15 = -10 (111110110)
+-25 + 16 = -9 (111110111)
+-25 + 17 = -8 (111111000)
+-25 + 18 = -7 (111111001)
+-25 + 19 = -6 (111111010)
+-25 + 20 = -5 (111111011)
+-25 + 21 = -4 (111111100)
+-25 + 22 = -3 (111111101)
+-25 + 23 = -2 (111111110)
+-25 + 24 = -1 (111111111)
+-25 + 25 = 0 (000000000)
+-25 + 26 = 1 (000000001)
+-25 + 27 = 2 (000000010)
+-25 + 28 = 3 (000000011)
+-25 + 29 = 4 (000000100)
+-25 + 30 = 5 (000000101)
+-25 + 31 = 6 (000000110)
+-25 + -32 = -57 (111000111)
+-25 + -31 = -56 (111001000)
+-25 + -30 = -55 (111001001)
+-25 + -29 = -54 (111001010)
+-25 + -28 = -53 (111001011)
+-25 + -27 = -52 (111001100)
+-25 + -26 = -51 (111001101)
+-25 + -25 = -50 (111001110)
+-25 + -24 = -49 (111001111)
+-25 + -23 = -48 (111010000)
+-25 + -22 = -47 (111010001)
+-25 + -21 = -46 (111010010)
+-25 + -20 = -45 (111010011)
+-25 + -19 = -44 (111010100)
+-25 + -18 = -43 (111010101)
+-25 + -17 = -42 (111010110)
+-25 + -16 = -41 (111010111)
+-25 + -15 = -40 (111011000)
+-25 + -14 = -39 (111011001)
+-25 + -13 = -38 (111011010)
+-25 + -12 = -37 (111011011)
+-25 + -11 = -36 (111011100)
+-25 + -10 = -35 (111011101)
+-25 + -9 = -34 (111011110)
+-25 + -8 = -33 (111011111)
+-25 + -7 = -32 (111100000)
+-25 + -6 = -31 (111100001)
+-25 + -5 = -30 (111100010)
+-25 + -4 = -29 (111100011)
+-25 + -3 = -28 (111100100)
+-25 + -2 = -27 (111100101)
+-25 + -1 = -26 (111100110)
+-24 + 0 = -24 (111101000)
+-24 + 1 = -23 (111101001)
+-24 + 2 = -22 (111101010)
+-24 + 3 = -21 (111101011)
+-24 + 4 = -20 (111101100)
+-24 + 5 = -19 (111101101)
+-24 + 6 = -18 (111101110)
+-24 + 7 = -17 (111101111)
+-24 + 8 = -16 (111110000)
+-24 + 9 = -15 (111110001)
+-24 + 10 = -14 (111110010)
+-24 + 11 = -13 (111110011)
+-24 + 12 = -12 (111110100)
+-24 + 13 = -11 (111110101)
+-24 + 14 = -10 (111110110)
+-24 + 15 = -9 (111110111)
+-24 + 16 = -8 (111111000)
+-24 + 17 = -7 (111111001)
+-24 + 18 = -6 (111111010)
+-24 + 19 = -5 (111111011)
+-24 + 20 = -4 (111111100)
+-24 + 21 = -3 (111111101)
+-24 + 22 = -2 (111111110)
+-24 + 23 = -1 (111111111)
+-24 + 24 = 0 (000000000)
+-24 + 25 = 1 (000000001)
+-24 + 26 = 2 (000000010)
+-24 + 27 = 3 (000000011)
+-24 + 28 = 4 (000000100)
+-24 + 29 = 5 (000000101)
+-24 + 30 = 6 (000000110)
+-24 + 31 = 7 (000000111)
+-24 + -32 = -56 (111001000)
+-24 + -31 = -55 (111001001)
+-24 + -30 = -54 (111001010)
+-24 + -29 = -53 (111001011)
+-24 + -28 = -52 (111001100)
+-24 + -27 = -51 (111001101)
+-24 + -26 = -50 (111001110)
+-24 + -25 = -49 (111001111)
+-24 + -24 = -48 (111010000)
+-24 + -23 = -47 (111010001)
+-24 + -22 = -46 (111010010)
+-24 + -21 = -45 (111010011)
+-24 + -20 = -44 (111010100)
+-24 + -19 = -43 (111010101)
+-24 + -18 = -42 (111010110)
+-24 + -17 = -41 (111010111)
+-24 + -16 = -40 (111011000)
+-24 + -15 = -39 (111011001)
+-24 + -14 = -38 (111011010)
+-24 + -13 = -37 (111011011)
+-24 + -12 = -36 (111011100)
+-24 + -11 = -35 (111011101)
+-24 + -10 = -34 (111011110)
+-24 + -9 = -33 (111011111)
+-24 + -8 = -32 (111100000)
+-24 + -7 = -31 (111100001)
+-24 + -6 = -30 (111100010)
+-24 + -5 = -29 (111100011)
+-24 + -4 = -28 (111100100)
+-24 + -3 = -27 (111100101)
+-24 + -2 = -26 (111100110)
+-24 + -1 = -25 (111100111)
+-23 + 0 = -23 (111101001)
+-23 + 1 = -22 (111101010)
+-23 + 2 = -21 (111101011)
+-23 + 3 = -20 (111101100)
+-23 + 4 = -19 (111101101)
+-23 + 5 = -18 (111101110)
+-23 + 6 = -17 (111101111)
+-23 + 7 = -16 (111110000)
+-23 + 8 = -15 (111110001)
+-23 + 9 = -14 (111110010)
+-23 + 10 = -13 (111110011)
+-23 + 11 = -12 (111110100)
+-23 + 12 = -11 (111110101)
+-23 + 13 = -10 (111110110)
+-23 + 14 = -9 (111110111)
+-23 + 15 = -8 (111111000)
+-23 + 16 = -7 (111111001)
+-23 + 17 = -6 (111111010)
+-23 + 18 = -5 (111111011)
+-23 + 19 = -4 (111111100)
+-23 + 20 = -3 (111111101)
+-23 + 21 = -2 (111111110)
+-23 + 22 = -1 (111111111)
+-23 + 23 = 0 (000000000)
+-23 + 24 = 1 (000000001)
+-23 + 25 = 2 (000000010)
+-23 + 26 = 3 (000000011)
+-23 + 27 = 4 (000000100)
+-23 + 28 = 5 (000000101)
+-23 + 29 = 6 (000000110)
+-23 + 30 = 7 (000000111)
+-23 + 31 = 8 (000001000)
+-23 + -32 = -55 (111001001)
+-23 + -31 = -54 (111001010)
+-23 + -30 = -53 (111001011)
+-23 + -29 = -52 (111001100)
+-23 + -28 = -51 (111001101)
+-23 + -27 = -50 (111001110)
+-23 + -26 = -49 (111001111)
+-23 + -25 = -48 (111010000)
+-23 + -24 = -47 (111010001)
+-23 + -23 = -46 (111010010)
+-23 + -22 = -45 (111010011)
+-23 + -21 = -44 (111010100)
+-23 + -20 = -43 (111010101)
+-23 + -19 = -42 (111010110)
+-23 + -18 = -41 (111010111)
+-23 + -17 = -40 (111011000)
+-23 + -16 = -39 (111011001)
+-23 + -15 = -38 (111011010)
+-23 + -14 = -37 (111011011)
+-23 + -13 = -36 (111011100)
+-23 + -12 = -35 (111011101)
+-23 + -11 = -34 (111011110)
+-23 + -10 = -33 (111011111)
+-23 + -9 = -32 (111100000)
+-23 + -8 = -31 (111100001)
+-23 + -7 = -30 (111100010)
+-23 + -6 = -29 (111100011)
+-23 + -5 = -28 (111100100)
+-23 + -4 = -27 (111100101)
+-23 + -3 = -26 (111100110)
+-23 + -2 = -25 (111100111)
+-23 + -1 = -24 (111101000)
+-22 + 0 = -22 (111101010)
+-22 + 1 = -21 (111101011)
+-22 + 2 = -20 (111101100)
+-22 + 3 = -19 (111101101)
+-22 + 4 = -18 (111101110)
+-22 + 5 = -17 (111101111)
+-22 + 6 = -16 (111110000)
+-22 + 7 = -15 (111110001)
+-22 + 8 = -14 (111110010)
+-22 + 9 = -13 (111110011)
+-22 + 10 = -12 (111110100)
+-22 + 11 = -11 (111110101)
+-22 + 12 = -10 (111110110)
+-22 + 13 = -9 (111110111)
+-22 + 14 = -8 (111111000)
+-22 + 15 = -7 (111111001)
+-22 + 16 = -6 (111111010)
+-22 + 17 = -5 (111111011)
+-22 + 18 = -4 (111111100)
+-22 + 19 = -3 (111111101)
+-22 + 20 = -2 (111111110)
+-22 + 21 = -1 (111111111)
+-22 + 22 = 0 (000000000)
+-22 + 23 = 1 (000000001)
+-22 + 24 = 2 (000000010)
+-22 + 25 = 3 (000000011)
+-22 + 26 = 4 (000000100)
+-22 + 27 = 5 (000000101)
+-22 + 28 = 6 (000000110)
+-22 + 29 = 7 (000000111)
+-22 + 30 = 8 (000001000)
+-22 + 31 = 9 (000001001)
+-22 + -32 = -54 (111001010)
+-22 + -31 = -53 (111001011)
+-22 + -30 = -52 (111001100)
+-22 + -29 = -51 (111001101)
+-22 + -28 = -50 (111001110)
+-22 + -27 = -49 (111001111)
+-22 + -26 = -48 (111010000)
+-22 + -25 = -47 (111010001)
+-22 + -24 = -46 (111010010)
+-22 + -23 = -45 (111010011)
+-22 + -22 = -44 (111010100)
+-22 + -21 = -43 (111010101)
+-22 + -20 = -42 (111010110)
+-22 + -19 = -41 (111010111)
+-22 + -18 = -40 (111011000)
+-22 + -17 = -39 (111011001)
+-22 + -16 = -38 (111011010)
+-22 + -15 = -37 (111011011)
+-22 + -14 = -36 (111011100)
+-22 + -13 = -35 (111011101)
+-22 + -12 = -34 (111011110)
+-22 + -11 = -33 (111011111)
+-22 + -10 = -32 (111100000)
+-22 + -9 = -31 (111100001)
+-22 + -8 = -30 (111100010)
+-22 + -7 = -29 (111100011)
+-22 + -6 = -28 (111100100)
+-22 + -5 = -27 (111100101)
+-22 + -4 = -26 (111100110)
+-22 + -3 = -25 (111100111)
+-22 + -2 = -24 (111101000)
+-22 + -1 = -23 (111101001)
+-21 + 0 = -21 (111101011)
+-21 + 1 = -20 (111101100)
+-21 + 2 = -19 (111101101)
+-21 + 3 = -18 (111101110)
+-21 + 4 = -17 (111101111)
+-21 + 5 = -16 (111110000)
+-21 + 6 = -15 (111110001)
+-21 + 7 = -14 (111110010)
+-21 + 8 = -13 (111110011)
+-21 + 9 = -12 (111110100)
+-21 + 10 = -11 (111110101)
+-21 + 11 = -10 (111110110)
+-21 + 12 = -9 (111110111)
+-21 + 13 = -8 (111111000)
+-21 + 14 = -7 (111111001)
+-21 + 15 = -6 (111111010)
+-21 + 16 = -5 (111111011)
+-21 + 17 = -4 (111111100)
+-21 + 18 = -3 (111111101)
+-21 + 19 = -2 (111111110)
+-21 + 20 = -1 (111111111)
+-21 + 21 = 0 (000000000)
+-21 + 22 = 1 (000000001)
+-21 + 23 = 2 (000000010)
+-21 + 24 = 3 (000000011)
+-21 + 25 = 4 (000000100)
+-21 + 26 = 5 (000000101)
+-21 + 27 = 6 (000000110)
+-21 + 28 = 7 (000000111)
+-21 + 29 = 8 (000001000)
+-21 + 30 = 9 (000001001)
+-21 + 31 = 10 (000001010)
+-21 + -32 = -53 (111001011)
+-21 + -31 = -52 (111001100)
+-21 + -30 = -51 (111001101)
+-21 + -29 = -50 (111001110)
+-21 + -28 = -49 (111001111)
+-21 + -27 = -48 (111010000)
+-21 + -26 = -47 (111010001)
+-21 + -25 = -46 (111010010)
+-21 + -24 = -45 (111010011)
+-21 + -23 = -44 (111010100)
+-21 + -22 = -43 (111010101)
+-21 + -21 = -42 (111010110)
+-21 + -20 = -41 (111010111)
+-21 + -19 = -40 (111011000)
+-21 + -18 = -39 (111011001)
+-21 + -17 = -38 (111011010)
+-21 + -16 = -37 (111011011)
+-21 + -15 = -36 (111011100)
+-21 + -14 = -35 (111011101)
+-21 + -13 = -34 (111011110)
+-21 + -12 = -33 (111011111)
+-21 + -11 = -32 (111100000)
+-21 + -10 = -31 (111100001)
+-21 + -9 = -30 (111100010)
+-21 + -8 = -29 (111100011)
+-21 + -7 = -28 (111100100)
+-21 + -6 = -27 (111100101)
+-21 + -5 = -26 (111100110)
+-21 + -4 = -25 (111100111)
+-21 + -3 = -24 (111101000)
+-21 + -2 = -23 (111101001)
+-21 + -1 = -22 (111101010)
+-20 + 0 = -20 (111101100)
+-20 + 1 = -19 (111101101)
+-20 + 2 = -18 (111101110)
+-20 + 3 = -17 (111101111)
+-20 + 4 = -16 (111110000)
+-20 + 5 = -15 (111110001)
+-20 + 6 = -14 (111110010)
+-20 + 7 = -13 (111110011)
+-20 + 8 = -12 (111110100)
+-20 + 9 = -11 (111110101)
+-20 + 10 = -10 (111110110)
+-20 + 11 = -9 (111110111)
+-20 + 12 = -8 (111111000)
+-20 + 13 = -7 (111111001)
+-20 + 14 = -6 (111111010)
+-20 + 15 = -5 (111111011)
+-20 + 16 = -4 (111111100)
+-20 + 17 = -3 (111111101)
+-20 + 18 = -2 (111111110)
+-20 + 19 = -1 (111111111)
+-20 + 20 = 0 (000000000)
+-20 + 21 = 1 (000000001)
+-20 + 22 = 2 (000000010)
+-20 + 23 = 3 (000000011)
+-20 + 24 = 4 (000000100)
+-20 + 25 = 5 (000000101)
+-20 + 26 = 6 (000000110)
+-20 + 27 = 7 (000000111)
+-20 + 28 = 8 (000001000)
+-20 + 29 = 9 (000001001)
+-20 + 30 = 10 (000001010)
+-20 + 31 = 11 (000001011)
+-20 + -32 = -52 (111001100)
+-20 + -31 = -51 (111001101)
+-20 + -30 = -50 (111001110)
+-20 + -29 = -49 (111001111)
+-20 + -28 = -48 (111010000)
+-20 + -27 = -47 (111010001)
+-20 + -26 = -46 (111010010)
+-20 + -25 = -45 (111010011)
+-20 + -24 = -44 (111010100)
+-20 + -23 = -43 (111010101)
+-20 + -22 = -42 (111010110)
+-20 + -21 = -41 (111010111)
+-20 + -20 = -40 (111011000)
+-20 + -19 = -39 (111011001)
+-20 + -18 = -38 (111011010)
+-20 + -17 = -37 (111011011)
+-20 + -16 = -36 (111011100)
+-20 + -15 = -35 (111011101)
+-20 + -14 = -34 (111011110)
+-20 + -13 = -33 (111011111)
+-20 + -12 = -32 (111100000)
+-20 + -11 = -31 (111100001)
+-20 + -10 = -30 (111100010)
+-20 + -9 = -29 (111100011)
+-20 + -8 = -28 (111100100)
+-20 + -7 = -27 (111100101)
+-20 + -6 = -26 (111100110)
+-20 + -5 = -25 (111100111)
+-20 + -4 = -24 (111101000)
+-20 + -3 = -23 (111101001)
+-20 + -2 = -22 (111101010)
+-20 + -1 = -21 (111101011)
+-19 + 0 = -19 (111101101)
+-19 + 1 = -18 (111101110)
+-19 + 2 = -17 (111101111)
+-19 + 3 = -16 (111110000)
+-19 + 4 = -15 (111110001)
+-19 + 5 = -14 (111110010)
+-19 + 6 = -13 (111110011)
+-19 + 7 = -12 (111110100)
+-19 + 8 = -11 (111110101)
+-19 + 9 = -10 (111110110)
+-19 + 10 = -9 (111110111)
+-19 + 11 = -8 (111111000)
+-19 + 12 = -7 (111111001)
+-19 + 13 = -6 (111111010)
+-19 + 14 = -5 (111111011)
+-19 + 15 = -4 (111111100)
+-19 + 16 = -3 (111111101)
+-19 + 17 = -2 (111111110)
+-19 + 18 = -1 (111111111)
+-19 + 19 = 0 (000000000)
+-19 + 20 = 1 (000000001)
+-19 + 21 = 2 (000000010)
+-19 + 22 = 3 (000000011)
+-19 + 23 = 4 (000000100)
+-19 + 24 = 5 (000000101)
+-19 + 25 = 6 (000000110)
+-19 + 26 = 7 (000000111)
+-19 + 27 = 8 (000001000)
+-19 + 28 = 9 (000001001)
+-19 + 29 = 10 (000001010)
+-19 + 30 = 11 (000001011)
+-19 + 31 = 12 (000001100)
+-19 + -32 = -51 (111001101)
+-19 + -31 = -50 (111001110)
+-19 + -30 = -49 (111001111)
+-19 + -29 = -48 (111010000)
+-19 + -28 = -47 (111010001)
+-19 + -27 = -46 (111010010)
+-19 + -26 = -45 (111010011)
+-19 + -25 = -44 (111010100)
+-19 + -24 = -43 (111010101)
+-19 + -23 = -42 (111010110)
+-19 + -22 = -41 (111010111)
+-19 + -21 = -40 (111011000)
+-19 + -20 = -39 (111011001)
+-19 + -19 = -38 (111011010)
+-19 + -18 = -37 (111011011)
+-19 + -17 = -36 (111011100)
+-19 + -16 = -35 (111011101)
+-19 + -15 = -34 (111011110)
+-19 + -14 = -33 (111011111)
+-19 + -13 = -32 (111100000)
+-19 + -12 = -31 (111100001)
+-19 + -11 = -30 (111100010)
+-19 + -10 = -29 (111100011)
+-19 + -9 = -28 (111100100)
+-19 + -8 = -27 (111100101)
+-19 + -7 = -26 (111100110)
+-19 + -6 = -25 (111100111)
+-19 + -5 = -24 (111101000)
+-19 + -4 = -23 (111101001)
+-19 + -3 = -22 (111101010)
+-19 + -2 = -21 (111101011)
+-19 + -1 = -20 (111101100)
+-18 + 0 = -18 (111101110)
+-18 + 1 = -17 (111101111)
+-18 + 2 = -16 (111110000)
+-18 + 3 = -15 (111110001)
+-18 + 4 = -14 (111110010)
+-18 + 5 = -13 (111110011)
+-18 + 6 = -12 (111110100)
+-18 + 7 = -11 (111110101)
+-18 + 8 = -10 (111110110)
+-18 + 9 = -9 (111110111)
+-18 + 10 = -8 (111111000)
+-18 + 11 = -7 (111111001)
+-18 + 12 = -6 (111111010)
+-18 + 13 = -5 (111111011)
+-18 + 14 = -4 (111111100)
+-18 + 15 = -3 (111111101)
+-18 + 16 = -2 (111111110)
+-18 + 17 = -1 (111111111)
+-18 + 18 = 0 (000000000)
+-18 + 19 = 1 (000000001)
+-18 + 20 = 2 (000000010)
+-18 + 21 = 3 (000000011)
+-18 + 22 = 4 (000000100)
+-18 + 23 = 5 (000000101)
+-18 + 24 = 6 (000000110)
+-18 + 25 = 7 (000000111)
+-18 + 26 = 8 (000001000)
+-18 + 27 = 9 (000001001)
+-18 + 28 = 10 (000001010)
+-18 + 29 = 11 (000001011)
+-18 + 30 = 12 (000001100)
+-18 + 31 = 13 (000001101)
+-18 + -32 = -50 (111001110)
+-18 + -31 = -49 (111001111)
+-18 + -30 = -48 (111010000)
+-18 + -29 = -47 (111010001)
+-18 + -28 = -46 (111010010)
+-18 + -27 = -45 (111010011)
+-18 + -26 = -44 (111010100)
+-18 + -25 = -43 (111010101)
+-18 + -24 = -42 (111010110)
+-18 + -23 = -41 (111010111)
+-18 + -22 = -40 (111011000)
+-18 + -21 = -39 (111011001)
+-18 + -20 = -38 (111011010)
+-18 + -19 = -37 (111011011)
+-18 + -18 = -36 (111011100)
+-18 + -17 = -35 (111011101)
+-18 + -16 = -34 (111011110)
+-18 + -15 = -33 (111011111)
+-18 + -14 = -32 (111100000)
+-18 + -13 = -31 (111100001)
+-18 + -12 = -30 (111100010)
+-18 + -11 = -29 (111100011)
+-18 + -10 = -28 (111100100)
+-18 + -9 = -27 (111100101)
+-18 + -8 = -26 (111100110)
+-18 + -7 = -25 (111100111)
+-18 + -6 = -24 (111101000)
+-18 + -5 = -23 (111101001)
+-18 + -4 = -22 (111101010)
+-18 + -3 = -21 (111101011)
+-18 + -2 = -20 (111101100)
+-18 + -1 = -19 (111101101)
+-17 + 0 = -17 (111101111)
+-17 + 1 = -16 (111110000)
+-17 + 2 = -15 (111110001)
+-17 + 3 = -14 (111110010)
+-17 + 4 = -13 (111110011)
+-17 + 5 = -12 (111110100)
+-17 + 6 = -11 (111110101)
+-17 + 7 = -10 (111110110)
+-17 + 8 = -9 (111110111)
+-17 + 9 = -8 (111111000)
+-17 + 10 = -7 (111111001)
+-17 + 11 = -6 (111111010)
+-17 + 12 = -5 (111111011)
+-17 + 13 = -4 (111111100)
+-17 + 14 = -3 (111111101)
+-17 + 15 = -2 (111111110)
+-17 + 16 = -1 (111111111)
+-17 + 17 = 0 (000000000)
+-17 + 18 = 1 (000000001)
+-17 + 19 = 2 (000000010)
+-17 + 20 = 3 (000000011)
+-17 + 21 = 4 (000000100)
+-17 + 22 = 5 (000000101)
+-17 + 23 = 6 (000000110)
+-17 + 24 = 7 (000000111)
+-17 + 25 = 8 (000001000)
+-17 + 26 = 9 (000001001)
+-17 + 27 = 10 (000001010)
+-17 + 28 = 11 (000001011)
+-17 + 29 = 12 (000001100)
+-17 + 30 = 13 (000001101)
+-17 + 31 = 14 (000001110)
+-17 + -32 = -49 (111001111)
+-17 + -31 = -48 (111010000)
+-17 + -30 = -47 (111010001)
+-17 + -29 = -46 (111010010)
+-17 + -28 = -45 (111010011)
+-17 + -27 = -44 (111010100)
+-17 + -26 = -43 (111010101)
+-17 + -25 = -42 (111010110)
+-17 + -24 = -41 (111010111)
+-17 + -23 = -40 (111011000)
+-17 + -22 = -39 (111011001)
+-17 + -21 = -38 (111011010)
+-17 + -20 = -37 (111011011)
+-17 + -19 = -36 (111011100)
+-17 + -18 = -35 (111011101)
+-17 + -17 = -34 (111011110)
+-17 + -16 = -33 (111011111)
+-17 + -15 = -32 (111100000)
+-17 + -14 = -31 (111100001)
+-17 + -13 = -30 (111100010)
+-17 + -12 = -29 (111100011)
+-17 + -11 = -28 (111100100)
+-17 + -10 = -27 (111100101)
+-17 + -9 = -26 (111100110)
+-17 + -8 = -25 (111100111)
+-17 + -7 = -24 (111101000)
+-17 + -6 = -23 (111101001)
+-17 + -5 = -22 (111101010)
+-17 + -4 = -21 (111101011)
+-17 + -3 = -20 (111101100)
+-17 + -2 = -19 (111101101)
+-17 + -1 = -18 (111101110)
+-16 + 0 = -16 (111110000)
+-16 + 1 = -15 (111110001)
+-16 + 2 = -14 (111110010)
+-16 + 3 = -13 (111110011)
+-16 + 4 = -12 (111110100)
+-16 + 5 = -11 (111110101)
+-16 + 6 = -10 (111110110)
+-16 + 7 = -9 (111110111)
+-16 + 8 = -8 (111111000)
+-16 + 9 = -7 (111111001)
+-16 + 10 = -6 (111111010)
+-16 + 11 = -5 (111111011)
+-16 + 12 = -4 (111111100)
+-16 + 13 = -3 (111111101)
+-16 + 14 = -2 (111111110)
+-16 + 15 = -1 (111111111)
+-16 + 16 = 0 (000000000)
+-16 + 17 = 1 (000000001)
+-16 + 18 = 2 (000000010)
+-16 + 19 = 3 (000000011)
+-16 + 20 = 4 (000000100)
+-16 + 21 = 5 (000000101)
+-16 + 22 = 6 (000000110)
+-16 + 23 = 7 (000000111)
+-16 + 24 = 8 (000001000)
+-16 + 25 = 9 (000001001)
+-16 + 26 = 10 (000001010)
+-16 + 27 = 11 (000001011)
+-16 + 28 = 12 (000001100)
+-16 + 29 = 13 (000001101)
+-16 + 30 = 14 (000001110)
+-16 + 31 = 15 (000001111)
+-16 + -32 = -48 (111010000)
+-16 + -31 = -47 (111010001)
+-16 + -30 = -46 (111010010)
+-16 + -29 = -45 (111010011)
+-16 + -28 = -44 (111010100)
+-16 + -27 = -43 (111010101)
+-16 + -26 = -42 (111010110)
+-16 + -25 = -41 (111010111)
+-16 + -24 = -40 (111011000)
+-16 + -23 = -39 (111011001)
+-16 + -22 = -38 (111011010)
+-16 + -21 = -37 (111011011)
+-16 + -20 = -36 (111011100)
+-16 + -19 = -35 (111011101)
+-16 + -18 = -34 (111011110)
+-16 + -17 = -33 (111011111)
+-16 + -16 = -32 (111100000)
+-16 + -15 = -31 (111100001)
+-16 + -14 = -30 (111100010)
+-16 + -13 = -29 (111100011)
+-16 + -12 = -28 (111100100)
+-16 + -11 = -27 (111100101)
+-16 + -10 = -26 (111100110)
+-16 + -9 = -25 (111100111)
+-16 + -8 = -24 (111101000)
+-16 + -7 = -23 (111101001)
+-16 + -6 = -22 (111101010)
+-16 + -5 = -21 (111101011)
+-16 + -4 = -20 (111101100)
+-16 + -3 = -19 (111101101)
+-16 + -2 = -18 (111101110)
+-16 + -1 = -17 (111101111)
+-15 + 0 = -15 (111110001)
+-15 + 1 = -14 (111110010)
+-15 + 2 = -13 (111110011)
+-15 + 3 = -12 (111110100)
+-15 + 4 = -11 (111110101)
+-15 + 5 = -10 (111110110)
+-15 + 6 = -9 (111110111)
+-15 + 7 = -8 (111111000)
+-15 + 8 = -7 (111111001)
+-15 + 9 = -6 (111111010)
+-15 + 10 = -5 (111111011)
+-15 + 11 = -4 (111111100)
+-15 + 12 = -3 (111111101)
+-15 + 13 = -2 (111111110)
+-15 + 14 = -1 (111111111)
+-15 + 15 = 0 (000000000)
+-15 + 16 = 1 (000000001)
+-15 + 17 = 2 (000000010)
+-15 + 18 = 3 (000000011)
+-15 + 19 = 4 (000000100)
+-15 + 20 = 5 (000000101)
+-15 + 21 = 6 (000000110)
+-15 + 22 = 7 (000000111)
+-15 + 23 = 8 (000001000)
+-15 + 24 = 9 (000001001)
+-15 + 25 = 10 (000001010)
+-15 + 26 = 11 (000001011)
+-15 + 27 = 12 (000001100)
+-15 + 28 = 13 (000001101)
+-15 + 29 = 14 (000001110)
+-15 + 30 = 15 (000001111)
+-15 + 31 = 16 (000010000)
+-15 + -32 = -47 (111010001)
+-15 + -31 = -46 (111010010)
+-15 + -30 = -45 (111010011)
+-15 + -29 = -44 (111010100)
+-15 + -28 = -43 (111010101)
+-15 + -27 = -42 (111010110)
+-15 + -26 = -41 (111010111)
+-15 + -25 = -40 (111011000)
+-15 + -24 = -39 (111011001)
+-15 + -23 = -38 (111011010)
+-15 + -22 = -37 (111011011)
+-15 + -21 = -36 (111011100)
+-15 + -20 = -35 (111011101)
+-15 + -19 = -34 (111011110)
+-15 + -18 = -33 (111011111)
+-15 + -17 = -32 (111100000)
+-15 + -16 = -31 (111100001)
+-15 + -15 = -30 (111100010)
+-15 + -14 = -29 (111100011)
+-15 + -13 = -28 (111100100)
+-15 + -12 = -27 (111100101)
+-15 + -11 = -26 (111100110)
+-15 + -10 = -25 (111100111)
+-15 + -9 = -24 (111101000)
+-15 + -8 = -23 (111101001)
+-15 + -7 = -22 (111101010)
+-15 + -6 = -21 (111101011)
+-15 + -5 = -20 (111101100)
+-15 + -4 = -19 (111101101)
+-15 + -3 = -18 (111101110)
+-15 + -2 = -17 (111101111)
+-15 + -1 = -16 (111110000)
+-14 + 0 = -14 (111110010)
+-14 + 1 = -13 (111110011)
+-14 + 2 = -12 (111110100)
+-14 + 3 = -11 (111110101)
+-14 + 4 = -10 (111110110)
+-14 + 5 = -9 (111110111)
+-14 + 6 = -8 (111111000)
+-14 + 7 = -7 (111111001)
+-14 + 8 = -6 (111111010)
+-14 + 9 = -5 (111111011)
+-14 + 10 = -4 (111111100)
+-14 + 11 = -3 (111111101)
+-14 + 12 = -2 (111111110)
+-14 + 13 = -1 (111111111)
+-14 + 14 = 0 (000000000)
+-14 + 15 = 1 (000000001)
+-14 + 16 = 2 (000000010)
+-14 + 17 = 3 (000000011)
+-14 + 18 = 4 (000000100)
+-14 + 19 = 5 (000000101)
+-14 + 20 = 6 (000000110)
+-14 + 21 = 7 (000000111)
+-14 + 22 = 8 (000001000)
+-14 + 23 = 9 (000001001)
+-14 + 24 = 10 (000001010)
+-14 + 25 = 11 (000001011)
+-14 + 26 = 12 (000001100)
+-14 + 27 = 13 (000001101)
+-14 + 28 = 14 (000001110)
+-14 + 29 = 15 (000001111)
+-14 + 30 = 16 (000010000)
+-14 + 31 = 17 (000010001)
+-14 + -32 = -46 (111010010)
+-14 + -31 = -45 (111010011)
+-14 + -30 = -44 (111010100)
+-14 + -29 = -43 (111010101)
+-14 + -28 = -42 (111010110)
+-14 + -27 = -41 (111010111)
+-14 + -26 = -40 (111011000)
+-14 + -25 = -39 (111011001)
+-14 + -24 = -38 (111011010)
+-14 + -23 = -37 (111011011)
+-14 + -22 = -36 (111011100)
+-14 + -21 = -35 (111011101)
+-14 + -20 = -34 (111011110)
+-14 + -19 = -33 (111011111)
+-14 + -18 = -32 (111100000)
+-14 + -17 = -31 (111100001)
+-14 + -16 = -30 (111100010)
+-14 + -15 = -29 (111100011)
+-14 + -14 = -28 (111100100)
+-14 + -13 = -27 (111100101)
+-14 + -12 = -26 (111100110)
+-14 + -11 = -25 (111100111)
+-14 + -10 = -24 (111101000)
+-14 + -9 = -23 (111101001)
+-14 + -8 = -22 (111101010)
+-14 + -7 = -21 (111101011)
+-14 + -6 = -20 (111101100)
+-14 + -5 = -19 (111101101)
+-14 + -4 = -18 (111101110)
+-14 + -3 = -17 (111101111)
+-14 + -2 = -16 (111110000)
+-14 + -1 = -15 (111110001)
+-13 + 0 = -13 (111110011)
+-13 + 1 = -12 (111110100)
+-13 + 2 = -11 (111110101)
+-13 + 3 = -10 (111110110)
+-13 + 4 = -9 (111110111)
+-13 + 5 = -8 (111111000)
+-13 + 6 = -7 (111111001)
+-13 + 7 = -6 (111111010)
+-13 + 8 = -5 (111111011)
+-13 + 9 = -4 (111111100)
+-13 + 10 = -3 (111111101)
+-13 + 11 = -2 (111111110)
+-13 + 12 = -1 (111111111)
+-13 + 13 = 0 (000000000)
+-13 + 14 = 1 (000000001)
+-13 + 15 = 2 (000000010)
+-13 + 16 = 3 (000000011)
+-13 + 17 = 4 (000000100)
+-13 + 18 = 5 (000000101)
+-13 + 19 = 6 (000000110)
+-13 + 20 = 7 (000000111)
+-13 + 21 = 8 (000001000)
+-13 + 22 = 9 (000001001)
+-13 + 23 = 10 (000001010)
+-13 + 24 = 11 (000001011)
+-13 + 25 = 12 (000001100)
+-13 + 26 = 13 (000001101)
+-13 + 27 = 14 (000001110)
+-13 + 28 = 15 (000001111)
+-13 + 29 = 16 (000010000)
+-13 + 30 = 17 (000010001)
+-13 + 31 = 18 (000010010)
+-13 + -32 = -45 (111010011)
+-13 + -31 = -44 (111010100)
+-13 + -30 = -43 (111010101)
+-13 + -29 = -42 (111010110)
+-13 + -28 = -41 (111010111)
+-13 + -27 = -40 (111011000)
+-13 + -26 = -39 (111011001)
+-13 + -25 = -38 (111011010)
+-13 + -24 = -37 (111011011)
+-13 + -23 = -36 (111011100)
+-13 + -22 = -35 (111011101)
+-13 + -21 = -34 (111011110)
+-13 + -20 = -33 (111011111)
+-13 + -19 = -32 (111100000)
+-13 + -18 = -31 (111100001)
+-13 + -17 = -30 (111100010)
+-13 + -16 = -29 (111100011)
+-13 + -15 = -28 (111100100)
+-13 + -14 = -27 (111100101)
+-13 + -13 = -26 (111100110)
+-13 + -12 = -25 (111100111)
+-13 + -11 = -24 (111101000)
+-13 + -10 = -23 (111101001)
+-13 + -9 = -22 (111101010)
+-13 + -8 = -21 (111101011)
+-13 + -7 = -20 (111101100)
+-13 + -6 = -19 (111101101)
+-13 + -5 = -18 (111101110)
+-13 + -4 = -17 (111101111)
+-13 + -3 = -16 (111110000)
+-13 + -2 = -15 (111110001)
+-13 + -1 = -14 (111110010)
+-12 + 0 = -12 (111110100)
+-12 + 1 = -11 (111110101)
+-12 + 2 = -10 (111110110)
+-12 + 3 = -9 (111110111)
+-12 + 4 = -8 (111111000)
+-12 + 5 = -7 (111111001)
+-12 + 6 = -6 (111111010)
+-12 + 7 = -5 (111111011)
+-12 + 8 = -4 (111111100)
+-12 + 9 = -3 (111111101)
+-12 + 10 = -2 (111111110)
+-12 + 11 = -1 (111111111)
+-12 + 12 = 0 (000000000)
+-12 + 13 = 1 (000000001)
+-12 + 14 = 2 (000000010)
+-12 + 15 = 3 (000000011)
+-12 + 16 = 4 (000000100)
+-12 + 17 = 5 (000000101)
+-12 + 18 = 6 (000000110)
+-12 + 19 = 7 (000000111)
+-12 + 20 = 8 (000001000)
+-12 + 21 = 9 (000001001)
+-12 + 22 = 10 (000001010)
+-12 + 23 = 11 (000001011)
+-12 + 24 = 12 (000001100)
+-12 + 25 = 13 (000001101)
+-12 + 26 = 14 (000001110)
+-12 + 27 = 15 (000001111)
+-12 + 28 = 16 (000010000)
+-12 + 29 = 17 (000010001)
+-12 + 30 = 18 (000010010)
+-12 + 31 = 19 (000010011)
+-12 + -32 = -44 (111010100)
+-12 + -31 = -43 (111010101)
+-12 + -30 = -42 (111010110)
+-12 + -29 = -41 (111010111)
+-12 + -28 = -40 (111011000)
+-12 + -27 = -39 (111011001)
+-12 + -26 = -38 (111011010)
+-12 + -25 = -37 (111011011)
+-12 + -24 = -36 (111011100)
+-12 + -23 = -35 (111011101)
+-12 + -22 = -34 (111011110)
+-12 + -21 = -33 (111011111)
+-12 + -20 = -32 (111100000)
+-12 + -19 = -31 (111100001)
+-12 + -18 = -30 (111100010)
+-12 + -17 = -29 (111100011)
+-12 + -16 = -28 (111100100)
+-12 + -15 = -27 (111100101)
+-12 + -14 = -26 (111100110)
+-12 + -13 = -25 (111100111)
+-12 + -12 = -24 (111101000)
+-12 + -11 = -23 (111101001)
+-12 + -10 = -22 (111101010)
+-12 + -9 = -21 (111101011)
+-12 + -8 = -20 (111101100)
+-12 + -7 = -19 (111101101)
+-12 + -6 = -18 (111101110)
+-12 + -5 = -17 (111101111)
+-12 + -4 = -16 (111110000)
+-12 + -3 = -15 (111110001)
+-12 + -2 = -14 (111110010)
+-12 + -1 = -13 (111110011)
+-11 + 0 = -11 (111110101)
+-11 + 1 = -10 (111110110)
+-11 + 2 = -9 (111110111)
+-11 + 3 = -8 (111111000)
+-11 + 4 = -7 (111111001)
+-11 + 5 = -6 (111111010)
+-11 + 6 = -5 (111111011)
+-11 + 7 = -4 (111111100)
+-11 + 8 = -3 (111111101)
+-11 + 9 = -2 (111111110)
+-11 + 10 = -1 (111111111)
+-11 + 11 = 0 (000000000)
+-11 + 12 = 1 (000000001)
+-11 + 13 = 2 (000000010)
+-11 + 14 = 3 (000000011)
+-11 + 15 = 4 (000000100)
+-11 + 16 = 5 (000000101)
+-11 + 17 = 6 (000000110)
+-11 + 18 = 7 (000000111)
+-11 + 19 = 8 (000001000)
+-11 + 20 = 9 (000001001)
+-11 + 21 = 10 (000001010)
+-11 + 22 = 11 (000001011)
+-11 + 23 = 12 (000001100)
+-11 + 24 = 13 (000001101)
+-11 + 25 = 14 (000001110)
+-11 + 26 = 15 (000001111)
+-11 + 27 = 16 (000010000)
+-11 + 28 = 17 (000010001)
+-11 + 29 = 18 (000010010)
+-11 + 30 = 19 (000010011)
+-11 + 31 = 20 (000010100)
+-11 + -32 = -43 (111010101)
+-11 + -31 = -42 (111010110)
+-11 + -30 = -41 (111010111)
+-11 + -29 = -40 (111011000)
+-11 + -28 = -39 (111011001)
+-11 + -27 = -38 (111011010)
+-11 + -26 = -37 (111011011)
+-11 + -25 = -36 (111011100)
+-11 + -24 = -35 (111011101)
+-11 + -23 = -34 (111011110)
+-11 + -22 = -33 (111011111)
+-11 + -21 = -32 (111100000)
+-11 + -20 = -31 (111100001)
+-11 + -19 = -30 (111100010)
+-11 + -18 = -29 (111100011)
+-11 + -17 = -28 (111100100)
+-11 + -16 = -27 (111100101)
+-11 + -15 = -26 (111100110)
+-11 + -14 = -25 (111100111)
+-11 + -13 = -24 (111101000)
+-11 + -12 = -23 (111101001)
+-11 + -11 = -22 (111101010)
+-11 + -10 = -21 (111101011)
+-11 + -9 = -20 (111101100)
+-11 + -8 = -19 (111101101)
+-11 + -7 = -18 (111101110)
+-11 + -6 = -17 (111101111)
+-11 + -5 = -16 (111110000)
+-11 + -4 = -15 (111110001)
+-11 + -3 = -14 (111110010)
+-11 + -2 = -13 (111110011)
+-11 + -1 = -12 (111110100)
+-10 + 0 = -10 (111110110)
+-10 + 1 = -9 (111110111)
+-10 + 2 = -8 (111111000)
+-10 + 3 = -7 (111111001)
+-10 + 4 = -6 (111111010)
+-10 + 5 = -5 (111111011)
+-10 + 6 = -4 (111111100)
+-10 + 7 = -3 (111111101)
+-10 + 8 = -2 (111111110)
+-10 + 9 = -1 (111111111)
+-10 + 10 = 0 (000000000)
+-10 + 11 = 1 (000000001)
+-10 + 12 = 2 (000000010)
+-10 + 13 = 3 (000000011)
+-10 + 14 = 4 (000000100)
+-10 + 15 = 5 (000000101)
+-10 + 16 = 6 (000000110)
+-10 + 17 = 7 (000000111)
+-10 + 18 = 8 (000001000)
+-10 + 19 = 9 (000001001)
+-10 + 20 = 10 (000001010)
+-10 + 21 = 11 (000001011)
+-10 + 22 = 12 (000001100)
+-10 + 23 = 13 (000001101)
+-10 + 24 = 14 (000001110)
+-10 + 25 = 15 (000001111)
+-10 + 26 = 16 (000010000)
+-10 + 27 = 17 (000010001)
+-10 + 28 = 18 (000010010)
+-10 + 29 = 19 (000010011)
+-10 + 30 = 20 (000010100)
+-10 + 31 = 21 (000010101)
+-10 + -32 = -42 (111010110)
+-10 + -31 = -41 (111010111)
+-10 + -30 = -40 (111011000)
+-10 + -29 = -39 (111011001)
+-10 + -28 = -38 (111011010)
+-10 + -27 = -37 (111011011)
+-10 + -26 = -36 (111011100)
+-10 + -25 = -35 (111011101)
+-10 + -24 = -34 (111011110)
+-10 + -23 = -33 (111011111)
+-10 + -22 = -32 (111100000)
+-10 + -21 = -31 (111100001)
+-10 + -20 = -30 (111100010)
+-10 + -19 = -29 (111100011)
+-10 + -18 = -28 (111100100)
+-10 + -17 = -27 (111100101)
+-10 + -16 = -26 (111100110)
+-10 + -15 = -25 (111100111)
+-10 + -14 = -24 (111101000)
+-10 + -13 = -23 (111101001)
+-10 + -12 = -22 (111101010)
+-10 + -11 = -21 (111101011)
+-10 + -10 = -20 (111101100)
+-10 + -9 = -19 (111101101)
+-10 + -8 = -18 (111101110)
+-10 + -7 = -17 (111101111)
+-10 + -6 = -16 (111110000)
+-10 + -5 = -15 (111110001)
+-10 + -4 = -14 (111110010)
+-10 + -3 = -13 (111110011)
+-10 + -2 = -12 (111110100)
+-10 + -1 = -11 (111110101)
+-9 + 0 = -9 (111110111)
+-9 + 1 = -8 (111111000)
+-9 + 2 = -7 (111111001)
+-9 + 3 = -6 (111111010)
+-9 + 4 = -5 (111111011)
+-9 + 5 = -4 (111111100)
+-9 + 6 = -3 (111111101)
+-9 + 7 = -2 (111111110)
+-9 + 8 = -1 (111111111)
+-9 + 9 = 0 (000000000)
+-9 + 10 = 1 (000000001)
+-9 + 11 = 2 (000000010)
+-9 + 12 = 3 (000000011)
+-9 + 13 = 4 (000000100)
+-9 + 14 = 5 (000000101)
+-9 + 15 = 6 (000000110)
+-9 + 16 = 7 (000000111)
+-9 + 17 = 8 (000001000)
+-9 + 18 = 9 (000001001)
+-9 + 19 = 10 (000001010)
+-9 + 20 = 11 (000001011)
+-9 + 21 = 12 (000001100)
+-9 + 22 = 13 (000001101)
+-9 + 23 = 14 (000001110)
+-9 + 24 = 15 (000001111)
+-9 + 25 = 16 (000010000)
+-9 + 26 = 17 (000010001)
+-9 + 27 = 18 (000010010)
+-9 + 28 = 19 (000010011)
+-9 + 29 = 20 (000010100)
+-9 + 30 = 21 (000010101)
+-9 + 31 = 22 (000010110)
+-9 + -32 = -41 (111010111)
+-9 + -31 = -40 (111011000)
+-9 + -30 = -39 (111011001)
+-9 + -29 = -38 (111011010)
+-9 + -28 = -37 (111011011)
+-9 + -27 = -36 (111011100)
+-9 + -26 = -35 (111011101)
+-9 + -25 = -34 (111011110)
+-9 + -24 = -33 (111011111)
+-9 + -23 = -32 (111100000)
+-9 + -22 = -31 (111100001)
+-9 + -21 = -30 (111100010)
+-9 + -20 = -29 (111100011)
+-9 + -19 = -28 (111100100)
+-9 + -18 = -27 (111100101)
+-9 + -17 = -26 (111100110)
+-9 + -16 = -25 (111100111)
+-9 + -15 = -24 (111101000)
+-9 + -14 = -23 (111101001)
+-9 + -13 = -22 (111101010)
+-9 + -12 = -21 (111101011)
+-9 + -11 = -20 (111101100)
+-9 + -10 = -19 (111101101)
+-9 + -9 = -18 (111101110)
+-9 + -8 = -17 (111101111)
+-9 + -7 = -16 (111110000)
+-9 + -6 = -15 (111110001)
+-9 + -5 = -14 (111110010)
+-9 + -4 = -13 (111110011)
+-9 + -3 = -12 (111110100)
+-9 + -2 = -11 (111110101)
+-9 + -1 = -10 (111110110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/main.cpp
new file mode 100644
index 000000000..5c1049d14
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 9-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 9;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector9 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/stimgen.h
new file mode 100644
index 000000000..3988984dd
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/extension/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector9& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector9& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/common.h
new file mode 100644
index 000000000..64a0e627c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/common.h
@@ -0,0 +1,45 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<6> > signal_bool_vector;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/datawidth.cpp
new file mode 100644
index 000000000..25913d4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_signed tmp_a (in1_width);
+ sc_signed tmp_b (in2_width);
+ sc_signed tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/datawidth.h
new file mode 100644
index 000000000..a8aaf9061
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector& in1;
+ const signal_bool_vector& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector& IN1,
+ const signal_bool_vector& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/golden/lost_carry.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/golden/lost_carry.log
new file mode 100644
index 000000000..f36976512
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/golden/lost_carry.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = -32 (100000)
+8 + 25 = -31 (100001)
+8 + 26 = -30 (100010)
+8 + 27 = -29 (100011)
+8 + 28 = -28 (100100)
+8 + 29 = -27 (100101)
+8 + 30 = -26 (100110)
+8 + 31 = -25 (100111)
+8 + -32 = -24 (101000)
+8 + -31 = -23 (101001)
+8 + -30 = -22 (101010)
+8 + -29 = -21 (101011)
+8 + -28 = -20 (101100)
+8 + -27 = -19 (101101)
+8 + -26 = -18 (101110)
+8 + -25 = -17 (101111)
+8 + -24 = -16 (110000)
+8 + -23 = -15 (110001)
+8 + -22 = -14 (110010)
+8 + -21 = -13 (110011)
+8 + -20 = -12 (110100)
+8 + -19 = -11 (110101)
+8 + -18 = -10 (110110)
+8 + -17 = -9 (110111)
+8 + -16 = -8 (111000)
+8 + -15 = -7 (111001)
+8 + -14 = -6 (111010)
+8 + -13 = -5 (111011)
+8 + -12 = -4 (111100)
+8 + -11 = -3 (111101)
+8 + -10 = -2 (111110)
+8 + -9 = -1 (111111)
+8 + -8 = 0 (000000)
+8 + -7 = 1 (000001)
+8 + -6 = 2 (000010)
+8 + -5 = 3 (000011)
+8 + -4 = 4 (000100)
+8 + -3 = 5 (000101)
+8 + -2 = 6 (000110)
+8 + -1 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = -32 (100000)
+9 + 24 = -31 (100001)
+9 + 25 = -30 (100010)
+9 + 26 = -29 (100011)
+9 + 27 = -28 (100100)
+9 + 28 = -27 (100101)
+9 + 29 = -26 (100110)
+9 + 30 = -25 (100111)
+9 + 31 = -24 (101000)
+9 + -32 = -23 (101001)
+9 + -31 = -22 (101010)
+9 + -30 = -21 (101011)
+9 + -29 = -20 (101100)
+9 + -28 = -19 (101101)
+9 + -27 = -18 (101110)
+9 + -26 = -17 (101111)
+9 + -25 = -16 (110000)
+9 + -24 = -15 (110001)
+9 + -23 = -14 (110010)
+9 + -22 = -13 (110011)
+9 + -21 = -12 (110100)
+9 + -20 = -11 (110101)
+9 + -19 = -10 (110110)
+9 + -18 = -9 (110111)
+9 + -17 = -8 (111000)
+9 + -16 = -7 (111001)
+9 + -15 = -6 (111010)
+9 + -14 = -5 (111011)
+9 + -13 = -4 (111100)
+9 + -12 = -3 (111101)
+9 + -11 = -2 (111110)
+9 + -10 = -1 (111111)
+9 + -9 = 0 (000000)
+9 + -8 = 1 (000001)
+9 + -7 = 2 (000010)
+9 + -6 = 3 (000011)
+9 + -5 = 4 (000100)
+9 + -4 = 5 (000101)
+9 + -3 = 6 (000110)
+9 + -2 = 7 (000111)
+9 + -1 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = -32 (100000)
+10 + 23 = -31 (100001)
+10 + 24 = -30 (100010)
+10 + 25 = -29 (100011)
+10 + 26 = -28 (100100)
+10 + 27 = -27 (100101)
+10 + 28 = -26 (100110)
+10 + 29 = -25 (100111)
+10 + 30 = -24 (101000)
+10 + 31 = -23 (101001)
+10 + -32 = -22 (101010)
+10 + -31 = -21 (101011)
+10 + -30 = -20 (101100)
+10 + -29 = -19 (101101)
+10 + -28 = -18 (101110)
+10 + -27 = -17 (101111)
+10 + -26 = -16 (110000)
+10 + -25 = -15 (110001)
+10 + -24 = -14 (110010)
+10 + -23 = -13 (110011)
+10 + -22 = -12 (110100)
+10 + -21 = -11 (110101)
+10 + -20 = -10 (110110)
+10 + -19 = -9 (110111)
+10 + -18 = -8 (111000)
+10 + -17 = -7 (111001)
+10 + -16 = -6 (111010)
+10 + -15 = -5 (111011)
+10 + -14 = -4 (111100)
+10 + -13 = -3 (111101)
+10 + -12 = -2 (111110)
+10 + -11 = -1 (111111)
+10 + -10 = 0 (000000)
+10 + -9 = 1 (000001)
+10 + -8 = 2 (000010)
+10 + -7 = 3 (000011)
+10 + -6 = 4 (000100)
+10 + -5 = 5 (000101)
+10 + -4 = 6 (000110)
+10 + -3 = 7 (000111)
+10 + -2 = 8 (001000)
+10 + -1 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = -32 (100000)
+11 + 22 = -31 (100001)
+11 + 23 = -30 (100010)
+11 + 24 = -29 (100011)
+11 + 25 = -28 (100100)
+11 + 26 = -27 (100101)
+11 + 27 = -26 (100110)
+11 + 28 = -25 (100111)
+11 + 29 = -24 (101000)
+11 + 30 = -23 (101001)
+11 + 31 = -22 (101010)
+11 + -32 = -21 (101011)
+11 + -31 = -20 (101100)
+11 + -30 = -19 (101101)
+11 + -29 = -18 (101110)
+11 + -28 = -17 (101111)
+11 + -27 = -16 (110000)
+11 + -26 = -15 (110001)
+11 + -25 = -14 (110010)
+11 + -24 = -13 (110011)
+11 + -23 = -12 (110100)
+11 + -22 = -11 (110101)
+11 + -21 = -10 (110110)
+11 + -20 = -9 (110111)
+11 + -19 = -8 (111000)
+11 + -18 = -7 (111001)
+11 + -17 = -6 (111010)
+11 + -16 = -5 (111011)
+11 + -15 = -4 (111100)
+11 + -14 = -3 (111101)
+11 + -13 = -2 (111110)
+11 + -12 = -1 (111111)
+11 + -11 = 0 (000000)
+11 + -10 = 1 (000001)
+11 + -9 = 2 (000010)
+11 + -8 = 3 (000011)
+11 + -7 = 4 (000100)
+11 + -6 = 5 (000101)
+11 + -5 = 6 (000110)
+11 + -4 = 7 (000111)
+11 + -3 = 8 (001000)
+11 + -2 = 9 (001001)
+11 + -1 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = -32 (100000)
+12 + 21 = -31 (100001)
+12 + 22 = -30 (100010)
+12 + 23 = -29 (100011)
+12 + 24 = -28 (100100)
+12 + 25 = -27 (100101)
+12 + 26 = -26 (100110)
+12 + 27 = -25 (100111)
+12 + 28 = -24 (101000)
+12 + 29 = -23 (101001)
+12 + 30 = -22 (101010)
+12 + 31 = -21 (101011)
+12 + -32 = -20 (101100)
+12 + -31 = -19 (101101)
+12 + -30 = -18 (101110)
+12 + -29 = -17 (101111)
+12 + -28 = -16 (110000)
+12 + -27 = -15 (110001)
+12 + -26 = -14 (110010)
+12 + -25 = -13 (110011)
+12 + -24 = -12 (110100)
+12 + -23 = -11 (110101)
+12 + -22 = -10 (110110)
+12 + -21 = -9 (110111)
+12 + -20 = -8 (111000)
+12 + -19 = -7 (111001)
+12 + -18 = -6 (111010)
+12 + -17 = -5 (111011)
+12 + -16 = -4 (111100)
+12 + -15 = -3 (111101)
+12 + -14 = -2 (111110)
+12 + -13 = -1 (111111)
+12 + -12 = 0 (000000)
+12 + -11 = 1 (000001)
+12 + -10 = 2 (000010)
+12 + -9 = 3 (000011)
+12 + -8 = 4 (000100)
+12 + -7 = 5 (000101)
+12 + -6 = 6 (000110)
+12 + -5 = 7 (000111)
+12 + -4 = 8 (001000)
+12 + -3 = 9 (001001)
+12 + -2 = 10 (001010)
+12 + -1 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = -32 (100000)
+13 + 20 = -31 (100001)
+13 + 21 = -30 (100010)
+13 + 22 = -29 (100011)
+13 + 23 = -28 (100100)
+13 + 24 = -27 (100101)
+13 + 25 = -26 (100110)
+13 + 26 = -25 (100111)
+13 + 27 = -24 (101000)
+13 + 28 = -23 (101001)
+13 + 29 = -22 (101010)
+13 + 30 = -21 (101011)
+13 + 31 = -20 (101100)
+13 + -32 = -19 (101101)
+13 + -31 = -18 (101110)
+13 + -30 = -17 (101111)
+13 + -29 = -16 (110000)
+13 + -28 = -15 (110001)
+13 + -27 = -14 (110010)
+13 + -26 = -13 (110011)
+13 + -25 = -12 (110100)
+13 + -24 = -11 (110101)
+13 + -23 = -10 (110110)
+13 + -22 = -9 (110111)
+13 + -21 = -8 (111000)
+13 + -20 = -7 (111001)
+13 + -19 = -6 (111010)
+13 + -18 = -5 (111011)
+13 + -17 = -4 (111100)
+13 + -16 = -3 (111101)
+13 + -15 = -2 (111110)
+13 + -14 = -1 (111111)
+13 + -13 = 0 (000000)
+13 + -12 = 1 (000001)
+13 + -11 = 2 (000010)
+13 + -10 = 3 (000011)
+13 + -9 = 4 (000100)
+13 + -8 = 5 (000101)
+13 + -7 = 6 (000110)
+13 + -6 = 7 (000111)
+13 + -5 = 8 (001000)
+13 + -4 = 9 (001001)
+13 + -3 = 10 (001010)
+13 + -2 = 11 (001011)
+13 + -1 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = -32 (100000)
+14 + 19 = -31 (100001)
+14 + 20 = -30 (100010)
+14 + 21 = -29 (100011)
+14 + 22 = -28 (100100)
+14 + 23 = -27 (100101)
+14 + 24 = -26 (100110)
+14 + 25 = -25 (100111)
+14 + 26 = -24 (101000)
+14 + 27 = -23 (101001)
+14 + 28 = -22 (101010)
+14 + 29 = -21 (101011)
+14 + 30 = -20 (101100)
+14 + 31 = -19 (101101)
+14 + -32 = -18 (101110)
+14 + -31 = -17 (101111)
+14 + -30 = -16 (110000)
+14 + -29 = -15 (110001)
+14 + -28 = -14 (110010)
+14 + -27 = -13 (110011)
+14 + -26 = -12 (110100)
+14 + -25 = -11 (110101)
+14 + -24 = -10 (110110)
+14 + -23 = -9 (110111)
+14 + -22 = -8 (111000)
+14 + -21 = -7 (111001)
+14 + -20 = -6 (111010)
+14 + -19 = -5 (111011)
+14 + -18 = -4 (111100)
+14 + -17 = -3 (111101)
+14 + -16 = -2 (111110)
+14 + -15 = -1 (111111)
+14 + -14 = 0 (000000)
+14 + -13 = 1 (000001)
+14 + -12 = 2 (000010)
+14 + -11 = 3 (000011)
+14 + -10 = 4 (000100)
+14 + -9 = 5 (000101)
+14 + -8 = 6 (000110)
+14 + -7 = 7 (000111)
+14 + -6 = 8 (001000)
+14 + -5 = 9 (001001)
+14 + -4 = 10 (001010)
+14 + -3 = 11 (001011)
+14 + -2 = 12 (001100)
+14 + -1 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = -32 (100000)
+15 + 18 = -31 (100001)
+15 + 19 = -30 (100010)
+15 + 20 = -29 (100011)
+15 + 21 = -28 (100100)
+15 + 22 = -27 (100101)
+15 + 23 = -26 (100110)
+15 + 24 = -25 (100111)
+15 + 25 = -24 (101000)
+15 + 26 = -23 (101001)
+15 + 27 = -22 (101010)
+15 + 28 = -21 (101011)
+15 + 29 = -20 (101100)
+15 + 30 = -19 (101101)
+15 + 31 = -18 (101110)
+15 + -32 = -17 (101111)
+15 + -31 = -16 (110000)
+15 + -30 = -15 (110001)
+15 + -29 = -14 (110010)
+15 + -28 = -13 (110011)
+15 + -27 = -12 (110100)
+15 + -26 = -11 (110101)
+15 + -25 = -10 (110110)
+15 + -24 = -9 (110111)
+15 + -23 = -8 (111000)
+15 + -22 = -7 (111001)
+15 + -21 = -6 (111010)
+15 + -20 = -5 (111011)
+15 + -19 = -4 (111100)
+15 + -18 = -3 (111101)
+15 + -17 = -2 (111110)
+15 + -16 = -1 (111111)
+15 + -15 = 0 (000000)
+15 + -14 = 1 (000001)
+15 + -13 = 2 (000010)
+15 + -12 = 3 (000011)
+15 + -11 = 4 (000100)
+15 + -10 = 5 (000101)
+15 + -9 = 6 (000110)
+15 + -8 = 7 (000111)
+15 + -7 = 8 (001000)
+15 + -6 = 9 (001001)
+15 + -5 = 10 (001010)
+15 + -4 = 11 (001011)
+15 + -3 = 12 (001100)
+15 + -2 = 13 (001101)
+15 + -1 = 14 (001110)
+16 + 0 = 16 (010000)
+16 + 1 = 17 (010001)
+16 + 2 = 18 (010010)
+16 + 3 = 19 (010011)
+16 + 4 = 20 (010100)
+16 + 5 = 21 (010101)
+16 + 6 = 22 (010110)
+16 + 7 = 23 (010111)
+16 + 8 = 24 (011000)
+16 + 9 = 25 (011001)
+16 + 10 = 26 (011010)
+16 + 11 = 27 (011011)
+16 + 12 = 28 (011100)
+16 + 13 = 29 (011101)
+16 + 14 = 30 (011110)
+16 + 15 = 31 (011111)
+16 + 16 = -32 (100000)
+16 + 17 = -31 (100001)
+16 + 18 = -30 (100010)
+16 + 19 = -29 (100011)
+16 + 20 = -28 (100100)
+16 + 21 = -27 (100101)
+16 + 22 = -26 (100110)
+16 + 23 = -25 (100111)
+16 + 24 = -24 (101000)
+16 + 25 = -23 (101001)
+16 + 26 = -22 (101010)
+16 + 27 = -21 (101011)
+16 + 28 = -20 (101100)
+16 + 29 = -19 (101101)
+16 + 30 = -18 (101110)
+16 + 31 = -17 (101111)
+16 + -32 = -16 (110000)
+16 + -31 = -15 (110001)
+16 + -30 = -14 (110010)
+16 + -29 = -13 (110011)
+16 + -28 = -12 (110100)
+16 + -27 = -11 (110101)
+16 + -26 = -10 (110110)
+16 + -25 = -9 (110111)
+16 + -24 = -8 (111000)
+16 + -23 = -7 (111001)
+16 + -22 = -6 (111010)
+16 + -21 = -5 (111011)
+16 + -20 = -4 (111100)
+16 + -19 = -3 (111101)
+16 + -18 = -2 (111110)
+16 + -17 = -1 (111111)
+16 + -16 = 0 (000000)
+16 + -15 = 1 (000001)
+16 + -14 = 2 (000010)
+16 + -13 = 3 (000011)
+16 + -12 = 4 (000100)
+16 + -11 = 5 (000101)
+16 + -10 = 6 (000110)
+16 + -9 = 7 (000111)
+16 + -8 = 8 (001000)
+16 + -7 = 9 (001001)
+16 + -6 = 10 (001010)
+16 + -5 = 11 (001011)
+16 + -4 = 12 (001100)
+16 + -3 = 13 (001101)
+16 + -2 = 14 (001110)
+16 + -1 = 15 (001111)
+17 + 0 = 17 (010001)
+17 + 1 = 18 (010010)
+17 + 2 = 19 (010011)
+17 + 3 = 20 (010100)
+17 + 4 = 21 (010101)
+17 + 5 = 22 (010110)
+17 + 6 = 23 (010111)
+17 + 7 = 24 (011000)
+17 + 8 = 25 (011001)
+17 + 9 = 26 (011010)
+17 + 10 = 27 (011011)
+17 + 11 = 28 (011100)
+17 + 12 = 29 (011101)
+17 + 13 = 30 (011110)
+17 + 14 = 31 (011111)
+17 + 15 = -32 (100000)
+17 + 16 = -31 (100001)
+17 + 17 = -30 (100010)
+17 + 18 = -29 (100011)
+17 + 19 = -28 (100100)
+17 + 20 = -27 (100101)
+17 + 21 = -26 (100110)
+17 + 22 = -25 (100111)
+17 + 23 = -24 (101000)
+17 + 24 = -23 (101001)
+17 + 25 = -22 (101010)
+17 + 26 = -21 (101011)
+17 + 27 = -20 (101100)
+17 + 28 = -19 (101101)
+17 + 29 = -18 (101110)
+17 + 30 = -17 (101111)
+17 + 31 = -16 (110000)
+17 + -32 = -15 (110001)
+17 + -31 = -14 (110010)
+17 + -30 = -13 (110011)
+17 + -29 = -12 (110100)
+17 + -28 = -11 (110101)
+17 + -27 = -10 (110110)
+17 + -26 = -9 (110111)
+17 + -25 = -8 (111000)
+17 + -24 = -7 (111001)
+17 + -23 = -6 (111010)
+17 + -22 = -5 (111011)
+17 + -21 = -4 (111100)
+17 + -20 = -3 (111101)
+17 + -19 = -2 (111110)
+17 + -18 = -1 (111111)
+17 + -17 = 0 (000000)
+17 + -16 = 1 (000001)
+17 + -15 = 2 (000010)
+17 + -14 = 3 (000011)
+17 + -13 = 4 (000100)
+17 + -12 = 5 (000101)
+17 + -11 = 6 (000110)
+17 + -10 = 7 (000111)
+17 + -9 = 8 (001000)
+17 + -8 = 9 (001001)
+17 + -7 = 10 (001010)
+17 + -6 = 11 (001011)
+17 + -5 = 12 (001100)
+17 + -4 = 13 (001101)
+17 + -3 = 14 (001110)
+17 + -2 = 15 (001111)
+17 + -1 = 16 (010000)
+18 + 0 = 18 (010010)
+18 + 1 = 19 (010011)
+18 + 2 = 20 (010100)
+18 + 3 = 21 (010101)
+18 + 4 = 22 (010110)
+18 + 5 = 23 (010111)
+18 + 6 = 24 (011000)
+18 + 7 = 25 (011001)
+18 + 8 = 26 (011010)
+18 + 9 = 27 (011011)
+18 + 10 = 28 (011100)
+18 + 11 = 29 (011101)
+18 + 12 = 30 (011110)
+18 + 13 = 31 (011111)
+18 + 14 = -32 (100000)
+18 + 15 = -31 (100001)
+18 + 16 = -30 (100010)
+18 + 17 = -29 (100011)
+18 + 18 = -28 (100100)
+18 + 19 = -27 (100101)
+18 + 20 = -26 (100110)
+18 + 21 = -25 (100111)
+18 + 22 = -24 (101000)
+18 + 23 = -23 (101001)
+18 + 24 = -22 (101010)
+18 + 25 = -21 (101011)
+18 + 26 = -20 (101100)
+18 + 27 = -19 (101101)
+18 + 28 = -18 (101110)
+18 + 29 = -17 (101111)
+18 + 30 = -16 (110000)
+18 + 31 = -15 (110001)
+18 + -32 = -14 (110010)
+18 + -31 = -13 (110011)
+18 + -30 = -12 (110100)
+18 + -29 = -11 (110101)
+18 + -28 = -10 (110110)
+18 + -27 = -9 (110111)
+18 + -26 = -8 (111000)
+18 + -25 = -7 (111001)
+18 + -24 = -6 (111010)
+18 + -23 = -5 (111011)
+18 + -22 = -4 (111100)
+18 + -21 = -3 (111101)
+18 + -20 = -2 (111110)
+18 + -19 = -1 (111111)
+18 + -18 = 0 (000000)
+18 + -17 = 1 (000001)
+18 + -16 = 2 (000010)
+18 + -15 = 3 (000011)
+18 + -14 = 4 (000100)
+18 + -13 = 5 (000101)
+18 + -12 = 6 (000110)
+18 + -11 = 7 (000111)
+18 + -10 = 8 (001000)
+18 + -9 = 9 (001001)
+18 + -8 = 10 (001010)
+18 + -7 = 11 (001011)
+18 + -6 = 12 (001100)
+18 + -5 = 13 (001101)
+18 + -4 = 14 (001110)
+18 + -3 = 15 (001111)
+18 + -2 = 16 (010000)
+18 + -1 = 17 (010001)
+19 + 0 = 19 (010011)
+19 + 1 = 20 (010100)
+19 + 2 = 21 (010101)
+19 + 3 = 22 (010110)
+19 + 4 = 23 (010111)
+19 + 5 = 24 (011000)
+19 + 6 = 25 (011001)
+19 + 7 = 26 (011010)
+19 + 8 = 27 (011011)
+19 + 9 = 28 (011100)
+19 + 10 = 29 (011101)
+19 + 11 = 30 (011110)
+19 + 12 = 31 (011111)
+19 + 13 = -32 (100000)
+19 + 14 = -31 (100001)
+19 + 15 = -30 (100010)
+19 + 16 = -29 (100011)
+19 + 17 = -28 (100100)
+19 + 18 = -27 (100101)
+19 + 19 = -26 (100110)
+19 + 20 = -25 (100111)
+19 + 21 = -24 (101000)
+19 + 22 = -23 (101001)
+19 + 23 = -22 (101010)
+19 + 24 = -21 (101011)
+19 + 25 = -20 (101100)
+19 + 26 = -19 (101101)
+19 + 27 = -18 (101110)
+19 + 28 = -17 (101111)
+19 + 29 = -16 (110000)
+19 + 30 = -15 (110001)
+19 + 31 = -14 (110010)
+19 + -32 = -13 (110011)
+19 + -31 = -12 (110100)
+19 + -30 = -11 (110101)
+19 + -29 = -10 (110110)
+19 + -28 = -9 (110111)
+19 + -27 = -8 (111000)
+19 + -26 = -7 (111001)
+19 + -25 = -6 (111010)
+19 + -24 = -5 (111011)
+19 + -23 = -4 (111100)
+19 + -22 = -3 (111101)
+19 + -21 = -2 (111110)
+19 + -20 = -1 (111111)
+19 + -19 = 0 (000000)
+19 + -18 = 1 (000001)
+19 + -17 = 2 (000010)
+19 + -16 = 3 (000011)
+19 + -15 = 4 (000100)
+19 + -14 = 5 (000101)
+19 + -13 = 6 (000110)
+19 + -12 = 7 (000111)
+19 + -11 = 8 (001000)
+19 + -10 = 9 (001001)
+19 + -9 = 10 (001010)
+19 + -8 = 11 (001011)
+19 + -7 = 12 (001100)
+19 + -6 = 13 (001101)
+19 + -5 = 14 (001110)
+19 + -4 = 15 (001111)
+19 + -3 = 16 (010000)
+19 + -2 = 17 (010001)
+19 + -1 = 18 (010010)
+20 + 0 = 20 (010100)
+20 + 1 = 21 (010101)
+20 + 2 = 22 (010110)
+20 + 3 = 23 (010111)
+20 + 4 = 24 (011000)
+20 + 5 = 25 (011001)
+20 + 6 = 26 (011010)
+20 + 7 = 27 (011011)
+20 + 8 = 28 (011100)
+20 + 9 = 29 (011101)
+20 + 10 = 30 (011110)
+20 + 11 = 31 (011111)
+20 + 12 = -32 (100000)
+20 + 13 = -31 (100001)
+20 + 14 = -30 (100010)
+20 + 15 = -29 (100011)
+20 + 16 = -28 (100100)
+20 + 17 = -27 (100101)
+20 + 18 = -26 (100110)
+20 + 19 = -25 (100111)
+20 + 20 = -24 (101000)
+20 + 21 = -23 (101001)
+20 + 22 = -22 (101010)
+20 + 23 = -21 (101011)
+20 + 24 = -20 (101100)
+20 + 25 = -19 (101101)
+20 + 26 = -18 (101110)
+20 + 27 = -17 (101111)
+20 + 28 = -16 (110000)
+20 + 29 = -15 (110001)
+20 + 30 = -14 (110010)
+20 + 31 = -13 (110011)
+20 + -32 = -12 (110100)
+20 + -31 = -11 (110101)
+20 + -30 = -10 (110110)
+20 + -29 = -9 (110111)
+20 + -28 = -8 (111000)
+20 + -27 = -7 (111001)
+20 + -26 = -6 (111010)
+20 + -25 = -5 (111011)
+20 + -24 = -4 (111100)
+20 + -23 = -3 (111101)
+20 + -22 = -2 (111110)
+20 + -21 = -1 (111111)
+20 + -20 = 0 (000000)
+20 + -19 = 1 (000001)
+20 + -18 = 2 (000010)
+20 + -17 = 3 (000011)
+20 + -16 = 4 (000100)
+20 + -15 = 5 (000101)
+20 + -14 = 6 (000110)
+20 + -13 = 7 (000111)
+20 + -12 = 8 (001000)
+20 + -11 = 9 (001001)
+20 + -10 = 10 (001010)
+20 + -9 = 11 (001011)
+20 + -8 = 12 (001100)
+20 + -7 = 13 (001101)
+20 + -6 = 14 (001110)
+20 + -5 = 15 (001111)
+20 + -4 = 16 (010000)
+20 + -3 = 17 (010001)
+20 + -2 = 18 (010010)
+20 + -1 = 19 (010011)
+21 + 0 = 21 (010101)
+21 + 1 = 22 (010110)
+21 + 2 = 23 (010111)
+21 + 3 = 24 (011000)
+21 + 4 = 25 (011001)
+21 + 5 = 26 (011010)
+21 + 6 = 27 (011011)
+21 + 7 = 28 (011100)
+21 + 8 = 29 (011101)
+21 + 9 = 30 (011110)
+21 + 10 = 31 (011111)
+21 + 11 = -32 (100000)
+21 + 12 = -31 (100001)
+21 + 13 = -30 (100010)
+21 + 14 = -29 (100011)
+21 + 15 = -28 (100100)
+21 + 16 = -27 (100101)
+21 + 17 = -26 (100110)
+21 + 18 = -25 (100111)
+21 + 19 = -24 (101000)
+21 + 20 = -23 (101001)
+21 + 21 = -22 (101010)
+21 + 22 = -21 (101011)
+21 + 23 = -20 (101100)
+21 + 24 = -19 (101101)
+21 + 25 = -18 (101110)
+21 + 26 = -17 (101111)
+21 + 27 = -16 (110000)
+21 + 28 = -15 (110001)
+21 + 29 = -14 (110010)
+21 + 30 = -13 (110011)
+21 + 31 = -12 (110100)
+21 + -32 = -11 (110101)
+21 + -31 = -10 (110110)
+21 + -30 = -9 (110111)
+21 + -29 = -8 (111000)
+21 + -28 = -7 (111001)
+21 + -27 = -6 (111010)
+21 + -26 = -5 (111011)
+21 + -25 = -4 (111100)
+21 + -24 = -3 (111101)
+21 + -23 = -2 (111110)
+21 + -22 = -1 (111111)
+21 + -21 = 0 (000000)
+21 + -20 = 1 (000001)
+21 + -19 = 2 (000010)
+21 + -18 = 3 (000011)
+21 + -17 = 4 (000100)
+21 + -16 = 5 (000101)
+21 + -15 = 6 (000110)
+21 + -14 = 7 (000111)
+21 + -13 = 8 (001000)
+21 + -12 = 9 (001001)
+21 + -11 = 10 (001010)
+21 + -10 = 11 (001011)
+21 + -9 = 12 (001100)
+21 + -8 = 13 (001101)
+21 + -7 = 14 (001110)
+21 + -6 = 15 (001111)
+21 + -5 = 16 (010000)
+21 + -4 = 17 (010001)
+21 + -3 = 18 (010010)
+21 + -2 = 19 (010011)
+21 + -1 = 20 (010100)
+22 + 0 = 22 (010110)
+22 + 1 = 23 (010111)
+22 + 2 = 24 (011000)
+22 + 3 = 25 (011001)
+22 + 4 = 26 (011010)
+22 + 5 = 27 (011011)
+22 + 6 = 28 (011100)
+22 + 7 = 29 (011101)
+22 + 8 = 30 (011110)
+22 + 9 = 31 (011111)
+22 + 10 = -32 (100000)
+22 + 11 = -31 (100001)
+22 + 12 = -30 (100010)
+22 + 13 = -29 (100011)
+22 + 14 = -28 (100100)
+22 + 15 = -27 (100101)
+22 + 16 = -26 (100110)
+22 + 17 = -25 (100111)
+22 + 18 = -24 (101000)
+22 + 19 = -23 (101001)
+22 + 20 = -22 (101010)
+22 + 21 = -21 (101011)
+22 + 22 = -20 (101100)
+22 + 23 = -19 (101101)
+22 + 24 = -18 (101110)
+22 + 25 = -17 (101111)
+22 + 26 = -16 (110000)
+22 + 27 = -15 (110001)
+22 + 28 = -14 (110010)
+22 + 29 = -13 (110011)
+22 + 30 = -12 (110100)
+22 + 31 = -11 (110101)
+22 + -32 = -10 (110110)
+22 + -31 = -9 (110111)
+22 + -30 = -8 (111000)
+22 + -29 = -7 (111001)
+22 + -28 = -6 (111010)
+22 + -27 = -5 (111011)
+22 + -26 = -4 (111100)
+22 + -25 = -3 (111101)
+22 + -24 = -2 (111110)
+22 + -23 = -1 (111111)
+22 + -22 = 0 (000000)
+22 + -21 = 1 (000001)
+22 + -20 = 2 (000010)
+22 + -19 = 3 (000011)
+22 + -18 = 4 (000100)
+22 + -17 = 5 (000101)
+22 + -16 = 6 (000110)
+22 + -15 = 7 (000111)
+22 + -14 = 8 (001000)
+22 + -13 = 9 (001001)
+22 + -12 = 10 (001010)
+22 + -11 = 11 (001011)
+22 + -10 = 12 (001100)
+22 + -9 = 13 (001101)
+22 + -8 = 14 (001110)
+22 + -7 = 15 (001111)
+22 + -6 = 16 (010000)
+22 + -5 = 17 (010001)
+22 + -4 = 18 (010010)
+22 + -3 = 19 (010011)
+22 + -2 = 20 (010100)
+22 + -1 = 21 (010101)
+23 + 0 = 23 (010111)
+23 + 1 = 24 (011000)
+23 + 2 = 25 (011001)
+23 + 3 = 26 (011010)
+23 + 4 = 27 (011011)
+23 + 5 = 28 (011100)
+23 + 6 = 29 (011101)
+23 + 7 = 30 (011110)
+23 + 8 = 31 (011111)
+23 + 9 = -32 (100000)
+23 + 10 = -31 (100001)
+23 + 11 = -30 (100010)
+23 + 12 = -29 (100011)
+23 + 13 = -28 (100100)
+23 + 14 = -27 (100101)
+23 + 15 = -26 (100110)
+23 + 16 = -25 (100111)
+23 + 17 = -24 (101000)
+23 + 18 = -23 (101001)
+23 + 19 = -22 (101010)
+23 + 20 = -21 (101011)
+23 + 21 = -20 (101100)
+23 + 22 = -19 (101101)
+23 + 23 = -18 (101110)
+23 + 24 = -17 (101111)
+23 + 25 = -16 (110000)
+23 + 26 = -15 (110001)
+23 + 27 = -14 (110010)
+23 + 28 = -13 (110011)
+23 + 29 = -12 (110100)
+23 + 30 = -11 (110101)
+23 + 31 = -10 (110110)
+23 + -32 = -9 (110111)
+23 + -31 = -8 (111000)
+23 + -30 = -7 (111001)
+23 + -29 = -6 (111010)
+23 + -28 = -5 (111011)
+23 + -27 = -4 (111100)
+23 + -26 = -3 (111101)
+23 + -25 = -2 (111110)
+23 + -24 = -1 (111111)
+23 + -23 = 0 (000000)
+23 + -22 = 1 (000001)
+23 + -21 = 2 (000010)
+23 + -20 = 3 (000011)
+23 + -19 = 4 (000100)
+23 + -18 = 5 (000101)
+23 + -17 = 6 (000110)
+23 + -16 = 7 (000111)
+23 + -15 = 8 (001000)
+23 + -14 = 9 (001001)
+23 + -13 = 10 (001010)
+23 + -12 = 11 (001011)
+23 + -11 = 12 (001100)
+23 + -10 = 13 (001101)
+23 + -9 = 14 (001110)
+23 + -8 = 15 (001111)
+23 + -7 = 16 (010000)
+23 + -6 = 17 (010001)
+23 + -5 = 18 (010010)
+23 + -4 = 19 (010011)
+23 + -3 = 20 (010100)
+23 + -2 = 21 (010101)
+23 + -1 = 22 (010110)
+24 + 0 = 24 (011000)
+24 + 1 = 25 (011001)
+24 + 2 = 26 (011010)
+24 + 3 = 27 (011011)
+24 + 4 = 28 (011100)
+24 + 5 = 29 (011101)
+24 + 6 = 30 (011110)
+24 + 7 = 31 (011111)
+24 + 8 = -32 (100000)
+24 + 9 = -31 (100001)
+24 + 10 = -30 (100010)
+24 + 11 = -29 (100011)
+24 + 12 = -28 (100100)
+24 + 13 = -27 (100101)
+24 + 14 = -26 (100110)
+24 + 15 = -25 (100111)
+24 + 16 = -24 (101000)
+24 + 17 = -23 (101001)
+24 + 18 = -22 (101010)
+24 + 19 = -21 (101011)
+24 + 20 = -20 (101100)
+24 + 21 = -19 (101101)
+24 + 22 = -18 (101110)
+24 + 23 = -17 (101111)
+24 + 24 = -16 (110000)
+24 + 25 = -15 (110001)
+24 + 26 = -14 (110010)
+24 + 27 = -13 (110011)
+24 + 28 = -12 (110100)
+24 + 29 = -11 (110101)
+24 + 30 = -10 (110110)
+24 + 31 = -9 (110111)
+24 + -32 = -8 (111000)
+24 + -31 = -7 (111001)
+24 + -30 = -6 (111010)
+24 + -29 = -5 (111011)
+24 + -28 = -4 (111100)
+24 + -27 = -3 (111101)
+24 + -26 = -2 (111110)
+24 + -25 = -1 (111111)
+24 + -24 = 0 (000000)
+24 + -23 = 1 (000001)
+24 + -22 = 2 (000010)
+24 + -21 = 3 (000011)
+24 + -20 = 4 (000100)
+24 + -19 = 5 (000101)
+24 + -18 = 6 (000110)
+24 + -17 = 7 (000111)
+24 + -16 = 8 (001000)
+24 + -15 = 9 (001001)
+24 + -14 = 10 (001010)
+24 + -13 = 11 (001011)
+24 + -12 = 12 (001100)
+24 + -11 = 13 (001101)
+24 + -10 = 14 (001110)
+24 + -9 = 15 (001111)
+24 + -8 = 16 (010000)
+24 + -7 = 17 (010001)
+24 + -6 = 18 (010010)
+24 + -5 = 19 (010011)
+24 + -4 = 20 (010100)
+24 + -3 = 21 (010101)
+24 + -2 = 22 (010110)
+24 + -1 = 23 (010111)
+25 + 0 = 25 (011001)
+25 + 1 = 26 (011010)
+25 + 2 = 27 (011011)
+25 + 3 = 28 (011100)
+25 + 4 = 29 (011101)
+25 + 5 = 30 (011110)
+25 + 6 = 31 (011111)
+25 + 7 = -32 (100000)
+25 + 8 = -31 (100001)
+25 + 9 = -30 (100010)
+25 + 10 = -29 (100011)
+25 + 11 = -28 (100100)
+25 + 12 = -27 (100101)
+25 + 13 = -26 (100110)
+25 + 14 = -25 (100111)
+25 + 15 = -24 (101000)
+25 + 16 = -23 (101001)
+25 + 17 = -22 (101010)
+25 + 18 = -21 (101011)
+25 + 19 = -20 (101100)
+25 + 20 = -19 (101101)
+25 + 21 = -18 (101110)
+25 + 22 = -17 (101111)
+25 + 23 = -16 (110000)
+25 + 24 = -15 (110001)
+25 + 25 = -14 (110010)
+25 + 26 = -13 (110011)
+25 + 27 = -12 (110100)
+25 + 28 = -11 (110101)
+25 + 29 = -10 (110110)
+25 + 30 = -9 (110111)
+25 + 31 = -8 (111000)
+25 + -32 = -7 (111001)
+25 + -31 = -6 (111010)
+25 + -30 = -5 (111011)
+25 + -29 = -4 (111100)
+25 + -28 = -3 (111101)
+25 + -27 = -2 (111110)
+25 + -26 = -1 (111111)
+25 + -25 = 0 (000000)
+25 + -24 = 1 (000001)
+25 + -23 = 2 (000010)
+25 + -22 = 3 (000011)
+25 + -21 = 4 (000100)
+25 + -20 = 5 (000101)
+25 + -19 = 6 (000110)
+25 + -18 = 7 (000111)
+25 + -17 = 8 (001000)
+25 + -16 = 9 (001001)
+25 + -15 = 10 (001010)
+25 + -14 = 11 (001011)
+25 + -13 = 12 (001100)
+25 + -12 = 13 (001101)
+25 + -11 = 14 (001110)
+25 + -10 = 15 (001111)
+25 + -9 = 16 (010000)
+25 + -8 = 17 (010001)
+25 + -7 = 18 (010010)
+25 + -6 = 19 (010011)
+25 + -5 = 20 (010100)
+25 + -4 = 21 (010101)
+25 + -3 = 22 (010110)
+25 + -2 = 23 (010111)
+25 + -1 = 24 (011000)
+26 + 0 = 26 (011010)
+26 + 1 = 27 (011011)
+26 + 2 = 28 (011100)
+26 + 3 = 29 (011101)
+26 + 4 = 30 (011110)
+26 + 5 = 31 (011111)
+26 + 6 = -32 (100000)
+26 + 7 = -31 (100001)
+26 + 8 = -30 (100010)
+26 + 9 = -29 (100011)
+26 + 10 = -28 (100100)
+26 + 11 = -27 (100101)
+26 + 12 = -26 (100110)
+26 + 13 = -25 (100111)
+26 + 14 = -24 (101000)
+26 + 15 = -23 (101001)
+26 + 16 = -22 (101010)
+26 + 17 = -21 (101011)
+26 + 18 = -20 (101100)
+26 + 19 = -19 (101101)
+26 + 20 = -18 (101110)
+26 + 21 = -17 (101111)
+26 + 22 = -16 (110000)
+26 + 23 = -15 (110001)
+26 + 24 = -14 (110010)
+26 + 25 = -13 (110011)
+26 + 26 = -12 (110100)
+26 + 27 = -11 (110101)
+26 + 28 = -10 (110110)
+26 + 29 = -9 (110111)
+26 + 30 = -8 (111000)
+26 + 31 = -7 (111001)
+26 + -32 = -6 (111010)
+26 + -31 = -5 (111011)
+26 + -30 = -4 (111100)
+26 + -29 = -3 (111101)
+26 + -28 = -2 (111110)
+26 + -27 = -1 (111111)
+26 + -26 = 0 (000000)
+26 + -25 = 1 (000001)
+26 + -24 = 2 (000010)
+26 + -23 = 3 (000011)
+26 + -22 = 4 (000100)
+26 + -21 = 5 (000101)
+26 + -20 = 6 (000110)
+26 + -19 = 7 (000111)
+26 + -18 = 8 (001000)
+26 + -17 = 9 (001001)
+26 + -16 = 10 (001010)
+26 + -15 = 11 (001011)
+26 + -14 = 12 (001100)
+26 + -13 = 13 (001101)
+26 + -12 = 14 (001110)
+26 + -11 = 15 (001111)
+26 + -10 = 16 (010000)
+26 + -9 = 17 (010001)
+26 + -8 = 18 (010010)
+26 + -7 = 19 (010011)
+26 + -6 = 20 (010100)
+26 + -5 = 21 (010101)
+26 + -4 = 22 (010110)
+26 + -3 = 23 (010111)
+26 + -2 = 24 (011000)
+26 + -1 = 25 (011001)
+27 + 0 = 27 (011011)
+27 + 1 = 28 (011100)
+27 + 2 = 29 (011101)
+27 + 3 = 30 (011110)
+27 + 4 = 31 (011111)
+27 + 5 = -32 (100000)
+27 + 6 = -31 (100001)
+27 + 7 = -30 (100010)
+27 + 8 = -29 (100011)
+27 + 9 = -28 (100100)
+27 + 10 = -27 (100101)
+27 + 11 = -26 (100110)
+27 + 12 = -25 (100111)
+27 + 13 = -24 (101000)
+27 + 14 = -23 (101001)
+27 + 15 = -22 (101010)
+27 + 16 = -21 (101011)
+27 + 17 = -20 (101100)
+27 + 18 = -19 (101101)
+27 + 19 = -18 (101110)
+27 + 20 = -17 (101111)
+27 + 21 = -16 (110000)
+27 + 22 = -15 (110001)
+27 + 23 = -14 (110010)
+27 + 24 = -13 (110011)
+27 + 25 = -12 (110100)
+27 + 26 = -11 (110101)
+27 + 27 = -10 (110110)
+27 + 28 = -9 (110111)
+27 + 29 = -8 (111000)
+27 + 30 = -7 (111001)
+27 + 31 = -6 (111010)
+27 + -32 = -5 (111011)
+27 + -31 = -4 (111100)
+27 + -30 = -3 (111101)
+27 + -29 = -2 (111110)
+27 + -28 = -1 (111111)
+27 + -27 = 0 (000000)
+27 + -26 = 1 (000001)
+27 + -25 = 2 (000010)
+27 + -24 = 3 (000011)
+27 + -23 = 4 (000100)
+27 + -22 = 5 (000101)
+27 + -21 = 6 (000110)
+27 + -20 = 7 (000111)
+27 + -19 = 8 (001000)
+27 + -18 = 9 (001001)
+27 + -17 = 10 (001010)
+27 + -16 = 11 (001011)
+27 + -15 = 12 (001100)
+27 + -14 = 13 (001101)
+27 + -13 = 14 (001110)
+27 + -12 = 15 (001111)
+27 + -11 = 16 (010000)
+27 + -10 = 17 (010001)
+27 + -9 = 18 (010010)
+27 + -8 = 19 (010011)
+27 + -7 = 20 (010100)
+27 + -6 = 21 (010101)
+27 + -5 = 22 (010110)
+27 + -4 = 23 (010111)
+27 + -3 = 24 (011000)
+27 + -2 = 25 (011001)
+27 + -1 = 26 (011010)
+28 + 0 = 28 (011100)
+28 + 1 = 29 (011101)
+28 + 2 = 30 (011110)
+28 + 3 = 31 (011111)
+28 + 4 = -32 (100000)
+28 + 5 = -31 (100001)
+28 + 6 = -30 (100010)
+28 + 7 = -29 (100011)
+28 + 8 = -28 (100100)
+28 + 9 = -27 (100101)
+28 + 10 = -26 (100110)
+28 + 11 = -25 (100111)
+28 + 12 = -24 (101000)
+28 + 13 = -23 (101001)
+28 + 14 = -22 (101010)
+28 + 15 = -21 (101011)
+28 + 16 = -20 (101100)
+28 + 17 = -19 (101101)
+28 + 18 = -18 (101110)
+28 + 19 = -17 (101111)
+28 + 20 = -16 (110000)
+28 + 21 = -15 (110001)
+28 + 22 = -14 (110010)
+28 + 23 = -13 (110011)
+28 + 24 = -12 (110100)
+28 + 25 = -11 (110101)
+28 + 26 = -10 (110110)
+28 + 27 = -9 (110111)
+28 + 28 = -8 (111000)
+28 + 29 = -7 (111001)
+28 + 30 = -6 (111010)
+28 + 31 = -5 (111011)
+28 + -32 = -4 (111100)
+28 + -31 = -3 (111101)
+28 + -30 = -2 (111110)
+28 + -29 = -1 (111111)
+28 + -28 = 0 (000000)
+28 + -27 = 1 (000001)
+28 + -26 = 2 (000010)
+28 + -25 = 3 (000011)
+28 + -24 = 4 (000100)
+28 + -23 = 5 (000101)
+28 + -22 = 6 (000110)
+28 + -21 = 7 (000111)
+28 + -20 = 8 (001000)
+28 + -19 = 9 (001001)
+28 + -18 = 10 (001010)
+28 + -17 = 11 (001011)
+28 + -16 = 12 (001100)
+28 + -15 = 13 (001101)
+28 + -14 = 14 (001110)
+28 + -13 = 15 (001111)
+28 + -12 = 16 (010000)
+28 + -11 = 17 (010001)
+28 + -10 = 18 (010010)
+28 + -9 = 19 (010011)
+28 + -8 = 20 (010100)
+28 + -7 = 21 (010101)
+28 + -6 = 22 (010110)
+28 + -5 = 23 (010111)
+28 + -4 = 24 (011000)
+28 + -3 = 25 (011001)
+28 + -2 = 26 (011010)
+28 + -1 = 27 (011011)
+29 + 0 = 29 (011101)
+29 + 1 = 30 (011110)
+29 + 2 = 31 (011111)
+29 + 3 = -32 (100000)
+29 + 4 = -31 (100001)
+29 + 5 = -30 (100010)
+29 + 6 = -29 (100011)
+29 + 7 = -28 (100100)
+29 + 8 = -27 (100101)
+29 + 9 = -26 (100110)
+29 + 10 = -25 (100111)
+29 + 11 = -24 (101000)
+29 + 12 = -23 (101001)
+29 + 13 = -22 (101010)
+29 + 14 = -21 (101011)
+29 + 15 = -20 (101100)
+29 + 16 = -19 (101101)
+29 + 17 = -18 (101110)
+29 + 18 = -17 (101111)
+29 + 19 = -16 (110000)
+29 + 20 = -15 (110001)
+29 + 21 = -14 (110010)
+29 + 22 = -13 (110011)
+29 + 23 = -12 (110100)
+29 + 24 = -11 (110101)
+29 + 25 = -10 (110110)
+29 + 26 = -9 (110111)
+29 + 27 = -8 (111000)
+29 + 28 = -7 (111001)
+29 + 29 = -6 (111010)
+29 + 30 = -5 (111011)
+29 + 31 = -4 (111100)
+29 + -32 = -3 (111101)
+29 + -31 = -2 (111110)
+29 + -30 = -1 (111111)
+29 + -29 = 0 (000000)
+29 + -28 = 1 (000001)
+29 + -27 = 2 (000010)
+29 + -26 = 3 (000011)
+29 + -25 = 4 (000100)
+29 + -24 = 5 (000101)
+29 + -23 = 6 (000110)
+29 + -22 = 7 (000111)
+29 + -21 = 8 (001000)
+29 + -20 = 9 (001001)
+29 + -19 = 10 (001010)
+29 + -18 = 11 (001011)
+29 + -17 = 12 (001100)
+29 + -16 = 13 (001101)
+29 + -15 = 14 (001110)
+29 + -14 = 15 (001111)
+29 + -13 = 16 (010000)
+29 + -12 = 17 (010001)
+29 + -11 = 18 (010010)
+29 + -10 = 19 (010011)
+29 + -9 = 20 (010100)
+29 + -8 = 21 (010101)
+29 + -7 = 22 (010110)
+29 + -6 = 23 (010111)
+29 + -5 = 24 (011000)
+29 + -4 = 25 (011001)
+29 + -3 = 26 (011010)
+29 + -2 = 27 (011011)
+29 + -1 = 28 (011100)
+30 + 0 = 30 (011110)
+30 + 1 = 31 (011111)
+30 + 2 = -32 (100000)
+30 + 3 = -31 (100001)
+30 + 4 = -30 (100010)
+30 + 5 = -29 (100011)
+30 + 6 = -28 (100100)
+30 + 7 = -27 (100101)
+30 + 8 = -26 (100110)
+30 + 9 = -25 (100111)
+30 + 10 = -24 (101000)
+30 + 11 = -23 (101001)
+30 + 12 = -22 (101010)
+30 + 13 = -21 (101011)
+30 + 14 = -20 (101100)
+30 + 15 = -19 (101101)
+30 + 16 = -18 (101110)
+30 + 17 = -17 (101111)
+30 + 18 = -16 (110000)
+30 + 19 = -15 (110001)
+30 + 20 = -14 (110010)
+30 + 21 = -13 (110011)
+30 + 22 = -12 (110100)
+30 + 23 = -11 (110101)
+30 + 24 = -10 (110110)
+30 + 25 = -9 (110111)
+30 + 26 = -8 (111000)
+30 + 27 = -7 (111001)
+30 + 28 = -6 (111010)
+30 + 29 = -5 (111011)
+30 + 30 = -4 (111100)
+30 + 31 = -3 (111101)
+30 + -32 = -2 (111110)
+30 + -31 = -1 (111111)
+30 + -30 = 0 (000000)
+30 + -29 = 1 (000001)
+30 + -28 = 2 (000010)
+30 + -27 = 3 (000011)
+30 + -26 = 4 (000100)
+30 + -25 = 5 (000101)
+30 + -24 = 6 (000110)
+30 + -23 = 7 (000111)
+30 + -22 = 8 (001000)
+30 + -21 = 9 (001001)
+30 + -20 = 10 (001010)
+30 + -19 = 11 (001011)
+30 + -18 = 12 (001100)
+30 + -17 = 13 (001101)
+30 + -16 = 14 (001110)
+30 + -15 = 15 (001111)
+30 + -14 = 16 (010000)
+30 + -13 = 17 (010001)
+30 + -12 = 18 (010010)
+30 + -11 = 19 (010011)
+30 + -10 = 20 (010100)
+30 + -9 = 21 (010101)
+30 + -8 = 22 (010110)
+30 + -7 = 23 (010111)
+30 + -6 = 24 (011000)
+30 + -5 = 25 (011001)
+30 + -4 = 26 (011010)
+30 + -3 = 27 (011011)
+30 + -2 = 28 (011100)
+30 + -1 = 29 (011101)
+31 + 0 = 31 (011111)
+31 + 1 = -32 (100000)
+31 + 2 = -31 (100001)
+31 + 3 = -30 (100010)
+31 + 4 = -29 (100011)
+31 + 5 = -28 (100100)
+31 + 6 = -27 (100101)
+31 + 7 = -26 (100110)
+31 + 8 = -25 (100111)
+31 + 9 = -24 (101000)
+31 + 10 = -23 (101001)
+31 + 11 = -22 (101010)
+31 + 12 = -21 (101011)
+31 + 13 = -20 (101100)
+31 + 14 = -19 (101101)
+31 + 15 = -18 (101110)
+31 + 16 = -17 (101111)
+31 + 17 = -16 (110000)
+31 + 18 = -15 (110001)
+31 + 19 = -14 (110010)
+31 + 20 = -13 (110011)
+31 + 21 = -12 (110100)
+31 + 22 = -11 (110101)
+31 + 23 = -10 (110110)
+31 + 24 = -9 (110111)
+31 + 25 = -8 (111000)
+31 + 26 = -7 (111001)
+31 + 27 = -6 (111010)
+31 + 28 = -5 (111011)
+31 + 29 = -4 (111100)
+31 + 30 = -3 (111101)
+31 + 31 = -2 (111110)
+31 + -32 = -1 (111111)
+31 + -31 = 0 (000000)
+31 + -30 = 1 (000001)
+31 + -29 = 2 (000010)
+31 + -28 = 3 (000011)
+31 + -27 = 4 (000100)
+31 + -26 = 5 (000101)
+31 + -25 = 6 (000110)
+31 + -24 = 7 (000111)
+31 + -23 = 8 (001000)
+31 + -22 = 9 (001001)
+31 + -21 = 10 (001010)
+31 + -20 = 11 (001011)
+31 + -19 = 12 (001100)
+31 + -18 = 13 (001101)
+31 + -17 = 14 (001110)
+31 + -16 = 15 (001111)
+31 + -15 = 16 (010000)
+31 + -14 = 17 (010001)
+31 + -13 = 18 (010010)
+31 + -12 = 19 (010011)
+31 + -11 = 20 (010100)
+31 + -10 = 21 (010101)
+31 + -9 = 22 (010110)
+31 + -8 = 23 (010111)
+31 + -7 = 24 (011000)
+31 + -6 = 25 (011001)
+31 + -5 = 26 (011010)
+31 + -4 = 27 (011011)
+31 + -3 = 28 (011100)
+31 + -2 = 29 (011101)
+31 + -1 = 30 (011110)
+-32 + 0 = -32 (100000)
+-32 + 1 = -31 (100001)
+-32 + 2 = -30 (100010)
+-32 + 3 = -29 (100011)
+-32 + 4 = -28 (100100)
+-32 + 5 = -27 (100101)
+-32 + 6 = -26 (100110)
+-32 + 7 = -25 (100111)
+-32 + 8 = -24 (101000)
+-32 + 9 = -23 (101001)
+-32 + 10 = -22 (101010)
+-32 + 11 = -21 (101011)
+-32 + 12 = -20 (101100)
+-32 + 13 = -19 (101101)
+-32 + 14 = -18 (101110)
+-32 + 15 = -17 (101111)
+-32 + 16 = -16 (110000)
+-32 + 17 = -15 (110001)
+-32 + 18 = -14 (110010)
+-32 + 19 = -13 (110011)
+-32 + 20 = -12 (110100)
+-32 + 21 = -11 (110101)
+-32 + 22 = -10 (110110)
+-32 + 23 = -9 (110111)
+-32 + 24 = -8 (111000)
+-32 + 25 = -7 (111001)
+-32 + 26 = -6 (111010)
+-32 + 27 = -5 (111011)
+-32 + 28 = -4 (111100)
+-32 + 29 = -3 (111101)
+-32 + 30 = -2 (111110)
+-32 + 31 = -1 (111111)
+-32 + -32 = 0 (000000)
+-32 + -31 = 1 (000001)
+-32 + -30 = 2 (000010)
+-32 + -29 = 3 (000011)
+-32 + -28 = 4 (000100)
+-32 + -27 = 5 (000101)
+-32 + -26 = 6 (000110)
+-32 + -25 = 7 (000111)
+-32 + -24 = 8 (001000)
+-32 + -23 = 9 (001001)
+-32 + -22 = 10 (001010)
+-32 + -21 = 11 (001011)
+-32 + -20 = 12 (001100)
+-32 + -19 = 13 (001101)
+-32 + -18 = 14 (001110)
+-32 + -17 = 15 (001111)
+-32 + -16 = 16 (010000)
+-32 + -15 = 17 (010001)
+-32 + -14 = 18 (010010)
+-32 + -13 = 19 (010011)
+-32 + -12 = 20 (010100)
+-32 + -11 = 21 (010101)
+-32 + -10 = 22 (010110)
+-32 + -9 = 23 (010111)
+-32 + -8 = 24 (011000)
+-32 + -7 = 25 (011001)
+-32 + -6 = 26 (011010)
+-32 + -5 = 27 (011011)
+-32 + -4 = 28 (011100)
+-32 + -3 = 29 (011101)
+-32 + -2 = 30 (011110)
+-32 + -1 = 31 (011111)
+-31 + 0 = -31 (100001)
+-31 + 1 = -30 (100010)
+-31 + 2 = -29 (100011)
+-31 + 3 = -28 (100100)
+-31 + 4 = -27 (100101)
+-31 + 5 = -26 (100110)
+-31 + 6 = -25 (100111)
+-31 + 7 = -24 (101000)
+-31 + 8 = -23 (101001)
+-31 + 9 = -22 (101010)
+-31 + 10 = -21 (101011)
+-31 + 11 = -20 (101100)
+-31 + 12 = -19 (101101)
+-31 + 13 = -18 (101110)
+-31 + 14 = -17 (101111)
+-31 + 15 = -16 (110000)
+-31 + 16 = -15 (110001)
+-31 + 17 = -14 (110010)
+-31 + 18 = -13 (110011)
+-31 + 19 = -12 (110100)
+-31 + 20 = -11 (110101)
+-31 + 21 = -10 (110110)
+-31 + 22 = -9 (110111)
+-31 + 23 = -8 (111000)
+-31 + 24 = -7 (111001)
+-31 + 25 = -6 (111010)
+-31 + 26 = -5 (111011)
+-31 + 27 = -4 (111100)
+-31 + 28 = -3 (111101)
+-31 + 29 = -2 (111110)
+-31 + 30 = -1 (111111)
+-31 + 31 = 0 (000000)
+-31 + -32 = 1 (000001)
+-31 + -31 = 2 (000010)
+-31 + -30 = 3 (000011)
+-31 + -29 = 4 (000100)
+-31 + -28 = 5 (000101)
+-31 + -27 = 6 (000110)
+-31 + -26 = 7 (000111)
+-31 + -25 = 8 (001000)
+-31 + -24 = 9 (001001)
+-31 + -23 = 10 (001010)
+-31 + -22 = 11 (001011)
+-31 + -21 = 12 (001100)
+-31 + -20 = 13 (001101)
+-31 + -19 = 14 (001110)
+-31 + -18 = 15 (001111)
+-31 + -17 = 16 (010000)
+-31 + -16 = 17 (010001)
+-31 + -15 = 18 (010010)
+-31 + -14 = 19 (010011)
+-31 + -13 = 20 (010100)
+-31 + -12 = 21 (010101)
+-31 + -11 = 22 (010110)
+-31 + -10 = 23 (010111)
+-31 + -9 = 24 (011000)
+-31 + -8 = 25 (011001)
+-31 + -7 = 26 (011010)
+-31 + -6 = 27 (011011)
+-31 + -5 = 28 (011100)
+-31 + -4 = 29 (011101)
+-31 + -3 = 30 (011110)
+-31 + -2 = 31 (011111)
+-31 + -1 = -32 (100000)
+-30 + 0 = -30 (100010)
+-30 + 1 = -29 (100011)
+-30 + 2 = -28 (100100)
+-30 + 3 = -27 (100101)
+-30 + 4 = -26 (100110)
+-30 + 5 = -25 (100111)
+-30 + 6 = -24 (101000)
+-30 + 7 = -23 (101001)
+-30 + 8 = -22 (101010)
+-30 + 9 = -21 (101011)
+-30 + 10 = -20 (101100)
+-30 + 11 = -19 (101101)
+-30 + 12 = -18 (101110)
+-30 + 13 = -17 (101111)
+-30 + 14 = -16 (110000)
+-30 + 15 = -15 (110001)
+-30 + 16 = -14 (110010)
+-30 + 17 = -13 (110011)
+-30 + 18 = -12 (110100)
+-30 + 19 = -11 (110101)
+-30 + 20 = -10 (110110)
+-30 + 21 = -9 (110111)
+-30 + 22 = -8 (111000)
+-30 + 23 = -7 (111001)
+-30 + 24 = -6 (111010)
+-30 + 25 = -5 (111011)
+-30 + 26 = -4 (111100)
+-30 + 27 = -3 (111101)
+-30 + 28 = -2 (111110)
+-30 + 29 = -1 (111111)
+-30 + 30 = 0 (000000)
+-30 + 31 = 1 (000001)
+-30 + -32 = 2 (000010)
+-30 + -31 = 3 (000011)
+-30 + -30 = 4 (000100)
+-30 + -29 = 5 (000101)
+-30 + -28 = 6 (000110)
+-30 + -27 = 7 (000111)
+-30 + -26 = 8 (001000)
+-30 + -25 = 9 (001001)
+-30 + -24 = 10 (001010)
+-30 + -23 = 11 (001011)
+-30 + -22 = 12 (001100)
+-30 + -21 = 13 (001101)
+-30 + -20 = 14 (001110)
+-30 + -19 = 15 (001111)
+-30 + -18 = 16 (010000)
+-30 + -17 = 17 (010001)
+-30 + -16 = 18 (010010)
+-30 + -15 = 19 (010011)
+-30 + -14 = 20 (010100)
+-30 + -13 = 21 (010101)
+-30 + -12 = 22 (010110)
+-30 + -11 = 23 (010111)
+-30 + -10 = 24 (011000)
+-30 + -9 = 25 (011001)
+-30 + -8 = 26 (011010)
+-30 + -7 = 27 (011011)
+-30 + -6 = 28 (011100)
+-30 + -5 = 29 (011101)
+-30 + -4 = 30 (011110)
+-30 + -3 = 31 (011111)
+-30 + -2 = -32 (100000)
+-30 + -1 = -31 (100001)
+-29 + 0 = -29 (100011)
+-29 + 1 = -28 (100100)
+-29 + 2 = -27 (100101)
+-29 + 3 = -26 (100110)
+-29 + 4 = -25 (100111)
+-29 + 5 = -24 (101000)
+-29 + 6 = -23 (101001)
+-29 + 7 = -22 (101010)
+-29 + 8 = -21 (101011)
+-29 + 9 = -20 (101100)
+-29 + 10 = -19 (101101)
+-29 + 11 = -18 (101110)
+-29 + 12 = -17 (101111)
+-29 + 13 = -16 (110000)
+-29 + 14 = -15 (110001)
+-29 + 15 = -14 (110010)
+-29 + 16 = -13 (110011)
+-29 + 17 = -12 (110100)
+-29 + 18 = -11 (110101)
+-29 + 19 = -10 (110110)
+-29 + 20 = -9 (110111)
+-29 + 21 = -8 (111000)
+-29 + 22 = -7 (111001)
+-29 + 23 = -6 (111010)
+-29 + 24 = -5 (111011)
+-29 + 25 = -4 (111100)
+-29 + 26 = -3 (111101)
+-29 + 27 = -2 (111110)
+-29 + 28 = -1 (111111)
+-29 + 29 = 0 (000000)
+-29 + 30 = 1 (000001)
+-29 + 31 = 2 (000010)
+-29 + -32 = 3 (000011)
+-29 + -31 = 4 (000100)
+-29 + -30 = 5 (000101)
+-29 + -29 = 6 (000110)
+-29 + -28 = 7 (000111)
+-29 + -27 = 8 (001000)
+-29 + -26 = 9 (001001)
+-29 + -25 = 10 (001010)
+-29 + -24 = 11 (001011)
+-29 + -23 = 12 (001100)
+-29 + -22 = 13 (001101)
+-29 + -21 = 14 (001110)
+-29 + -20 = 15 (001111)
+-29 + -19 = 16 (010000)
+-29 + -18 = 17 (010001)
+-29 + -17 = 18 (010010)
+-29 + -16 = 19 (010011)
+-29 + -15 = 20 (010100)
+-29 + -14 = 21 (010101)
+-29 + -13 = 22 (010110)
+-29 + -12 = 23 (010111)
+-29 + -11 = 24 (011000)
+-29 + -10 = 25 (011001)
+-29 + -9 = 26 (011010)
+-29 + -8 = 27 (011011)
+-29 + -7 = 28 (011100)
+-29 + -6 = 29 (011101)
+-29 + -5 = 30 (011110)
+-29 + -4 = 31 (011111)
+-29 + -3 = -32 (100000)
+-29 + -2 = -31 (100001)
+-29 + -1 = -30 (100010)
+-28 + 0 = -28 (100100)
+-28 + 1 = -27 (100101)
+-28 + 2 = -26 (100110)
+-28 + 3 = -25 (100111)
+-28 + 4 = -24 (101000)
+-28 + 5 = -23 (101001)
+-28 + 6 = -22 (101010)
+-28 + 7 = -21 (101011)
+-28 + 8 = -20 (101100)
+-28 + 9 = -19 (101101)
+-28 + 10 = -18 (101110)
+-28 + 11 = -17 (101111)
+-28 + 12 = -16 (110000)
+-28 + 13 = -15 (110001)
+-28 + 14 = -14 (110010)
+-28 + 15 = -13 (110011)
+-28 + 16 = -12 (110100)
+-28 + 17 = -11 (110101)
+-28 + 18 = -10 (110110)
+-28 + 19 = -9 (110111)
+-28 + 20 = -8 (111000)
+-28 + 21 = -7 (111001)
+-28 + 22 = -6 (111010)
+-28 + 23 = -5 (111011)
+-28 + 24 = -4 (111100)
+-28 + 25 = -3 (111101)
+-28 + 26 = -2 (111110)
+-28 + 27 = -1 (111111)
+-28 + 28 = 0 (000000)
+-28 + 29 = 1 (000001)
+-28 + 30 = 2 (000010)
+-28 + 31 = 3 (000011)
+-28 + -32 = 4 (000100)
+-28 + -31 = 5 (000101)
+-28 + -30 = 6 (000110)
+-28 + -29 = 7 (000111)
+-28 + -28 = 8 (001000)
+-28 + -27 = 9 (001001)
+-28 + -26 = 10 (001010)
+-28 + -25 = 11 (001011)
+-28 + -24 = 12 (001100)
+-28 + -23 = 13 (001101)
+-28 + -22 = 14 (001110)
+-28 + -21 = 15 (001111)
+-28 + -20 = 16 (010000)
+-28 + -19 = 17 (010001)
+-28 + -18 = 18 (010010)
+-28 + -17 = 19 (010011)
+-28 + -16 = 20 (010100)
+-28 + -15 = 21 (010101)
+-28 + -14 = 22 (010110)
+-28 + -13 = 23 (010111)
+-28 + -12 = 24 (011000)
+-28 + -11 = 25 (011001)
+-28 + -10 = 26 (011010)
+-28 + -9 = 27 (011011)
+-28 + -8 = 28 (011100)
+-28 + -7 = 29 (011101)
+-28 + -6 = 30 (011110)
+-28 + -5 = 31 (011111)
+-28 + -4 = -32 (100000)
+-28 + -3 = -31 (100001)
+-28 + -2 = -30 (100010)
+-28 + -1 = -29 (100011)
+-27 + 0 = -27 (100101)
+-27 + 1 = -26 (100110)
+-27 + 2 = -25 (100111)
+-27 + 3 = -24 (101000)
+-27 + 4 = -23 (101001)
+-27 + 5 = -22 (101010)
+-27 + 6 = -21 (101011)
+-27 + 7 = -20 (101100)
+-27 + 8 = -19 (101101)
+-27 + 9 = -18 (101110)
+-27 + 10 = -17 (101111)
+-27 + 11 = -16 (110000)
+-27 + 12 = -15 (110001)
+-27 + 13 = -14 (110010)
+-27 + 14 = -13 (110011)
+-27 + 15 = -12 (110100)
+-27 + 16 = -11 (110101)
+-27 + 17 = -10 (110110)
+-27 + 18 = -9 (110111)
+-27 + 19 = -8 (111000)
+-27 + 20 = -7 (111001)
+-27 + 21 = -6 (111010)
+-27 + 22 = -5 (111011)
+-27 + 23 = -4 (111100)
+-27 + 24 = -3 (111101)
+-27 + 25 = -2 (111110)
+-27 + 26 = -1 (111111)
+-27 + 27 = 0 (000000)
+-27 + 28 = 1 (000001)
+-27 + 29 = 2 (000010)
+-27 + 30 = 3 (000011)
+-27 + 31 = 4 (000100)
+-27 + -32 = 5 (000101)
+-27 + -31 = 6 (000110)
+-27 + -30 = 7 (000111)
+-27 + -29 = 8 (001000)
+-27 + -28 = 9 (001001)
+-27 + -27 = 10 (001010)
+-27 + -26 = 11 (001011)
+-27 + -25 = 12 (001100)
+-27 + -24 = 13 (001101)
+-27 + -23 = 14 (001110)
+-27 + -22 = 15 (001111)
+-27 + -21 = 16 (010000)
+-27 + -20 = 17 (010001)
+-27 + -19 = 18 (010010)
+-27 + -18 = 19 (010011)
+-27 + -17 = 20 (010100)
+-27 + -16 = 21 (010101)
+-27 + -15 = 22 (010110)
+-27 + -14 = 23 (010111)
+-27 + -13 = 24 (011000)
+-27 + -12 = 25 (011001)
+-27 + -11 = 26 (011010)
+-27 + -10 = 27 (011011)
+-27 + -9 = 28 (011100)
+-27 + -8 = 29 (011101)
+-27 + -7 = 30 (011110)
+-27 + -6 = 31 (011111)
+-27 + -5 = -32 (100000)
+-27 + -4 = -31 (100001)
+-27 + -3 = -30 (100010)
+-27 + -2 = -29 (100011)
+-27 + -1 = -28 (100100)
+-26 + 0 = -26 (100110)
+-26 + 1 = -25 (100111)
+-26 + 2 = -24 (101000)
+-26 + 3 = -23 (101001)
+-26 + 4 = -22 (101010)
+-26 + 5 = -21 (101011)
+-26 + 6 = -20 (101100)
+-26 + 7 = -19 (101101)
+-26 + 8 = -18 (101110)
+-26 + 9 = -17 (101111)
+-26 + 10 = -16 (110000)
+-26 + 11 = -15 (110001)
+-26 + 12 = -14 (110010)
+-26 + 13 = -13 (110011)
+-26 + 14 = -12 (110100)
+-26 + 15 = -11 (110101)
+-26 + 16 = -10 (110110)
+-26 + 17 = -9 (110111)
+-26 + 18 = -8 (111000)
+-26 + 19 = -7 (111001)
+-26 + 20 = -6 (111010)
+-26 + 21 = -5 (111011)
+-26 + 22 = -4 (111100)
+-26 + 23 = -3 (111101)
+-26 + 24 = -2 (111110)
+-26 + 25 = -1 (111111)
+-26 + 26 = 0 (000000)
+-26 + 27 = 1 (000001)
+-26 + 28 = 2 (000010)
+-26 + 29 = 3 (000011)
+-26 + 30 = 4 (000100)
+-26 + 31 = 5 (000101)
+-26 + -32 = 6 (000110)
+-26 + -31 = 7 (000111)
+-26 + -30 = 8 (001000)
+-26 + -29 = 9 (001001)
+-26 + -28 = 10 (001010)
+-26 + -27 = 11 (001011)
+-26 + -26 = 12 (001100)
+-26 + -25 = 13 (001101)
+-26 + -24 = 14 (001110)
+-26 + -23 = 15 (001111)
+-26 + -22 = 16 (010000)
+-26 + -21 = 17 (010001)
+-26 + -20 = 18 (010010)
+-26 + -19 = 19 (010011)
+-26 + -18 = 20 (010100)
+-26 + -17 = 21 (010101)
+-26 + -16 = 22 (010110)
+-26 + -15 = 23 (010111)
+-26 + -14 = 24 (011000)
+-26 + -13 = 25 (011001)
+-26 + -12 = 26 (011010)
+-26 + -11 = 27 (011011)
+-26 + -10 = 28 (011100)
+-26 + -9 = 29 (011101)
+-26 + -8 = 30 (011110)
+-26 + -7 = 31 (011111)
+-26 + -6 = -32 (100000)
+-26 + -5 = -31 (100001)
+-26 + -4 = -30 (100010)
+-26 + -3 = -29 (100011)
+-26 + -2 = -28 (100100)
+-26 + -1 = -27 (100101)
+-25 + 0 = -25 (100111)
+-25 + 1 = -24 (101000)
+-25 + 2 = -23 (101001)
+-25 + 3 = -22 (101010)
+-25 + 4 = -21 (101011)
+-25 + 5 = -20 (101100)
+-25 + 6 = -19 (101101)
+-25 + 7 = -18 (101110)
+-25 + 8 = -17 (101111)
+-25 + 9 = -16 (110000)
+-25 + 10 = -15 (110001)
+-25 + 11 = -14 (110010)
+-25 + 12 = -13 (110011)
+-25 + 13 = -12 (110100)
+-25 + 14 = -11 (110101)
+-25 + 15 = -10 (110110)
+-25 + 16 = -9 (110111)
+-25 + 17 = -8 (111000)
+-25 + 18 = -7 (111001)
+-25 + 19 = -6 (111010)
+-25 + 20 = -5 (111011)
+-25 + 21 = -4 (111100)
+-25 + 22 = -3 (111101)
+-25 + 23 = -2 (111110)
+-25 + 24 = -1 (111111)
+-25 + 25 = 0 (000000)
+-25 + 26 = 1 (000001)
+-25 + 27 = 2 (000010)
+-25 + 28 = 3 (000011)
+-25 + 29 = 4 (000100)
+-25 + 30 = 5 (000101)
+-25 + 31 = 6 (000110)
+-25 + -32 = 7 (000111)
+-25 + -31 = 8 (001000)
+-25 + -30 = 9 (001001)
+-25 + -29 = 10 (001010)
+-25 + -28 = 11 (001011)
+-25 + -27 = 12 (001100)
+-25 + -26 = 13 (001101)
+-25 + -25 = 14 (001110)
+-25 + -24 = 15 (001111)
+-25 + -23 = 16 (010000)
+-25 + -22 = 17 (010001)
+-25 + -21 = 18 (010010)
+-25 + -20 = 19 (010011)
+-25 + -19 = 20 (010100)
+-25 + -18 = 21 (010101)
+-25 + -17 = 22 (010110)
+-25 + -16 = 23 (010111)
+-25 + -15 = 24 (011000)
+-25 + -14 = 25 (011001)
+-25 + -13 = 26 (011010)
+-25 + -12 = 27 (011011)
+-25 + -11 = 28 (011100)
+-25 + -10 = 29 (011101)
+-25 + -9 = 30 (011110)
+-25 + -8 = 31 (011111)
+-25 + -7 = -32 (100000)
+-25 + -6 = -31 (100001)
+-25 + -5 = -30 (100010)
+-25 + -4 = -29 (100011)
+-25 + -3 = -28 (100100)
+-25 + -2 = -27 (100101)
+-25 + -1 = -26 (100110)
+-24 + 0 = -24 (101000)
+-24 + 1 = -23 (101001)
+-24 + 2 = -22 (101010)
+-24 + 3 = -21 (101011)
+-24 + 4 = -20 (101100)
+-24 + 5 = -19 (101101)
+-24 + 6 = -18 (101110)
+-24 + 7 = -17 (101111)
+-24 + 8 = -16 (110000)
+-24 + 9 = -15 (110001)
+-24 + 10 = -14 (110010)
+-24 + 11 = -13 (110011)
+-24 + 12 = -12 (110100)
+-24 + 13 = -11 (110101)
+-24 + 14 = -10 (110110)
+-24 + 15 = -9 (110111)
+-24 + 16 = -8 (111000)
+-24 + 17 = -7 (111001)
+-24 + 18 = -6 (111010)
+-24 + 19 = -5 (111011)
+-24 + 20 = -4 (111100)
+-24 + 21 = -3 (111101)
+-24 + 22 = -2 (111110)
+-24 + 23 = -1 (111111)
+-24 + 24 = 0 (000000)
+-24 + 25 = 1 (000001)
+-24 + 26 = 2 (000010)
+-24 + 27 = 3 (000011)
+-24 + 28 = 4 (000100)
+-24 + 29 = 5 (000101)
+-24 + 30 = 6 (000110)
+-24 + 31 = 7 (000111)
+-24 + -32 = 8 (001000)
+-24 + -31 = 9 (001001)
+-24 + -30 = 10 (001010)
+-24 + -29 = 11 (001011)
+-24 + -28 = 12 (001100)
+-24 + -27 = 13 (001101)
+-24 + -26 = 14 (001110)
+-24 + -25 = 15 (001111)
+-24 + -24 = 16 (010000)
+-24 + -23 = 17 (010001)
+-24 + -22 = 18 (010010)
+-24 + -21 = 19 (010011)
+-24 + -20 = 20 (010100)
+-24 + -19 = 21 (010101)
+-24 + -18 = 22 (010110)
+-24 + -17 = 23 (010111)
+-24 + -16 = 24 (011000)
+-24 + -15 = 25 (011001)
+-24 + -14 = 26 (011010)
+-24 + -13 = 27 (011011)
+-24 + -12 = 28 (011100)
+-24 + -11 = 29 (011101)
+-24 + -10 = 30 (011110)
+-24 + -9 = 31 (011111)
+-24 + -8 = -32 (100000)
+-24 + -7 = -31 (100001)
+-24 + -6 = -30 (100010)
+-24 + -5 = -29 (100011)
+-24 + -4 = -28 (100100)
+-24 + -3 = -27 (100101)
+-24 + -2 = -26 (100110)
+-24 + -1 = -25 (100111)
+-23 + 0 = -23 (101001)
+-23 + 1 = -22 (101010)
+-23 + 2 = -21 (101011)
+-23 + 3 = -20 (101100)
+-23 + 4 = -19 (101101)
+-23 + 5 = -18 (101110)
+-23 + 6 = -17 (101111)
+-23 + 7 = -16 (110000)
+-23 + 8 = -15 (110001)
+-23 + 9 = -14 (110010)
+-23 + 10 = -13 (110011)
+-23 + 11 = -12 (110100)
+-23 + 12 = -11 (110101)
+-23 + 13 = -10 (110110)
+-23 + 14 = -9 (110111)
+-23 + 15 = -8 (111000)
+-23 + 16 = -7 (111001)
+-23 + 17 = -6 (111010)
+-23 + 18 = -5 (111011)
+-23 + 19 = -4 (111100)
+-23 + 20 = -3 (111101)
+-23 + 21 = -2 (111110)
+-23 + 22 = -1 (111111)
+-23 + 23 = 0 (000000)
+-23 + 24 = 1 (000001)
+-23 + 25 = 2 (000010)
+-23 + 26 = 3 (000011)
+-23 + 27 = 4 (000100)
+-23 + 28 = 5 (000101)
+-23 + 29 = 6 (000110)
+-23 + 30 = 7 (000111)
+-23 + 31 = 8 (001000)
+-23 + -32 = 9 (001001)
+-23 + -31 = 10 (001010)
+-23 + -30 = 11 (001011)
+-23 + -29 = 12 (001100)
+-23 + -28 = 13 (001101)
+-23 + -27 = 14 (001110)
+-23 + -26 = 15 (001111)
+-23 + -25 = 16 (010000)
+-23 + -24 = 17 (010001)
+-23 + -23 = 18 (010010)
+-23 + -22 = 19 (010011)
+-23 + -21 = 20 (010100)
+-23 + -20 = 21 (010101)
+-23 + -19 = 22 (010110)
+-23 + -18 = 23 (010111)
+-23 + -17 = 24 (011000)
+-23 + -16 = 25 (011001)
+-23 + -15 = 26 (011010)
+-23 + -14 = 27 (011011)
+-23 + -13 = 28 (011100)
+-23 + -12 = 29 (011101)
+-23 + -11 = 30 (011110)
+-23 + -10 = 31 (011111)
+-23 + -9 = -32 (100000)
+-23 + -8 = -31 (100001)
+-23 + -7 = -30 (100010)
+-23 + -6 = -29 (100011)
+-23 + -5 = -28 (100100)
+-23 + -4 = -27 (100101)
+-23 + -3 = -26 (100110)
+-23 + -2 = -25 (100111)
+-23 + -1 = -24 (101000)
+-22 + 0 = -22 (101010)
+-22 + 1 = -21 (101011)
+-22 + 2 = -20 (101100)
+-22 + 3 = -19 (101101)
+-22 + 4 = -18 (101110)
+-22 + 5 = -17 (101111)
+-22 + 6 = -16 (110000)
+-22 + 7 = -15 (110001)
+-22 + 8 = -14 (110010)
+-22 + 9 = -13 (110011)
+-22 + 10 = -12 (110100)
+-22 + 11 = -11 (110101)
+-22 + 12 = -10 (110110)
+-22 + 13 = -9 (110111)
+-22 + 14 = -8 (111000)
+-22 + 15 = -7 (111001)
+-22 + 16 = -6 (111010)
+-22 + 17 = -5 (111011)
+-22 + 18 = -4 (111100)
+-22 + 19 = -3 (111101)
+-22 + 20 = -2 (111110)
+-22 + 21 = -1 (111111)
+-22 + 22 = 0 (000000)
+-22 + 23 = 1 (000001)
+-22 + 24 = 2 (000010)
+-22 + 25 = 3 (000011)
+-22 + 26 = 4 (000100)
+-22 + 27 = 5 (000101)
+-22 + 28 = 6 (000110)
+-22 + 29 = 7 (000111)
+-22 + 30 = 8 (001000)
+-22 + 31 = 9 (001001)
+-22 + -32 = 10 (001010)
+-22 + -31 = 11 (001011)
+-22 + -30 = 12 (001100)
+-22 + -29 = 13 (001101)
+-22 + -28 = 14 (001110)
+-22 + -27 = 15 (001111)
+-22 + -26 = 16 (010000)
+-22 + -25 = 17 (010001)
+-22 + -24 = 18 (010010)
+-22 + -23 = 19 (010011)
+-22 + -22 = 20 (010100)
+-22 + -21 = 21 (010101)
+-22 + -20 = 22 (010110)
+-22 + -19 = 23 (010111)
+-22 + -18 = 24 (011000)
+-22 + -17 = 25 (011001)
+-22 + -16 = 26 (011010)
+-22 + -15 = 27 (011011)
+-22 + -14 = 28 (011100)
+-22 + -13 = 29 (011101)
+-22 + -12 = 30 (011110)
+-22 + -11 = 31 (011111)
+-22 + -10 = -32 (100000)
+-22 + -9 = -31 (100001)
+-22 + -8 = -30 (100010)
+-22 + -7 = -29 (100011)
+-22 + -6 = -28 (100100)
+-22 + -5 = -27 (100101)
+-22 + -4 = -26 (100110)
+-22 + -3 = -25 (100111)
+-22 + -2 = -24 (101000)
+-22 + -1 = -23 (101001)
+-21 + 0 = -21 (101011)
+-21 + 1 = -20 (101100)
+-21 + 2 = -19 (101101)
+-21 + 3 = -18 (101110)
+-21 + 4 = -17 (101111)
+-21 + 5 = -16 (110000)
+-21 + 6 = -15 (110001)
+-21 + 7 = -14 (110010)
+-21 + 8 = -13 (110011)
+-21 + 9 = -12 (110100)
+-21 + 10 = -11 (110101)
+-21 + 11 = -10 (110110)
+-21 + 12 = -9 (110111)
+-21 + 13 = -8 (111000)
+-21 + 14 = -7 (111001)
+-21 + 15 = -6 (111010)
+-21 + 16 = -5 (111011)
+-21 + 17 = -4 (111100)
+-21 + 18 = -3 (111101)
+-21 + 19 = -2 (111110)
+-21 + 20 = -1 (111111)
+-21 + 21 = 0 (000000)
+-21 + 22 = 1 (000001)
+-21 + 23 = 2 (000010)
+-21 + 24 = 3 (000011)
+-21 + 25 = 4 (000100)
+-21 + 26 = 5 (000101)
+-21 + 27 = 6 (000110)
+-21 + 28 = 7 (000111)
+-21 + 29 = 8 (001000)
+-21 + 30 = 9 (001001)
+-21 + 31 = 10 (001010)
+-21 + -32 = 11 (001011)
+-21 + -31 = 12 (001100)
+-21 + -30 = 13 (001101)
+-21 + -29 = 14 (001110)
+-21 + -28 = 15 (001111)
+-21 + -27 = 16 (010000)
+-21 + -26 = 17 (010001)
+-21 + -25 = 18 (010010)
+-21 + -24 = 19 (010011)
+-21 + -23 = 20 (010100)
+-21 + -22 = 21 (010101)
+-21 + -21 = 22 (010110)
+-21 + -20 = 23 (010111)
+-21 + -19 = 24 (011000)
+-21 + -18 = 25 (011001)
+-21 + -17 = 26 (011010)
+-21 + -16 = 27 (011011)
+-21 + -15 = 28 (011100)
+-21 + -14 = 29 (011101)
+-21 + -13 = 30 (011110)
+-21 + -12 = 31 (011111)
+-21 + -11 = -32 (100000)
+-21 + -10 = -31 (100001)
+-21 + -9 = -30 (100010)
+-21 + -8 = -29 (100011)
+-21 + -7 = -28 (100100)
+-21 + -6 = -27 (100101)
+-21 + -5 = -26 (100110)
+-21 + -4 = -25 (100111)
+-21 + -3 = -24 (101000)
+-21 + -2 = -23 (101001)
+-21 + -1 = -22 (101010)
+-20 + 0 = -20 (101100)
+-20 + 1 = -19 (101101)
+-20 + 2 = -18 (101110)
+-20 + 3 = -17 (101111)
+-20 + 4 = -16 (110000)
+-20 + 5 = -15 (110001)
+-20 + 6 = -14 (110010)
+-20 + 7 = -13 (110011)
+-20 + 8 = -12 (110100)
+-20 + 9 = -11 (110101)
+-20 + 10 = -10 (110110)
+-20 + 11 = -9 (110111)
+-20 + 12 = -8 (111000)
+-20 + 13 = -7 (111001)
+-20 + 14 = -6 (111010)
+-20 + 15 = -5 (111011)
+-20 + 16 = -4 (111100)
+-20 + 17 = -3 (111101)
+-20 + 18 = -2 (111110)
+-20 + 19 = -1 (111111)
+-20 + 20 = 0 (000000)
+-20 + 21 = 1 (000001)
+-20 + 22 = 2 (000010)
+-20 + 23 = 3 (000011)
+-20 + 24 = 4 (000100)
+-20 + 25 = 5 (000101)
+-20 + 26 = 6 (000110)
+-20 + 27 = 7 (000111)
+-20 + 28 = 8 (001000)
+-20 + 29 = 9 (001001)
+-20 + 30 = 10 (001010)
+-20 + 31 = 11 (001011)
+-20 + -32 = 12 (001100)
+-20 + -31 = 13 (001101)
+-20 + -30 = 14 (001110)
+-20 + -29 = 15 (001111)
+-20 + -28 = 16 (010000)
+-20 + -27 = 17 (010001)
+-20 + -26 = 18 (010010)
+-20 + -25 = 19 (010011)
+-20 + -24 = 20 (010100)
+-20 + -23 = 21 (010101)
+-20 + -22 = 22 (010110)
+-20 + -21 = 23 (010111)
+-20 + -20 = 24 (011000)
+-20 + -19 = 25 (011001)
+-20 + -18 = 26 (011010)
+-20 + -17 = 27 (011011)
+-20 + -16 = 28 (011100)
+-20 + -15 = 29 (011101)
+-20 + -14 = 30 (011110)
+-20 + -13 = 31 (011111)
+-20 + -12 = -32 (100000)
+-20 + -11 = -31 (100001)
+-20 + -10 = -30 (100010)
+-20 + -9 = -29 (100011)
+-20 + -8 = -28 (100100)
+-20 + -7 = -27 (100101)
+-20 + -6 = -26 (100110)
+-20 + -5 = -25 (100111)
+-20 + -4 = -24 (101000)
+-20 + -3 = -23 (101001)
+-20 + -2 = -22 (101010)
+-20 + -1 = -21 (101011)
+-19 + 0 = -19 (101101)
+-19 + 1 = -18 (101110)
+-19 + 2 = -17 (101111)
+-19 + 3 = -16 (110000)
+-19 + 4 = -15 (110001)
+-19 + 5 = -14 (110010)
+-19 + 6 = -13 (110011)
+-19 + 7 = -12 (110100)
+-19 + 8 = -11 (110101)
+-19 + 9 = -10 (110110)
+-19 + 10 = -9 (110111)
+-19 + 11 = -8 (111000)
+-19 + 12 = -7 (111001)
+-19 + 13 = -6 (111010)
+-19 + 14 = -5 (111011)
+-19 + 15 = -4 (111100)
+-19 + 16 = -3 (111101)
+-19 + 17 = -2 (111110)
+-19 + 18 = -1 (111111)
+-19 + 19 = 0 (000000)
+-19 + 20 = 1 (000001)
+-19 + 21 = 2 (000010)
+-19 + 22 = 3 (000011)
+-19 + 23 = 4 (000100)
+-19 + 24 = 5 (000101)
+-19 + 25 = 6 (000110)
+-19 + 26 = 7 (000111)
+-19 + 27 = 8 (001000)
+-19 + 28 = 9 (001001)
+-19 + 29 = 10 (001010)
+-19 + 30 = 11 (001011)
+-19 + 31 = 12 (001100)
+-19 + -32 = 13 (001101)
+-19 + -31 = 14 (001110)
+-19 + -30 = 15 (001111)
+-19 + -29 = 16 (010000)
+-19 + -28 = 17 (010001)
+-19 + -27 = 18 (010010)
+-19 + -26 = 19 (010011)
+-19 + -25 = 20 (010100)
+-19 + -24 = 21 (010101)
+-19 + -23 = 22 (010110)
+-19 + -22 = 23 (010111)
+-19 + -21 = 24 (011000)
+-19 + -20 = 25 (011001)
+-19 + -19 = 26 (011010)
+-19 + -18 = 27 (011011)
+-19 + -17 = 28 (011100)
+-19 + -16 = 29 (011101)
+-19 + -15 = 30 (011110)
+-19 + -14 = 31 (011111)
+-19 + -13 = -32 (100000)
+-19 + -12 = -31 (100001)
+-19 + -11 = -30 (100010)
+-19 + -10 = -29 (100011)
+-19 + -9 = -28 (100100)
+-19 + -8 = -27 (100101)
+-19 + -7 = -26 (100110)
+-19 + -6 = -25 (100111)
+-19 + -5 = -24 (101000)
+-19 + -4 = -23 (101001)
+-19 + -3 = -22 (101010)
+-19 + -2 = -21 (101011)
+-19 + -1 = -20 (101100)
+-18 + 0 = -18 (101110)
+-18 + 1 = -17 (101111)
+-18 + 2 = -16 (110000)
+-18 + 3 = -15 (110001)
+-18 + 4 = -14 (110010)
+-18 + 5 = -13 (110011)
+-18 + 6 = -12 (110100)
+-18 + 7 = -11 (110101)
+-18 + 8 = -10 (110110)
+-18 + 9 = -9 (110111)
+-18 + 10 = -8 (111000)
+-18 + 11 = -7 (111001)
+-18 + 12 = -6 (111010)
+-18 + 13 = -5 (111011)
+-18 + 14 = -4 (111100)
+-18 + 15 = -3 (111101)
+-18 + 16 = -2 (111110)
+-18 + 17 = -1 (111111)
+-18 + 18 = 0 (000000)
+-18 + 19 = 1 (000001)
+-18 + 20 = 2 (000010)
+-18 + 21 = 3 (000011)
+-18 + 22 = 4 (000100)
+-18 + 23 = 5 (000101)
+-18 + 24 = 6 (000110)
+-18 + 25 = 7 (000111)
+-18 + 26 = 8 (001000)
+-18 + 27 = 9 (001001)
+-18 + 28 = 10 (001010)
+-18 + 29 = 11 (001011)
+-18 + 30 = 12 (001100)
+-18 + 31 = 13 (001101)
+-18 + -32 = 14 (001110)
+-18 + -31 = 15 (001111)
+-18 + -30 = 16 (010000)
+-18 + -29 = 17 (010001)
+-18 + -28 = 18 (010010)
+-18 + -27 = 19 (010011)
+-18 + -26 = 20 (010100)
+-18 + -25 = 21 (010101)
+-18 + -24 = 22 (010110)
+-18 + -23 = 23 (010111)
+-18 + -22 = 24 (011000)
+-18 + -21 = 25 (011001)
+-18 + -20 = 26 (011010)
+-18 + -19 = 27 (011011)
+-18 + -18 = 28 (011100)
+-18 + -17 = 29 (011101)
+-18 + -16 = 30 (011110)
+-18 + -15 = 31 (011111)
+-18 + -14 = -32 (100000)
+-18 + -13 = -31 (100001)
+-18 + -12 = -30 (100010)
+-18 + -11 = -29 (100011)
+-18 + -10 = -28 (100100)
+-18 + -9 = -27 (100101)
+-18 + -8 = -26 (100110)
+-18 + -7 = -25 (100111)
+-18 + -6 = -24 (101000)
+-18 + -5 = -23 (101001)
+-18 + -4 = -22 (101010)
+-18 + -3 = -21 (101011)
+-18 + -2 = -20 (101100)
+-18 + -1 = -19 (101101)
+-17 + 0 = -17 (101111)
+-17 + 1 = -16 (110000)
+-17 + 2 = -15 (110001)
+-17 + 3 = -14 (110010)
+-17 + 4 = -13 (110011)
+-17 + 5 = -12 (110100)
+-17 + 6 = -11 (110101)
+-17 + 7 = -10 (110110)
+-17 + 8 = -9 (110111)
+-17 + 9 = -8 (111000)
+-17 + 10 = -7 (111001)
+-17 + 11 = -6 (111010)
+-17 + 12 = -5 (111011)
+-17 + 13 = -4 (111100)
+-17 + 14 = -3 (111101)
+-17 + 15 = -2 (111110)
+-17 + 16 = -1 (111111)
+-17 + 17 = 0 (000000)
+-17 + 18 = 1 (000001)
+-17 + 19 = 2 (000010)
+-17 + 20 = 3 (000011)
+-17 + 21 = 4 (000100)
+-17 + 22 = 5 (000101)
+-17 + 23 = 6 (000110)
+-17 + 24 = 7 (000111)
+-17 + 25 = 8 (001000)
+-17 + 26 = 9 (001001)
+-17 + 27 = 10 (001010)
+-17 + 28 = 11 (001011)
+-17 + 29 = 12 (001100)
+-17 + 30 = 13 (001101)
+-17 + 31 = 14 (001110)
+-17 + -32 = 15 (001111)
+-17 + -31 = 16 (010000)
+-17 + -30 = 17 (010001)
+-17 + -29 = 18 (010010)
+-17 + -28 = 19 (010011)
+-17 + -27 = 20 (010100)
+-17 + -26 = 21 (010101)
+-17 + -25 = 22 (010110)
+-17 + -24 = 23 (010111)
+-17 + -23 = 24 (011000)
+-17 + -22 = 25 (011001)
+-17 + -21 = 26 (011010)
+-17 + -20 = 27 (011011)
+-17 + -19 = 28 (011100)
+-17 + -18 = 29 (011101)
+-17 + -17 = 30 (011110)
+-17 + -16 = 31 (011111)
+-17 + -15 = -32 (100000)
+-17 + -14 = -31 (100001)
+-17 + -13 = -30 (100010)
+-17 + -12 = -29 (100011)
+-17 + -11 = -28 (100100)
+-17 + -10 = -27 (100101)
+-17 + -9 = -26 (100110)
+-17 + -8 = -25 (100111)
+-17 + -7 = -24 (101000)
+-17 + -6 = -23 (101001)
+-17 + -5 = -22 (101010)
+-17 + -4 = -21 (101011)
+-17 + -3 = -20 (101100)
+-17 + -2 = -19 (101101)
+-17 + -1 = -18 (101110)
+-16 + 0 = -16 (110000)
+-16 + 1 = -15 (110001)
+-16 + 2 = -14 (110010)
+-16 + 3 = -13 (110011)
+-16 + 4 = -12 (110100)
+-16 + 5 = -11 (110101)
+-16 + 6 = -10 (110110)
+-16 + 7 = -9 (110111)
+-16 + 8 = -8 (111000)
+-16 + 9 = -7 (111001)
+-16 + 10 = -6 (111010)
+-16 + 11 = -5 (111011)
+-16 + 12 = -4 (111100)
+-16 + 13 = -3 (111101)
+-16 + 14 = -2 (111110)
+-16 + 15 = -1 (111111)
+-16 + 16 = 0 (000000)
+-16 + 17 = 1 (000001)
+-16 + 18 = 2 (000010)
+-16 + 19 = 3 (000011)
+-16 + 20 = 4 (000100)
+-16 + 21 = 5 (000101)
+-16 + 22 = 6 (000110)
+-16 + 23 = 7 (000111)
+-16 + 24 = 8 (001000)
+-16 + 25 = 9 (001001)
+-16 + 26 = 10 (001010)
+-16 + 27 = 11 (001011)
+-16 + 28 = 12 (001100)
+-16 + 29 = 13 (001101)
+-16 + 30 = 14 (001110)
+-16 + 31 = 15 (001111)
+-16 + -32 = 16 (010000)
+-16 + -31 = 17 (010001)
+-16 + -30 = 18 (010010)
+-16 + -29 = 19 (010011)
+-16 + -28 = 20 (010100)
+-16 + -27 = 21 (010101)
+-16 + -26 = 22 (010110)
+-16 + -25 = 23 (010111)
+-16 + -24 = 24 (011000)
+-16 + -23 = 25 (011001)
+-16 + -22 = 26 (011010)
+-16 + -21 = 27 (011011)
+-16 + -20 = 28 (011100)
+-16 + -19 = 29 (011101)
+-16 + -18 = 30 (011110)
+-16 + -17 = 31 (011111)
+-16 + -16 = -32 (100000)
+-16 + -15 = -31 (100001)
+-16 + -14 = -30 (100010)
+-16 + -13 = -29 (100011)
+-16 + -12 = -28 (100100)
+-16 + -11 = -27 (100101)
+-16 + -10 = -26 (100110)
+-16 + -9 = -25 (100111)
+-16 + -8 = -24 (101000)
+-16 + -7 = -23 (101001)
+-16 + -6 = -22 (101010)
+-16 + -5 = -21 (101011)
+-16 + -4 = -20 (101100)
+-16 + -3 = -19 (101101)
+-16 + -2 = -18 (101110)
+-16 + -1 = -17 (101111)
+-15 + 0 = -15 (110001)
+-15 + 1 = -14 (110010)
+-15 + 2 = -13 (110011)
+-15 + 3 = -12 (110100)
+-15 + 4 = -11 (110101)
+-15 + 5 = -10 (110110)
+-15 + 6 = -9 (110111)
+-15 + 7 = -8 (111000)
+-15 + 8 = -7 (111001)
+-15 + 9 = -6 (111010)
+-15 + 10 = -5 (111011)
+-15 + 11 = -4 (111100)
+-15 + 12 = -3 (111101)
+-15 + 13 = -2 (111110)
+-15 + 14 = -1 (111111)
+-15 + 15 = 0 (000000)
+-15 + 16 = 1 (000001)
+-15 + 17 = 2 (000010)
+-15 + 18 = 3 (000011)
+-15 + 19 = 4 (000100)
+-15 + 20 = 5 (000101)
+-15 + 21 = 6 (000110)
+-15 + 22 = 7 (000111)
+-15 + 23 = 8 (001000)
+-15 + 24 = 9 (001001)
+-15 + 25 = 10 (001010)
+-15 + 26 = 11 (001011)
+-15 + 27 = 12 (001100)
+-15 + 28 = 13 (001101)
+-15 + 29 = 14 (001110)
+-15 + 30 = 15 (001111)
+-15 + 31 = 16 (010000)
+-15 + -32 = 17 (010001)
+-15 + -31 = 18 (010010)
+-15 + -30 = 19 (010011)
+-15 + -29 = 20 (010100)
+-15 + -28 = 21 (010101)
+-15 + -27 = 22 (010110)
+-15 + -26 = 23 (010111)
+-15 + -25 = 24 (011000)
+-15 + -24 = 25 (011001)
+-15 + -23 = 26 (011010)
+-15 + -22 = 27 (011011)
+-15 + -21 = 28 (011100)
+-15 + -20 = 29 (011101)
+-15 + -19 = 30 (011110)
+-15 + -18 = 31 (011111)
+-15 + -17 = -32 (100000)
+-15 + -16 = -31 (100001)
+-15 + -15 = -30 (100010)
+-15 + -14 = -29 (100011)
+-15 + -13 = -28 (100100)
+-15 + -12 = -27 (100101)
+-15 + -11 = -26 (100110)
+-15 + -10 = -25 (100111)
+-15 + -9 = -24 (101000)
+-15 + -8 = -23 (101001)
+-15 + -7 = -22 (101010)
+-15 + -6 = -21 (101011)
+-15 + -5 = -20 (101100)
+-15 + -4 = -19 (101101)
+-15 + -3 = -18 (101110)
+-15 + -2 = -17 (101111)
+-15 + -1 = -16 (110000)
+-14 + 0 = -14 (110010)
+-14 + 1 = -13 (110011)
+-14 + 2 = -12 (110100)
+-14 + 3 = -11 (110101)
+-14 + 4 = -10 (110110)
+-14 + 5 = -9 (110111)
+-14 + 6 = -8 (111000)
+-14 + 7 = -7 (111001)
+-14 + 8 = -6 (111010)
+-14 + 9 = -5 (111011)
+-14 + 10 = -4 (111100)
+-14 + 11 = -3 (111101)
+-14 + 12 = -2 (111110)
+-14 + 13 = -1 (111111)
+-14 + 14 = 0 (000000)
+-14 + 15 = 1 (000001)
+-14 + 16 = 2 (000010)
+-14 + 17 = 3 (000011)
+-14 + 18 = 4 (000100)
+-14 + 19 = 5 (000101)
+-14 + 20 = 6 (000110)
+-14 + 21 = 7 (000111)
+-14 + 22 = 8 (001000)
+-14 + 23 = 9 (001001)
+-14 + 24 = 10 (001010)
+-14 + 25 = 11 (001011)
+-14 + 26 = 12 (001100)
+-14 + 27 = 13 (001101)
+-14 + 28 = 14 (001110)
+-14 + 29 = 15 (001111)
+-14 + 30 = 16 (010000)
+-14 + 31 = 17 (010001)
+-14 + -32 = 18 (010010)
+-14 + -31 = 19 (010011)
+-14 + -30 = 20 (010100)
+-14 + -29 = 21 (010101)
+-14 + -28 = 22 (010110)
+-14 + -27 = 23 (010111)
+-14 + -26 = 24 (011000)
+-14 + -25 = 25 (011001)
+-14 + -24 = 26 (011010)
+-14 + -23 = 27 (011011)
+-14 + -22 = 28 (011100)
+-14 + -21 = 29 (011101)
+-14 + -20 = 30 (011110)
+-14 + -19 = 31 (011111)
+-14 + -18 = -32 (100000)
+-14 + -17 = -31 (100001)
+-14 + -16 = -30 (100010)
+-14 + -15 = -29 (100011)
+-14 + -14 = -28 (100100)
+-14 + -13 = -27 (100101)
+-14 + -12 = -26 (100110)
+-14 + -11 = -25 (100111)
+-14 + -10 = -24 (101000)
+-14 + -9 = -23 (101001)
+-14 + -8 = -22 (101010)
+-14 + -7 = -21 (101011)
+-14 + -6 = -20 (101100)
+-14 + -5 = -19 (101101)
+-14 + -4 = -18 (101110)
+-14 + -3 = -17 (101111)
+-14 + -2 = -16 (110000)
+-14 + -1 = -15 (110001)
+-13 + 0 = -13 (110011)
+-13 + 1 = -12 (110100)
+-13 + 2 = -11 (110101)
+-13 + 3 = -10 (110110)
+-13 + 4 = -9 (110111)
+-13 + 5 = -8 (111000)
+-13 + 6 = -7 (111001)
+-13 + 7 = -6 (111010)
+-13 + 8 = -5 (111011)
+-13 + 9 = -4 (111100)
+-13 + 10 = -3 (111101)
+-13 + 11 = -2 (111110)
+-13 + 12 = -1 (111111)
+-13 + 13 = 0 (000000)
+-13 + 14 = 1 (000001)
+-13 + 15 = 2 (000010)
+-13 + 16 = 3 (000011)
+-13 + 17 = 4 (000100)
+-13 + 18 = 5 (000101)
+-13 + 19 = 6 (000110)
+-13 + 20 = 7 (000111)
+-13 + 21 = 8 (001000)
+-13 + 22 = 9 (001001)
+-13 + 23 = 10 (001010)
+-13 + 24 = 11 (001011)
+-13 + 25 = 12 (001100)
+-13 + 26 = 13 (001101)
+-13 + 27 = 14 (001110)
+-13 + 28 = 15 (001111)
+-13 + 29 = 16 (010000)
+-13 + 30 = 17 (010001)
+-13 + 31 = 18 (010010)
+-13 + -32 = 19 (010011)
+-13 + -31 = 20 (010100)
+-13 + -30 = 21 (010101)
+-13 + -29 = 22 (010110)
+-13 + -28 = 23 (010111)
+-13 + -27 = 24 (011000)
+-13 + -26 = 25 (011001)
+-13 + -25 = 26 (011010)
+-13 + -24 = 27 (011011)
+-13 + -23 = 28 (011100)
+-13 + -22 = 29 (011101)
+-13 + -21 = 30 (011110)
+-13 + -20 = 31 (011111)
+-13 + -19 = -32 (100000)
+-13 + -18 = -31 (100001)
+-13 + -17 = -30 (100010)
+-13 + -16 = -29 (100011)
+-13 + -15 = -28 (100100)
+-13 + -14 = -27 (100101)
+-13 + -13 = -26 (100110)
+-13 + -12 = -25 (100111)
+-13 + -11 = -24 (101000)
+-13 + -10 = -23 (101001)
+-13 + -9 = -22 (101010)
+-13 + -8 = -21 (101011)
+-13 + -7 = -20 (101100)
+-13 + -6 = -19 (101101)
+-13 + -5 = -18 (101110)
+-13 + -4 = -17 (101111)
+-13 + -3 = -16 (110000)
+-13 + -2 = -15 (110001)
+-13 + -1 = -14 (110010)
+-12 + 0 = -12 (110100)
+-12 + 1 = -11 (110101)
+-12 + 2 = -10 (110110)
+-12 + 3 = -9 (110111)
+-12 + 4 = -8 (111000)
+-12 + 5 = -7 (111001)
+-12 + 6 = -6 (111010)
+-12 + 7 = -5 (111011)
+-12 + 8 = -4 (111100)
+-12 + 9 = -3 (111101)
+-12 + 10 = -2 (111110)
+-12 + 11 = -1 (111111)
+-12 + 12 = 0 (000000)
+-12 + 13 = 1 (000001)
+-12 + 14 = 2 (000010)
+-12 + 15 = 3 (000011)
+-12 + 16 = 4 (000100)
+-12 + 17 = 5 (000101)
+-12 + 18 = 6 (000110)
+-12 + 19 = 7 (000111)
+-12 + 20 = 8 (001000)
+-12 + 21 = 9 (001001)
+-12 + 22 = 10 (001010)
+-12 + 23 = 11 (001011)
+-12 + 24 = 12 (001100)
+-12 + 25 = 13 (001101)
+-12 + 26 = 14 (001110)
+-12 + 27 = 15 (001111)
+-12 + 28 = 16 (010000)
+-12 + 29 = 17 (010001)
+-12 + 30 = 18 (010010)
+-12 + 31 = 19 (010011)
+-12 + -32 = 20 (010100)
+-12 + -31 = 21 (010101)
+-12 + -30 = 22 (010110)
+-12 + -29 = 23 (010111)
+-12 + -28 = 24 (011000)
+-12 + -27 = 25 (011001)
+-12 + -26 = 26 (011010)
+-12 + -25 = 27 (011011)
+-12 + -24 = 28 (011100)
+-12 + -23 = 29 (011101)
+-12 + -22 = 30 (011110)
+-12 + -21 = 31 (011111)
+-12 + -20 = -32 (100000)
+-12 + -19 = -31 (100001)
+-12 + -18 = -30 (100010)
+-12 + -17 = -29 (100011)
+-12 + -16 = -28 (100100)
+-12 + -15 = -27 (100101)
+-12 + -14 = -26 (100110)
+-12 + -13 = -25 (100111)
+-12 + -12 = -24 (101000)
+-12 + -11 = -23 (101001)
+-12 + -10 = -22 (101010)
+-12 + -9 = -21 (101011)
+-12 + -8 = -20 (101100)
+-12 + -7 = -19 (101101)
+-12 + -6 = -18 (101110)
+-12 + -5 = -17 (101111)
+-12 + -4 = -16 (110000)
+-12 + -3 = -15 (110001)
+-12 + -2 = -14 (110010)
+-12 + -1 = -13 (110011)
+-11 + 0 = -11 (110101)
+-11 + 1 = -10 (110110)
+-11 + 2 = -9 (110111)
+-11 + 3 = -8 (111000)
+-11 + 4 = -7 (111001)
+-11 + 5 = -6 (111010)
+-11 + 6 = -5 (111011)
+-11 + 7 = -4 (111100)
+-11 + 8 = -3 (111101)
+-11 + 9 = -2 (111110)
+-11 + 10 = -1 (111111)
+-11 + 11 = 0 (000000)
+-11 + 12 = 1 (000001)
+-11 + 13 = 2 (000010)
+-11 + 14 = 3 (000011)
+-11 + 15 = 4 (000100)
+-11 + 16 = 5 (000101)
+-11 + 17 = 6 (000110)
+-11 + 18 = 7 (000111)
+-11 + 19 = 8 (001000)
+-11 + 20 = 9 (001001)
+-11 + 21 = 10 (001010)
+-11 + 22 = 11 (001011)
+-11 + 23 = 12 (001100)
+-11 + 24 = 13 (001101)
+-11 + 25 = 14 (001110)
+-11 + 26 = 15 (001111)
+-11 + 27 = 16 (010000)
+-11 + 28 = 17 (010001)
+-11 + 29 = 18 (010010)
+-11 + 30 = 19 (010011)
+-11 + 31 = 20 (010100)
+-11 + -32 = 21 (010101)
+-11 + -31 = 22 (010110)
+-11 + -30 = 23 (010111)
+-11 + -29 = 24 (011000)
+-11 + -28 = 25 (011001)
+-11 + -27 = 26 (011010)
+-11 + -26 = 27 (011011)
+-11 + -25 = 28 (011100)
+-11 + -24 = 29 (011101)
+-11 + -23 = 30 (011110)
+-11 + -22 = 31 (011111)
+-11 + -21 = -32 (100000)
+-11 + -20 = -31 (100001)
+-11 + -19 = -30 (100010)
+-11 + -18 = -29 (100011)
+-11 + -17 = -28 (100100)
+-11 + -16 = -27 (100101)
+-11 + -15 = -26 (100110)
+-11 + -14 = -25 (100111)
+-11 + -13 = -24 (101000)
+-11 + -12 = -23 (101001)
+-11 + -11 = -22 (101010)
+-11 + -10 = -21 (101011)
+-11 + -9 = -20 (101100)
+-11 + -8 = -19 (101101)
+-11 + -7 = -18 (101110)
+-11 + -6 = -17 (101111)
+-11 + -5 = -16 (110000)
+-11 + -4 = -15 (110001)
+-11 + -3 = -14 (110010)
+-11 + -2 = -13 (110011)
+-11 + -1 = -12 (110100)
+-10 + 0 = -10 (110110)
+-10 + 1 = -9 (110111)
+-10 + 2 = -8 (111000)
+-10 + 3 = -7 (111001)
+-10 + 4 = -6 (111010)
+-10 + 5 = -5 (111011)
+-10 + 6 = -4 (111100)
+-10 + 7 = -3 (111101)
+-10 + 8 = -2 (111110)
+-10 + 9 = -1 (111111)
+-10 + 10 = 0 (000000)
+-10 + 11 = 1 (000001)
+-10 + 12 = 2 (000010)
+-10 + 13 = 3 (000011)
+-10 + 14 = 4 (000100)
+-10 + 15 = 5 (000101)
+-10 + 16 = 6 (000110)
+-10 + 17 = 7 (000111)
+-10 + 18 = 8 (001000)
+-10 + 19 = 9 (001001)
+-10 + 20 = 10 (001010)
+-10 + 21 = 11 (001011)
+-10 + 22 = 12 (001100)
+-10 + 23 = 13 (001101)
+-10 + 24 = 14 (001110)
+-10 + 25 = 15 (001111)
+-10 + 26 = 16 (010000)
+-10 + 27 = 17 (010001)
+-10 + 28 = 18 (010010)
+-10 + 29 = 19 (010011)
+-10 + 30 = 20 (010100)
+-10 + 31 = 21 (010101)
+-10 + -32 = 22 (010110)
+-10 + -31 = 23 (010111)
+-10 + -30 = 24 (011000)
+-10 + -29 = 25 (011001)
+-10 + -28 = 26 (011010)
+-10 + -27 = 27 (011011)
+-10 + -26 = 28 (011100)
+-10 + -25 = 29 (011101)
+-10 + -24 = 30 (011110)
+-10 + -23 = 31 (011111)
+-10 + -22 = -32 (100000)
+-10 + -21 = -31 (100001)
+-10 + -20 = -30 (100010)
+-10 + -19 = -29 (100011)
+-10 + -18 = -28 (100100)
+-10 + -17 = -27 (100101)
+-10 + -16 = -26 (100110)
+-10 + -15 = -25 (100111)
+-10 + -14 = -24 (101000)
+-10 + -13 = -23 (101001)
+-10 + -12 = -22 (101010)
+-10 + -11 = -21 (101011)
+-10 + -10 = -20 (101100)
+-10 + -9 = -19 (101101)
+-10 + -8 = -18 (101110)
+-10 + -7 = -17 (101111)
+-10 + -6 = -16 (110000)
+-10 + -5 = -15 (110001)
+-10 + -4 = -14 (110010)
+-10 + -3 = -13 (110011)
+-10 + -2 = -12 (110100)
+-10 + -1 = -11 (110101)
+-9 + 0 = -9 (110111)
+-9 + 1 = -8 (111000)
+-9 + 2 = -7 (111001)
+-9 + 3 = -6 (111010)
+-9 + 4 = -5 (111011)
+-9 + 5 = -4 (111100)
+-9 + 6 = -3 (111101)
+-9 + 7 = -2 (111110)
+-9 + 8 = -1 (111111)
+-9 + 9 = 0 (000000)
+-9 + 10 = 1 (000001)
+-9 + 11 = 2 (000010)
+-9 + 12 = 3 (000011)
+-9 + 13 = 4 (000100)
+-9 + 14 = 5 (000101)
+-9 + 15 = 6 (000110)
+-9 + 16 = 7 (000111)
+-9 + 17 = 8 (001000)
+-9 + 18 = 9 (001001)
+-9 + 19 = 10 (001010)
+-9 + 20 = 11 (001011)
+-9 + 21 = 12 (001100)
+-9 + 22 = 13 (001101)
+-9 + 23 = 14 (001110)
+-9 + 24 = 15 (001111)
+-9 + 25 = 16 (010000)
+-9 + 26 = 17 (010001)
+-9 + 27 = 18 (010010)
+-9 + 28 = 19 (010011)
+-9 + 29 = 20 (010100)
+-9 + 30 = 21 (010101)
+-9 + 31 = 22 (010110)
+-9 + -32 = 23 (010111)
+-9 + -31 = 24 (011000)
+-9 + -30 = 25 (011001)
+-9 + -29 = 26 (011010)
+-9 + -28 = 27 (011011)
+-9 + -27 = 28 (011100)
+-9 + -26 = 29 (011101)
+-9 + -25 = 30 (011110)
+-9 + -24 = 31 (011111)
+-9 + -23 = -32 (100000)
+-9 + -22 = -31 (100001)
+-9 + -21 = -30 (100010)
+-9 + -20 = -29 (100011)
+-9 + -19 = -28 (100100)
+-9 + -18 = -27 (100101)
+-9 + -17 = -26 (100110)
+-9 + -16 = -25 (100111)
+-9 + -15 = -24 (101000)
+-9 + -14 = -23 (101001)
+-9 + -13 = -22 (101010)
+-9 + -12 = -21 (101011)
+-9 + -11 = -20 (101100)
+-9 + -10 = -19 (101101)
+-9 + -9 = -18 (101110)
+-9 + -8 = -17 (101111)
+-9 + -7 = -16 (110000)
+-9 + -6 = -15 (110001)
+-9 + -5 = -14 (110010)
+-9 + -4 = -13 (110011)
+-9 + -3 = -12 (110100)
+-9 + -2 = -11 (110101)
+-9 + -1 = -10 (110110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/lost_carry.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/lost_carry.f
new file mode 100644
index 000000000..e5ebe3a3b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/lost_carry.f
@@ -0,0 +1,3 @@
+lost_carry/datawidth.cpp
+lost_carry/stimgen.cpp
+lost_carry/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/main.cpp
new file mode 100644
index 000000000..3191d0641
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 6-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 6;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector in1 ("in1");
+ signal_bool_vector in2 ("in2");
+ signal_bool_vector result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/stimgen.h
new file mode 100644
index 000000000..0a0e9900d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/lost_carry/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector& result;
+ // Outputs
+ signal_bool_vector& in1;
+ signal_bool_vector& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector& RESULT,
+ signal_bool_vector& IN1,
+ signal_bool_vector& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/common.h
new file mode 100644
index 000000000..0eb606b60
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/common.h
@@ -0,0 +1,47 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+typedef sc_signal<sc_bv<7> > signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/datawidth.cpp
new file mode 100644
index 000000000..25913d4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_signed tmp_a (in1_width);
+ sc_signed tmp_b (in2_width);
+ sc_signed tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/datawidth.h
new file mode 100644
index 000000000..618250503
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector7& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector7& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/golden/promote.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/golden/promote.log
new file mode 100644
index 000000000..293408127
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/golden/promote.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + -32 = -32 (1100000)
+0 + -31 = -31 (1100001)
+0 + -30 = -30 (1100010)
+0 + -29 = -29 (1100011)
+0 + -28 = -28 (1100100)
+0 + -27 = -27 (1100101)
+0 + -26 = -26 (1100110)
+0 + -25 = -25 (1100111)
+0 + -24 = -24 (1101000)
+0 + -23 = -23 (1101001)
+0 + -22 = -22 (1101010)
+0 + -21 = -21 (1101011)
+0 + -20 = -20 (1101100)
+0 + -19 = -19 (1101101)
+0 + -18 = -18 (1101110)
+0 + -17 = -17 (1101111)
+0 + -16 = -16 (1110000)
+0 + -15 = -15 (1110001)
+0 + -14 = -14 (1110010)
+0 + -13 = -13 (1110011)
+0 + -12 = -12 (1110100)
+0 + -11 = -11 (1110101)
+0 + -10 = -10 (1110110)
+0 + -9 = -9 (1110111)
+0 + -8 = -8 (1111000)
+0 + -7 = -7 (1111001)
+0 + -6 = -6 (1111010)
+0 + -5 = -5 (1111011)
+0 + -4 = -4 (1111100)
+0 + -3 = -3 (1111101)
+0 + -2 = -2 (1111110)
+0 + -1 = -1 (1111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + -32 = -31 (1100001)
+1 + -31 = -30 (1100010)
+1 + -30 = -29 (1100011)
+1 + -29 = -28 (1100100)
+1 + -28 = -27 (1100101)
+1 + -27 = -26 (1100110)
+1 + -26 = -25 (1100111)
+1 + -25 = -24 (1101000)
+1 + -24 = -23 (1101001)
+1 + -23 = -22 (1101010)
+1 + -22 = -21 (1101011)
+1 + -21 = -20 (1101100)
+1 + -20 = -19 (1101101)
+1 + -19 = -18 (1101110)
+1 + -18 = -17 (1101111)
+1 + -17 = -16 (1110000)
+1 + -16 = -15 (1110001)
+1 + -15 = -14 (1110010)
+1 + -14 = -13 (1110011)
+1 + -13 = -12 (1110100)
+1 + -12 = -11 (1110101)
+1 + -11 = -10 (1110110)
+1 + -10 = -9 (1110111)
+1 + -9 = -8 (1111000)
+1 + -8 = -7 (1111001)
+1 + -7 = -6 (1111010)
+1 + -6 = -5 (1111011)
+1 + -5 = -4 (1111100)
+1 + -4 = -3 (1111101)
+1 + -3 = -2 (1111110)
+1 + -2 = -1 (1111111)
+1 + -1 = 0 (0000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + -32 = -30 (1100010)
+2 + -31 = -29 (1100011)
+2 + -30 = -28 (1100100)
+2 + -29 = -27 (1100101)
+2 + -28 = -26 (1100110)
+2 + -27 = -25 (1100111)
+2 + -26 = -24 (1101000)
+2 + -25 = -23 (1101001)
+2 + -24 = -22 (1101010)
+2 + -23 = -21 (1101011)
+2 + -22 = -20 (1101100)
+2 + -21 = -19 (1101101)
+2 + -20 = -18 (1101110)
+2 + -19 = -17 (1101111)
+2 + -18 = -16 (1110000)
+2 + -17 = -15 (1110001)
+2 + -16 = -14 (1110010)
+2 + -15 = -13 (1110011)
+2 + -14 = -12 (1110100)
+2 + -13 = -11 (1110101)
+2 + -12 = -10 (1110110)
+2 + -11 = -9 (1110111)
+2 + -10 = -8 (1111000)
+2 + -9 = -7 (1111001)
+2 + -8 = -6 (1111010)
+2 + -7 = -5 (1111011)
+2 + -6 = -4 (1111100)
+2 + -5 = -3 (1111101)
+2 + -4 = -2 (1111110)
+2 + -3 = -1 (1111111)
+2 + -2 = 0 (0000000)
+2 + -1 = 1 (0000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + -32 = -29 (1100011)
+3 + -31 = -28 (1100100)
+3 + -30 = -27 (1100101)
+3 + -29 = -26 (1100110)
+3 + -28 = -25 (1100111)
+3 + -27 = -24 (1101000)
+3 + -26 = -23 (1101001)
+3 + -25 = -22 (1101010)
+3 + -24 = -21 (1101011)
+3 + -23 = -20 (1101100)
+3 + -22 = -19 (1101101)
+3 + -21 = -18 (1101110)
+3 + -20 = -17 (1101111)
+3 + -19 = -16 (1110000)
+3 + -18 = -15 (1110001)
+3 + -17 = -14 (1110010)
+3 + -16 = -13 (1110011)
+3 + -15 = -12 (1110100)
+3 + -14 = -11 (1110101)
+3 + -13 = -10 (1110110)
+3 + -12 = -9 (1110111)
+3 + -11 = -8 (1111000)
+3 + -10 = -7 (1111001)
+3 + -9 = -6 (1111010)
+3 + -8 = -5 (1111011)
+3 + -7 = -4 (1111100)
+3 + -6 = -3 (1111101)
+3 + -5 = -2 (1111110)
+3 + -4 = -1 (1111111)
+3 + -3 = 0 (0000000)
+3 + -2 = 1 (0000001)
+3 + -1 = 2 (0000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + -32 = -28 (1100100)
+4 + -31 = -27 (1100101)
+4 + -30 = -26 (1100110)
+4 + -29 = -25 (1100111)
+4 + -28 = -24 (1101000)
+4 + -27 = -23 (1101001)
+4 + -26 = -22 (1101010)
+4 + -25 = -21 (1101011)
+4 + -24 = -20 (1101100)
+4 + -23 = -19 (1101101)
+4 + -22 = -18 (1101110)
+4 + -21 = -17 (1101111)
+4 + -20 = -16 (1110000)
+4 + -19 = -15 (1110001)
+4 + -18 = -14 (1110010)
+4 + -17 = -13 (1110011)
+4 + -16 = -12 (1110100)
+4 + -15 = -11 (1110101)
+4 + -14 = -10 (1110110)
+4 + -13 = -9 (1110111)
+4 + -12 = -8 (1111000)
+4 + -11 = -7 (1111001)
+4 + -10 = -6 (1111010)
+4 + -9 = -5 (1111011)
+4 + -8 = -4 (1111100)
+4 + -7 = -3 (1111101)
+4 + -6 = -2 (1111110)
+4 + -5 = -1 (1111111)
+4 + -4 = 0 (0000000)
+4 + -3 = 1 (0000001)
+4 + -2 = 2 (0000010)
+4 + -1 = 3 (0000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + -32 = -27 (1100101)
+5 + -31 = -26 (1100110)
+5 + -30 = -25 (1100111)
+5 + -29 = -24 (1101000)
+5 + -28 = -23 (1101001)
+5 + -27 = -22 (1101010)
+5 + -26 = -21 (1101011)
+5 + -25 = -20 (1101100)
+5 + -24 = -19 (1101101)
+5 + -23 = -18 (1101110)
+5 + -22 = -17 (1101111)
+5 + -21 = -16 (1110000)
+5 + -20 = -15 (1110001)
+5 + -19 = -14 (1110010)
+5 + -18 = -13 (1110011)
+5 + -17 = -12 (1110100)
+5 + -16 = -11 (1110101)
+5 + -15 = -10 (1110110)
+5 + -14 = -9 (1110111)
+5 + -13 = -8 (1111000)
+5 + -12 = -7 (1111001)
+5 + -11 = -6 (1111010)
+5 + -10 = -5 (1111011)
+5 + -9 = -4 (1111100)
+5 + -8 = -3 (1111101)
+5 + -7 = -2 (1111110)
+5 + -6 = -1 (1111111)
+5 + -5 = 0 (0000000)
+5 + -4 = 1 (0000001)
+5 + -3 = 2 (0000010)
+5 + -2 = 3 (0000011)
+5 + -1 = 4 (0000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + -32 = -26 (1100110)
+6 + -31 = -25 (1100111)
+6 + -30 = -24 (1101000)
+6 + -29 = -23 (1101001)
+6 + -28 = -22 (1101010)
+6 + -27 = -21 (1101011)
+6 + -26 = -20 (1101100)
+6 + -25 = -19 (1101101)
+6 + -24 = -18 (1101110)
+6 + -23 = -17 (1101111)
+6 + -22 = -16 (1110000)
+6 + -21 = -15 (1110001)
+6 + -20 = -14 (1110010)
+6 + -19 = -13 (1110011)
+6 + -18 = -12 (1110100)
+6 + -17 = -11 (1110101)
+6 + -16 = -10 (1110110)
+6 + -15 = -9 (1110111)
+6 + -14 = -8 (1111000)
+6 + -13 = -7 (1111001)
+6 + -12 = -6 (1111010)
+6 + -11 = -5 (1111011)
+6 + -10 = -4 (1111100)
+6 + -9 = -3 (1111101)
+6 + -8 = -2 (1111110)
+6 + -7 = -1 (1111111)
+6 + -6 = 0 (0000000)
+6 + -5 = 1 (0000001)
+6 + -4 = 2 (0000010)
+6 + -3 = 3 (0000011)
+6 + -2 = 4 (0000100)
+6 + -1 = 5 (0000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + -32 = -25 (1100111)
+7 + -31 = -24 (1101000)
+7 + -30 = -23 (1101001)
+7 + -29 = -22 (1101010)
+7 + -28 = -21 (1101011)
+7 + -27 = -20 (1101100)
+7 + -26 = -19 (1101101)
+7 + -25 = -18 (1101110)
+7 + -24 = -17 (1101111)
+7 + -23 = -16 (1110000)
+7 + -22 = -15 (1110001)
+7 + -21 = -14 (1110010)
+7 + -20 = -13 (1110011)
+7 + -19 = -12 (1110100)
+7 + -18 = -11 (1110101)
+7 + -17 = -10 (1110110)
+7 + -16 = -9 (1110111)
+7 + -15 = -8 (1111000)
+7 + -14 = -7 (1111001)
+7 + -13 = -6 (1111010)
+7 + -12 = -5 (1111011)
+7 + -11 = -4 (1111100)
+7 + -10 = -3 (1111101)
+7 + -9 = -2 (1111110)
+7 + -8 = -1 (1111111)
+7 + -7 = 0 (0000000)
+7 + -6 = 1 (0000001)
+7 + -5 = 2 (0000010)
+7 + -4 = 3 (0000011)
+7 + -3 = 4 (0000100)
+7 + -2 = 5 (0000101)
+7 + -1 = 6 (0000110)
+-8 + 0 = -8 (1111000)
+-8 + 1 = -7 (1111001)
+-8 + 2 = -6 (1111010)
+-8 + 3 = -5 (1111011)
+-8 + 4 = -4 (1111100)
+-8 + 5 = -3 (1111101)
+-8 + 6 = -2 (1111110)
+-8 + 7 = -1 (1111111)
+-8 + 8 = 0 (0000000)
+-8 + 9 = 1 (0000001)
+-8 + 10 = 2 (0000010)
+-8 + 11 = 3 (0000011)
+-8 + 12 = 4 (0000100)
+-8 + 13 = 5 (0000101)
+-8 + 14 = 6 (0000110)
+-8 + 15 = 7 (0000111)
+-8 + 16 = 8 (0001000)
+-8 + 17 = 9 (0001001)
+-8 + 18 = 10 (0001010)
+-8 + 19 = 11 (0001011)
+-8 + 20 = 12 (0001100)
+-8 + 21 = 13 (0001101)
+-8 + 22 = 14 (0001110)
+-8 + 23 = 15 (0001111)
+-8 + 24 = 16 (0010000)
+-8 + 25 = 17 (0010001)
+-8 + 26 = 18 (0010010)
+-8 + 27 = 19 (0010011)
+-8 + 28 = 20 (0010100)
+-8 + 29 = 21 (0010101)
+-8 + 30 = 22 (0010110)
+-8 + 31 = 23 (0010111)
+-8 + -32 = -40 (1011000)
+-8 + -31 = -39 (1011001)
+-8 + -30 = -38 (1011010)
+-8 + -29 = -37 (1011011)
+-8 + -28 = -36 (1011100)
+-8 + -27 = -35 (1011101)
+-8 + -26 = -34 (1011110)
+-8 + -25 = -33 (1011111)
+-8 + -24 = -32 (1100000)
+-8 + -23 = -31 (1100001)
+-8 + -22 = -30 (1100010)
+-8 + -21 = -29 (1100011)
+-8 + -20 = -28 (1100100)
+-8 + -19 = -27 (1100101)
+-8 + -18 = -26 (1100110)
+-8 + -17 = -25 (1100111)
+-8 + -16 = -24 (1101000)
+-8 + -15 = -23 (1101001)
+-8 + -14 = -22 (1101010)
+-8 + -13 = -21 (1101011)
+-8 + -12 = -20 (1101100)
+-8 + -11 = -19 (1101101)
+-8 + -10 = -18 (1101110)
+-8 + -9 = -17 (1101111)
+-8 + -8 = -16 (1110000)
+-8 + -7 = -15 (1110001)
+-8 + -6 = -14 (1110010)
+-8 + -5 = -13 (1110011)
+-8 + -4 = -12 (1110100)
+-8 + -3 = -11 (1110101)
+-8 + -2 = -10 (1110110)
+-8 + -1 = -9 (1110111)
+-7 + 0 = -7 (1111001)
+-7 + 1 = -6 (1111010)
+-7 + 2 = -5 (1111011)
+-7 + 3 = -4 (1111100)
+-7 + 4 = -3 (1111101)
+-7 + 5 = -2 (1111110)
+-7 + 6 = -1 (1111111)
+-7 + 7 = 0 (0000000)
+-7 + 8 = 1 (0000001)
+-7 + 9 = 2 (0000010)
+-7 + 10 = 3 (0000011)
+-7 + 11 = 4 (0000100)
+-7 + 12 = 5 (0000101)
+-7 + 13 = 6 (0000110)
+-7 + 14 = 7 (0000111)
+-7 + 15 = 8 (0001000)
+-7 + 16 = 9 (0001001)
+-7 + 17 = 10 (0001010)
+-7 + 18 = 11 (0001011)
+-7 + 19 = 12 (0001100)
+-7 + 20 = 13 (0001101)
+-7 + 21 = 14 (0001110)
+-7 + 22 = 15 (0001111)
+-7 + 23 = 16 (0010000)
+-7 + 24 = 17 (0010001)
+-7 + 25 = 18 (0010010)
+-7 + 26 = 19 (0010011)
+-7 + 27 = 20 (0010100)
+-7 + 28 = 21 (0010101)
+-7 + 29 = 22 (0010110)
+-7 + 30 = 23 (0010111)
+-7 + 31 = 24 (0011000)
+-7 + -32 = -39 (1011001)
+-7 + -31 = -38 (1011010)
+-7 + -30 = -37 (1011011)
+-7 + -29 = -36 (1011100)
+-7 + -28 = -35 (1011101)
+-7 + -27 = -34 (1011110)
+-7 + -26 = -33 (1011111)
+-7 + -25 = -32 (1100000)
+-7 + -24 = -31 (1100001)
+-7 + -23 = -30 (1100010)
+-7 + -22 = -29 (1100011)
+-7 + -21 = -28 (1100100)
+-7 + -20 = -27 (1100101)
+-7 + -19 = -26 (1100110)
+-7 + -18 = -25 (1100111)
+-7 + -17 = -24 (1101000)
+-7 + -16 = -23 (1101001)
+-7 + -15 = -22 (1101010)
+-7 + -14 = -21 (1101011)
+-7 + -13 = -20 (1101100)
+-7 + -12 = -19 (1101101)
+-7 + -11 = -18 (1101110)
+-7 + -10 = -17 (1101111)
+-7 + -9 = -16 (1110000)
+-7 + -8 = -15 (1110001)
+-7 + -7 = -14 (1110010)
+-7 + -6 = -13 (1110011)
+-7 + -5 = -12 (1110100)
+-7 + -4 = -11 (1110101)
+-7 + -3 = -10 (1110110)
+-7 + -2 = -9 (1110111)
+-7 + -1 = -8 (1111000)
+-6 + 0 = -6 (1111010)
+-6 + 1 = -5 (1111011)
+-6 + 2 = -4 (1111100)
+-6 + 3 = -3 (1111101)
+-6 + 4 = -2 (1111110)
+-6 + 5 = -1 (1111111)
+-6 + 6 = 0 (0000000)
+-6 + 7 = 1 (0000001)
+-6 + 8 = 2 (0000010)
+-6 + 9 = 3 (0000011)
+-6 + 10 = 4 (0000100)
+-6 + 11 = 5 (0000101)
+-6 + 12 = 6 (0000110)
+-6 + 13 = 7 (0000111)
+-6 + 14 = 8 (0001000)
+-6 + 15 = 9 (0001001)
+-6 + 16 = 10 (0001010)
+-6 + 17 = 11 (0001011)
+-6 + 18 = 12 (0001100)
+-6 + 19 = 13 (0001101)
+-6 + 20 = 14 (0001110)
+-6 + 21 = 15 (0001111)
+-6 + 22 = 16 (0010000)
+-6 + 23 = 17 (0010001)
+-6 + 24 = 18 (0010010)
+-6 + 25 = 19 (0010011)
+-6 + 26 = 20 (0010100)
+-6 + 27 = 21 (0010101)
+-6 + 28 = 22 (0010110)
+-6 + 29 = 23 (0010111)
+-6 + 30 = 24 (0011000)
+-6 + 31 = 25 (0011001)
+-6 + -32 = -38 (1011010)
+-6 + -31 = -37 (1011011)
+-6 + -30 = -36 (1011100)
+-6 + -29 = -35 (1011101)
+-6 + -28 = -34 (1011110)
+-6 + -27 = -33 (1011111)
+-6 + -26 = -32 (1100000)
+-6 + -25 = -31 (1100001)
+-6 + -24 = -30 (1100010)
+-6 + -23 = -29 (1100011)
+-6 + -22 = -28 (1100100)
+-6 + -21 = -27 (1100101)
+-6 + -20 = -26 (1100110)
+-6 + -19 = -25 (1100111)
+-6 + -18 = -24 (1101000)
+-6 + -17 = -23 (1101001)
+-6 + -16 = -22 (1101010)
+-6 + -15 = -21 (1101011)
+-6 + -14 = -20 (1101100)
+-6 + -13 = -19 (1101101)
+-6 + -12 = -18 (1101110)
+-6 + -11 = -17 (1101111)
+-6 + -10 = -16 (1110000)
+-6 + -9 = -15 (1110001)
+-6 + -8 = -14 (1110010)
+-6 + -7 = -13 (1110011)
+-6 + -6 = -12 (1110100)
+-6 + -5 = -11 (1110101)
+-6 + -4 = -10 (1110110)
+-6 + -3 = -9 (1110111)
+-6 + -2 = -8 (1111000)
+-6 + -1 = -7 (1111001)
+-5 + 0 = -5 (1111011)
+-5 + 1 = -4 (1111100)
+-5 + 2 = -3 (1111101)
+-5 + 3 = -2 (1111110)
+-5 + 4 = -1 (1111111)
+-5 + 5 = 0 (0000000)
+-5 + 6 = 1 (0000001)
+-5 + 7 = 2 (0000010)
+-5 + 8 = 3 (0000011)
+-5 + 9 = 4 (0000100)
+-5 + 10 = 5 (0000101)
+-5 + 11 = 6 (0000110)
+-5 + 12 = 7 (0000111)
+-5 + 13 = 8 (0001000)
+-5 + 14 = 9 (0001001)
+-5 + 15 = 10 (0001010)
+-5 + 16 = 11 (0001011)
+-5 + 17 = 12 (0001100)
+-5 + 18 = 13 (0001101)
+-5 + 19 = 14 (0001110)
+-5 + 20 = 15 (0001111)
+-5 + 21 = 16 (0010000)
+-5 + 22 = 17 (0010001)
+-5 + 23 = 18 (0010010)
+-5 + 24 = 19 (0010011)
+-5 + 25 = 20 (0010100)
+-5 + 26 = 21 (0010101)
+-5 + 27 = 22 (0010110)
+-5 + 28 = 23 (0010111)
+-5 + 29 = 24 (0011000)
+-5 + 30 = 25 (0011001)
+-5 + 31 = 26 (0011010)
+-5 + -32 = -37 (1011011)
+-5 + -31 = -36 (1011100)
+-5 + -30 = -35 (1011101)
+-5 + -29 = -34 (1011110)
+-5 + -28 = -33 (1011111)
+-5 + -27 = -32 (1100000)
+-5 + -26 = -31 (1100001)
+-5 + -25 = -30 (1100010)
+-5 + -24 = -29 (1100011)
+-5 + -23 = -28 (1100100)
+-5 + -22 = -27 (1100101)
+-5 + -21 = -26 (1100110)
+-5 + -20 = -25 (1100111)
+-5 + -19 = -24 (1101000)
+-5 + -18 = -23 (1101001)
+-5 + -17 = -22 (1101010)
+-5 + -16 = -21 (1101011)
+-5 + -15 = -20 (1101100)
+-5 + -14 = -19 (1101101)
+-5 + -13 = -18 (1101110)
+-5 + -12 = -17 (1101111)
+-5 + -11 = -16 (1110000)
+-5 + -10 = -15 (1110001)
+-5 + -9 = -14 (1110010)
+-5 + -8 = -13 (1110011)
+-5 + -7 = -12 (1110100)
+-5 + -6 = -11 (1110101)
+-5 + -5 = -10 (1110110)
+-5 + -4 = -9 (1110111)
+-5 + -3 = -8 (1111000)
+-5 + -2 = -7 (1111001)
+-5 + -1 = -6 (1111010)
+-4 + 0 = -4 (1111100)
+-4 + 1 = -3 (1111101)
+-4 + 2 = -2 (1111110)
+-4 + 3 = -1 (1111111)
+-4 + 4 = 0 (0000000)
+-4 + 5 = 1 (0000001)
+-4 + 6 = 2 (0000010)
+-4 + 7 = 3 (0000011)
+-4 + 8 = 4 (0000100)
+-4 + 9 = 5 (0000101)
+-4 + 10 = 6 (0000110)
+-4 + 11 = 7 (0000111)
+-4 + 12 = 8 (0001000)
+-4 + 13 = 9 (0001001)
+-4 + 14 = 10 (0001010)
+-4 + 15 = 11 (0001011)
+-4 + 16 = 12 (0001100)
+-4 + 17 = 13 (0001101)
+-4 + 18 = 14 (0001110)
+-4 + 19 = 15 (0001111)
+-4 + 20 = 16 (0010000)
+-4 + 21 = 17 (0010001)
+-4 + 22 = 18 (0010010)
+-4 + 23 = 19 (0010011)
+-4 + 24 = 20 (0010100)
+-4 + 25 = 21 (0010101)
+-4 + 26 = 22 (0010110)
+-4 + 27 = 23 (0010111)
+-4 + 28 = 24 (0011000)
+-4 + 29 = 25 (0011001)
+-4 + 30 = 26 (0011010)
+-4 + 31 = 27 (0011011)
+-4 + -32 = -36 (1011100)
+-4 + -31 = -35 (1011101)
+-4 + -30 = -34 (1011110)
+-4 + -29 = -33 (1011111)
+-4 + -28 = -32 (1100000)
+-4 + -27 = -31 (1100001)
+-4 + -26 = -30 (1100010)
+-4 + -25 = -29 (1100011)
+-4 + -24 = -28 (1100100)
+-4 + -23 = -27 (1100101)
+-4 + -22 = -26 (1100110)
+-4 + -21 = -25 (1100111)
+-4 + -20 = -24 (1101000)
+-4 + -19 = -23 (1101001)
+-4 + -18 = -22 (1101010)
+-4 + -17 = -21 (1101011)
+-4 + -16 = -20 (1101100)
+-4 + -15 = -19 (1101101)
+-4 + -14 = -18 (1101110)
+-4 + -13 = -17 (1101111)
+-4 + -12 = -16 (1110000)
+-4 + -11 = -15 (1110001)
+-4 + -10 = -14 (1110010)
+-4 + -9 = -13 (1110011)
+-4 + -8 = -12 (1110100)
+-4 + -7 = -11 (1110101)
+-4 + -6 = -10 (1110110)
+-4 + -5 = -9 (1110111)
+-4 + -4 = -8 (1111000)
+-4 + -3 = -7 (1111001)
+-4 + -2 = -6 (1111010)
+-4 + -1 = -5 (1111011)
+-3 + 0 = -3 (1111101)
+-3 + 1 = -2 (1111110)
+-3 + 2 = -1 (1111111)
+-3 + 3 = 0 (0000000)
+-3 + 4 = 1 (0000001)
+-3 + 5 = 2 (0000010)
+-3 + 6 = 3 (0000011)
+-3 + 7 = 4 (0000100)
+-3 + 8 = 5 (0000101)
+-3 + 9 = 6 (0000110)
+-3 + 10 = 7 (0000111)
+-3 + 11 = 8 (0001000)
+-3 + 12 = 9 (0001001)
+-3 + 13 = 10 (0001010)
+-3 + 14 = 11 (0001011)
+-3 + 15 = 12 (0001100)
+-3 + 16 = 13 (0001101)
+-3 + 17 = 14 (0001110)
+-3 + 18 = 15 (0001111)
+-3 + 19 = 16 (0010000)
+-3 + 20 = 17 (0010001)
+-3 + 21 = 18 (0010010)
+-3 + 22 = 19 (0010011)
+-3 + 23 = 20 (0010100)
+-3 + 24 = 21 (0010101)
+-3 + 25 = 22 (0010110)
+-3 + 26 = 23 (0010111)
+-3 + 27 = 24 (0011000)
+-3 + 28 = 25 (0011001)
+-3 + 29 = 26 (0011010)
+-3 + 30 = 27 (0011011)
+-3 + 31 = 28 (0011100)
+-3 + -32 = -35 (1011101)
+-3 + -31 = -34 (1011110)
+-3 + -30 = -33 (1011111)
+-3 + -29 = -32 (1100000)
+-3 + -28 = -31 (1100001)
+-3 + -27 = -30 (1100010)
+-3 + -26 = -29 (1100011)
+-3 + -25 = -28 (1100100)
+-3 + -24 = -27 (1100101)
+-3 + -23 = -26 (1100110)
+-3 + -22 = -25 (1100111)
+-3 + -21 = -24 (1101000)
+-3 + -20 = -23 (1101001)
+-3 + -19 = -22 (1101010)
+-3 + -18 = -21 (1101011)
+-3 + -17 = -20 (1101100)
+-3 + -16 = -19 (1101101)
+-3 + -15 = -18 (1101110)
+-3 + -14 = -17 (1101111)
+-3 + -13 = -16 (1110000)
+-3 + -12 = -15 (1110001)
+-3 + -11 = -14 (1110010)
+-3 + -10 = -13 (1110011)
+-3 + -9 = -12 (1110100)
+-3 + -8 = -11 (1110101)
+-3 + -7 = -10 (1110110)
+-3 + -6 = -9 (1110111)
+-3 + -5 = -8 (1111000)
+-3 + -4 = -7 (1111001)
+-3 + -3 = -6 (1111010)
+-3 + -2 = -5 (1111011)
+-3 + -1 = -4 (1111100)
+-2 + 0 = -2 (1111110)
+-2 + 1 = -1 (1111111)
+-2 + 2 = 0 (0000000)
+-2 + 3 = 1 (0000001)
+-2 + 4 = 2 (0000010)
+-2 + 5 = 3 (0000011)
+-2 + 6 = 4 (0000100)
+-2 + 7 = 5 (0000101)
+-2 + 8 = 6 (0000110)
+-2 + 9 = 7 (0000111)
+-2 + 10 = 8 (0001000)
+-2 + 11 = 9 (0001001)
+-2 + 12 = 10 (0001010)
+-2 + 13 = 11 (0001011)
+-2 + 14 = 12 (0001100)
+-2 + 15 = 13 (0001101)
+-2 + 16 = 14 (0001110)
+-2 + 17 = 15 (0001111)
+-2 + 18 = 16 (0010000)
+-2 + 19 = 17 (0010001)
+-2 + 20 = 18 (0010010)
+-2 + 21 = 19 (0010011)
+-2 + 22 = 20 (0010100)
+-2 + 23 = 21 (0010101)
+-2 + 24 = 22 (0010110)
+-2 + 25 = 23 (0010111)
+-2 + 26 = 24 (0011000)
+-2 + 27 = 25 (0011001)
+-2 + 28 = 26 (0011010)
+-2 + 29 = 27 (0011011)
+-2 + 30 = 28 (0011100)
+-2 + 31 = 29 (0011101)
+-2 + -32 = -34 (1011110)
+-2 + -31 = -33 (1011111)
+-2 + -30 = -32 (1100000)
+-2 + -29 = -31 (1100001)
+-2 + -28 = -30 (1100010)
+-2 + -27 = -29 (1100011)
+-2 + -26 = -28 (1100100)
+-2 + -25 = -27 (1100101)
+-2 + -24 = -26 (1100110)
+-2 + -23 = -25 (1100111)
+-2 + -22 = -24 (1101000)
+-2 + -21 = -23 (1101001)
+-2 + -20 = -22 (1101010)
+-2 + -19 = -21 (1101011)
+-2 + -18 = -20 (1101100)
+-2 + -17 = -19 (1101101)
+-2 + -16 = -18 (1101110)
+-2 + -15 = -17 (1101111)
+-2 + -14 = -16 (1110000)
+-2 + -13 = -15 (1110001)
+-2 + -12 = -14 (1110010)
+-2 + -11 = -13 (1110011)
+-2 + -10 = -12 (1110100)
+-2 + -9 = -11 (1110101)
+-2 + -8 = -10 (1110110)
+-2 + -7 = -9 (1110111)
+-2 + -6 = -8 (1111000)
+-2 + -5 = -7 (1111001)
+-2 + -4 = -6 (1111010)
+-2 + -3 = -5 (1111011)
+-2 + -2 = -4 (1111100)
+-2 + -1 = -3 (1111101)
+-1 + 0 = -1 (1111111)
+-1 + 1 = 0 (0000000)
+-1 + 2 = 1 (0000001)
+-1 + 3 = 2 (0000010)
+-1 + 4 = 3 (0000011)
+-1 + 5 = 4 (0000100)
+-1 + 6 = 5 (0000101)
+-1 + 7 = 6 (0000110)
+-1 + 8 = 7 (0000111)
+-1 + 9 = 8 (0001000)
+-1 + 10 = 9 (0001001)
+-1 + 11 = 10 (0001010)
+-1 + 12 = 11 (0001011)
+-1 + 13 = 12 (0001100)
+-1 + 14 = 13 (0001101)
+-1 + 15 = 14 (0001110)
+-1 + 16 = 15 (0001111)
+-1 + 17 = 16 (0010000)
+-1 + 18 = 17 (0010001)
+-1 + 19 = 18 (0010010)
+-1 + 20 = 19 (0010011)
+-1 + 21 = 20 (0010100)
+-1 + 22 = 21 (0010101)
+-1 + 23 = 22 (0010110)
+-1 + 24 = 23 (0010111)
+-1 + 25 = 24 (0011000)
+-1 + 26 = 25 (0011001)
+-1 + 27 = 26 (0011010)
+-1 + 28 = 27 (0011011)
+-1 + 29 = 28 (0011100)
+-1 + 30 = 29 (0011101)
+-1 + 31 = 30 (0011110)
+-1 + -32 = -33 (1011111)
+-1 + -31 = -32 (1100000)
+-1 + -30 = -31 (1100001)
+-1 + -29 = -30 (1100010)
+-1 + -28 = -29 (1100011)
+-1 + -27 = -28 (1100100)
+-1 + -26 = -27 (1100101)
+-1 + -25 = -26 (1100110)
+-1 + -24 = -25 (1100111)
+-1 + -23 = -24 (1101000)
+-1 + -22 = -23 (1101001)
+-1 + -21 = -22 (1101010)
+-1 + -20 = -21 (1101011)
+-1 + -19 = -20 (1101100)
+-1 + -18 = -19 (1101101)
+-1 + -17 = -18 (1101110)
+-1 + -16 = -17 (1101111)
+-1 + -15 = -16 (1110000)
+-1 + -14 = -15 (1110001)
+-1 + -13 = -14 (1110010)
+-1 + -12 = -13 (1110011)
+-1 + -11 = -12 (1110100)
+-1 + -10 = -11 (1110101)
+-1 + -9 = -10 (1110110)
+-1 + -8 = -9 (1110111)
+-1 + -7 = -8 (1111000)
+-1 + -6 = -7 (1111001)
+-1 + -5 = -6 (1111010)
+-1 + -4 = -5 (1111011)
+-1 + -3 = -4 (1111100)
+-1 + -2 = -3 (1111101)
+-1 + -1 = -2 (1111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/main.cpp
new file mode 100644
index 000000000..788364aa5
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 7-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 7;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/promote.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/promote.f
new file mode 100644
index 000000000..4f270dbe0
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/promote.f
@@ -0,0 +1,3 @@
+promote/datawidth.cpp
+promote/stimgen.cpp
+promote/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/stimgen.h
new file mode 100644
index 000000000..723f5103f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector7& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector7& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/common.h
new file mode 100644
index 000000000..8f3bbf59c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/common.h
@@ -0,0 +1,47 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+typedef sc_signal<sc_bv<9> > signal_bool_vector9;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/datawidth.cpp
new file mode 100644
index 000000000..25913d4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_signed tmp_a (in1_width);
+ sc_signed tmp_b (in2_width);
+ sc_signed tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/datawidth.h
new file mode 100644
index 000000000..284757aeb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector9& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector9& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/golden/promote_extension.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/golden/promote_extension.log
new file mode 100644
index 000000000..3290f802a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/golden/promote_extension.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + -32 = -32 (111100000)
+0 + -31 = -31 (111100001)
+0 + -30 = -30 (111100010)
+0 + -29 = -29 (111100011)
+0 + -28 = -28 (111100100)
+0 + -27 = -27 (111100101)
+0 + -26 = -26 (111100110)
+0 + -25 = -25 (111100111)
+0 + -24 = -24 (111101000)
+0 + -23 = -23 (111101001)
+0 + -22 = -22 (111101010)
+0 + -21 = -21 (111101011)
+0 + -20 = -20 (111101100)
+0 + -19 = -19 (111101101)
+0 + -18 = -18 (111101110)
+0 + -17 = -17 (111101111)
+0 + -16 = -16 (111110000)
+0 + -15 = -15 (111110001)
+0 + -14 = -14 (111110010)
+0 + -13 = -13 (111110011)
+0 + -12 = -12 (111110100)
+0 + -11 = -11 (111110101)
+0 + -10 = -10 (111110110)
+0 + -9 = -9 (111110111)
+0 + -8 = -8 (111111000)
+0 + -7 = -7 (111111001)
+0 + -6 = -6 (111111010)
+0 + -5 = -5 (111111011)
+0 + -4 = -4 (111111100)
+0 + -3 = -3 (111111101)
+0 + -2 = -2 (111111110)
+0 + -1 = -1 (111111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + -32 = -31 (111100001)
+1 + -31 = -30 (111100010)
+1 + -30 = -29 (111100011)
+1 + -29 = -28 (111100100)
+1 + -28 = -27 (111100101)
+1 + -27 = -26 (111100110)
+1 + -26 = -25 (111100111)
+1 + -25 = -24 (111101000)
+1 + -24 = -23 (111101001)
+1 + -23 = -22 (111101010)
+1 + -22 = -21 (111101011)
+1 + -21 = -20 (111101100)
+1 + -20 = -19 (111101101)
+1 + -19 = -18 (111101110)
+1 + -18 = -17 (111101111)
+1 + -17 = -16 (111110000)
+1 + -16 = -15 (111110001)
+1 + -15 = -14 (111110010)
+1 + -14 = -13 (111110011)
+1 + -13 = -12 (111110100)
+1 + -12 = -11 (111110101)
+1 + -11 = -10 (111110110)
+1 + -10 = -9 (111110111)
+1 + -9 = -8 (111111000)
+1 + -8 = -7 (111111001)
+1 + -7 = -6 (111111010)
+1 + -6 = -5 (111111011)
+1 + -5 = -4 (111111100)
+1 + -4 = -3 (111111101)
+1 + -3 = -2 (111111110)
+1 + -2 = -1 (111111111)
+1 + -1 = 0 (000000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + -32 = -30 (111100010)
+2 + -31 = -29 (111100011)
+2 + -30 = -28 (111100100)
+2 + -29 = -27 (111100101)
+2 + -28 = -26 (111100110)
+2 + -27 = -25 (111100111)
+2 + -26 = -24 (111101000)
+2 + -25 = -23 (111101001)
+2 + -24 = -22 (111101010)
+2 + -23 = -21 (111101011)
+2 + -22 = -20 (111101100)
+2 + -21 = -19 (111101101)
+2 + -20 = -18 (111101110)
+2 + -19 = -17 (111101111)
+2 + -18 = -16 (111110000)
+2 + -17 = -15 (111110001)
+2 + -16 = -14 (111110010)
+2 + -15 = -13 (111110011)
+2 + -14 = -12 (111110100)
+2 + -13 = -11 (111110101)
+2 + -12 = -10 (111110110)
+2 + -11 = -9 (111110111)
+2 + -10 = -8 (111111000)
+2 + -9 = -7 (111111001)
+2 + -8 = -6 (111111010)
+2 + -7 = -5 (111111011)
+2 + -6 = -4 (111111100)
+2 + -5 = -3 (111111101)
+2 + -4 = -2 (111111110)
+2 + -3 = -1 (111111111)
+2 + -2 = 0 (000000000)
+2 + -1 = 1 (000000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + -32 = -29 (111100011)
+3 + -31 = -28 (111100100)
+3 + -30 = -27 (111100101)
+3 + -29 = -26 (111100110)
+3 + -28 = -25 (111100111)
+3 + -27 = -24 (111101000)
+3 + -26 = -23 (111101001)
+3 + -25 = -22 (111101010)
+3 + -24 = -21 (111101011)
+3 + -23 = -20 (111101100)
+3 + -22 = -19 (111101101)
+3 + -21 = -18 (111101110)
+3 + -20 = -17 (111101111)
+3 + -19 = -16 (111110000)
+3 + -18 = -15 (111110001)
+3 + -17 = -14 (111110010)
+3 + -16 = -13 (111110011)
+3 + -15 = -12 (111110100)
+3 + -14 = -11 (111110101)
+3 + -13 = -10 (111110110)
+3 + -12 = -9 (111110111)
+3 + -11 = -8 (111111000)
+3 + -10 = -7 (111111001)
+3 + -9 = -6 (111111010)
+3 + -8 = -5 (111111011)
+3 + -7 = -4 (111111100)
+3 + -6 = -3 (111111101)
+3 + -5 = -2 (111111110)
+3 + -4 = -1 (111111111)
+3 + -3 = 0 (000000000)
+3 + -2 = 1 (000000001)
+3 + -1 = 2 (000000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + -32 = -28 (111100100)
+4 + -31 = -27 (111100101)
+4 + -30 = -26 (111100110)
+4 + -29 = -25 (111100111)
+4 + -28 = -24 (111101000)
+4 + -27 = -23 (111101001)
+4 + -26 = -22 (111101010)
+4 + -25 = -21 (111101011)
+4 + -24 = -20 (111101100)
+4 + -23 = -19 (111101101)
+4 + -22 = -18 (111101110)
+4 + -21 = -17 (111101111)
+4 + -20 = -16 (111110000)
+4 + -19 = -15 (111110001)
+4 + -18 = -14 (111110010)
+4 + -17 = -13 (111110011)
+4 + -16 = -12 (111110100)
+4 + -15 = -11 (111110101)
+4 + -14 = -10 (111110110)
+4 + -13 = -9 (111110111)
+4 + -12 = -8 (111111000)
+4 + -11 = -7 (111111001)
+4 + -10 = -6 (111111010)
+4 + -9 = -5 (111111011)
+4 + -8 = -4 (111111100)
+4 + -7 = -3 (111111101)
+4 + -6 = -2 (111111110)
+4 + -5 = -1 (111111111)
+4 + -4 = 0 (000000000)
+4 + -3 = 1 (000000001)
+4 + -2 = 2 (000000010)
+4 + -1 = 3 (000000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + -32 = -27 (111100101)
+5 + -31 = -26 (111100110)
+5 + -30 = -25 (111100111)
+5 + -29 = -24 (111101000)
+5 + -28 = -23 (111101001)
+5 + -27 = -22 (111101010)
+5 + -26 = -21 (111101011)
+5 + -25 = -20 (111101100)
+5 + -24 = -19 (111101101)
+5 + -23 = -18 (111101110)
+5 + -22 = -17 (111101111)
+5 + -21 = -16 (111110000)
+5 + -20 = -15 (111110001)
+5 + -19 = -14 (111110010)
+5 + -18 = -13 (111110011)
+5 + -17 = -12 (111110100)
+5 + -16 = -11 (111110101)
+5 + -15 = -10 (111110110)
+5 + -14 = -9 (111110111)
+5 + -13 = -8 (111111000)
+5 + -12 = -7 (111111001)
+5 + -11 = -6 (111111010)
+5 + -10 = -5 (111111011)
+5 + -9 = -4 (111111100)
+5 + -8 = -3 (111111101)
+5 + -7 = -2 (111111110)
+5 + -6 = -1 (111111111)
+5 + -5 = 0 (000000000)
+5 + -4 = 1 (000000001)
+5 + -3 = 2 (000000010)
+5 + -2 = 3 (000000011)
+5 + -1 = 4 (000000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + -32 = -26 (111100110)
+6 + -31 = -25 (111100111)
+6 + -30 = -24 (111101000)
+6 + -29 = -23 (111101001)
+6 + -28 = -22 (111101010)
+6 + -27 = -21 (111101011)
+6 + -26 = -20 (111101100)
+6 + -25 = -19 (111101101)
+6 + -24 = -18 (111101110)
+6 + -23 = -17 (111101111)
+6 + -22 = -16 (111110000)
+6 + -21 = -15 (111110001)
+6 + -20 = -14 (111110010)
+6 + -19 = -13 (111110011)
+6 + -18 = -12 (111110100)
+6 + -17 = -11 (111110101)
+6 + -16 = -10 (111110110)
+6 + -15 = -9 (111110111)
+6 + -14 = -8 (111111000)
+6 + -13 = -7 (111111001)
+6 + -12 = -6 (111111010)
+6 + -11 = -5 (111111011)
+6 + -10 = -4 (111111100)
+6 + -9 = -3 (111111101)
+6 + -8 = -2 (111111110)
+6 + -7 = -1 (111111111)
+6 + -6 = 0 (000000000)
+6 + -5 = 1 (000000001)
+6 + -4 = 2 (000000010)
+6 + -3 = 3 (000000011)
+6 + -2 = 4 (000000100)
+6 + -1 = 5 (000000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + -32 = -25 (111100111)
+7 + -31 = -24 (111101000)
+7 + -30 = -23 (111101001)
+7 + -29 = -22 (111101010)
+7 + -28 = -21 (111101011)
+7 + -27 = -20 (111101100)
+7 + -26 = -19 (111101101)
+7 + -25 = -18 (111101110)
+7 + -24 = -17 (111101111)
+7 + -23 = -16 (111110000)
+7 + -22 = -15 (111110001)
+7 + -21 = -14 (111110010)
+7 + -20 = -13 (111110011)
+7 + -19 = -12 (111110100)
+7 + -18 = -11 (111110101)
+7 + -17 = -10 (111110110)
+7 + -16 = -9 (111110111)
+7 + -15 = -8 (111111000)
+7 + -14 = -7 (111111001)
+7 + -13 = -6 (111111010)
+7 + -12 = -5 (111111011)
+7 + -11 = -4 (111111100)
+7 + -10 = -3 (111111101)
+7 + -9 = -2 (111111110)
+7 + -8 = -1 (111111111)
+7 + -7 = 0 (000000000)
+7 + -6 = 1 (000000001)
+7 + -5 = 2 (000000010)
+7 + -4 = 3 (000000011)
+7 + -3 = 4 (000000100)
+7 + -2 = 5 (000000101)
+7 + -1 = 6 (000000110)
+-8 + 0 = -8 (111111000)
+-8 + 1 = -7 (111111001)
+-8 + 2 = -6 (111111010)
+-8 + 3 = -5 (111111011)
+-8 + 4 = -4 (111111100)
+-8 + 5 = -3 (111111101)
+-8 + 6 = -2 (111111110)
+-8 + 7 = -1 (111111111)
+-8 + 8 = 0 (000000000)
+-8 + 9 = 1 (000000001)
+-8 + 10 = 2 (000000010)
+-8 + 11 = 3 (000000011)
+-8 + 12 = 4 (000000100)
+-8 + 13 = 5 (000000101)
+-8 + 14 = 6 (000000110)
+-8 + 15 = 7 (000000111)
+-8 + 16 = 8 (000001000)
+-8 + 17 = 9 (000001001)
+-8 + 18 = 10 (000001010)
+-8 + 19 = 11 (000001011)
+-8 + 20 = 12 (000001100)
+-8 + 21 = 13 (000001101)
+-8 + 22 = 14 (000001110)
+-8 + 23 = 15 (000001111)
+-8 + 24 = 16 (000010000)
+-8 + 25 = 17 (000010001)
+-8 + 26 = 18 (000010010)
+-8 + 27 = 19 (000010011)
+-8 + 28 = 20 (000010100)
+-8 + 29 = 21 (000010101)
+-8 + 30 = 22 (000010110)
+-8 + 31 = 23 (000010111)
+-8 + -32 = -40 (111011000)
+-8 + -31 = -39 (111011001)
+-8 + -30 = -38 (111011010)
+-8 + -29 = -37 (111011011)
+-8 + -28 = -36 (111011100)
+-8 + -27 = -35 (111011101)
+-8 + -26 = -34 (111011110)
+-8 + -25 = -33 (111011111)
+-8 + -24 = -32 (111100000)
+-8 + -23 = -31 (111100001)
+-8 + -22 = -30 (111100010)
+-8 + -21 = -29 (111100011)
+-8 + -20 = -28 (111100100)
+-8 + -19 = -27 (111100101)
+-8 + -18 = -26 (111100110)
+-8 + -17 = -25 (111100111)
+-8 + -16 = -24 (111101000)
+-8 + -15 = -23 (111101001)
+-8 + -14 = -22 (111101010)
+-8 + -13 = -21 (111101011)
+-8 + -12 = -20 (111101100)
+-8 + -11 = -19 (111101101)
+-8 + -10 = -18 (111101110)
+-8 + -9 = -17 (111101111)
+-8 + -8 = -16 (111110000)
+-8 + -7 = -15 (111110001)
+-8 + -6 = -14 (111110010)
+-8 + -5 = -13 (111110011)
+-8 + -4 = -12 (111110100)
+-8 + -3 = -11 (111110101)
+-8 + -2 = -10 (111110110)
+-8 + -1 = -9 (111110111)
+-7 + 0 = -7 (111111001)
+-7 + 1 = -6 (111111010)
+-7 + 2 = -5 (111111011)
+-7 + 3 = -4 (111111100)
+-7 + 4 = -3 (111111101)
+-7 + 5 = -2 (111111110)
+-7 + 6 = -1 (111111111)
+-7 + 7 = 0 (000000000)
+-7 + 8 = 1 (000000001)
+-7 + 9 = 2 (000000010)
+-7 + 10 = 3 (000000011)
+-7 + 11 = 4 (000000100)
+-7 + 12 = 5 (000000101)
+-7 + 13 = 6 (000000110)
+-7 + 14 = 7 (000000111)
+-7 + 15 = 8 (000001000)
+-7 + 16 = 9 (000001001)
+-7 + 17 = 10 (000001010)
+-7 + 18 = 11 (000001011)
+-7 + 19 = 12 (000001100)
+-7 + 20 = 13 (000001101)
+-7 + 21 = 14 (000001110)
+-7 + 22 = 15 (000001111)
+-7 + 23 = 16 (000010000)
+-7 + 24 = 17 (000010001)
+-7 + 25 = 18 (000010010)
+-7 + 26 = 19 (000010011)
+-7 + 27 = 20 (000010100)
+-7 + 28 = 21 (000010101)
+-7 + 29 = 22 (000010110)
+-7 + 30 = 23 (000010111)
+-7 + 31 = 24 (000011000)
+-7 + -32 = -39 (111011001)
+-7 + -31 = -38 (111011010)
+-7 + -30 = -37 (111011011)
+-7 + -29 = -36 (111011100)
+-7 + -28 = -35 (111011101)
+-7 + -27 = -34 (111011110)
+-7 + -26 = -33 (111011111)
+-7 + -25 = -32 (111100000)
+-7 + -24 = -31 (111100001)
+-7 + -23 = -30 (111100010)
+-7 + -22 = -29 (111100011)
+-7 + -21 = -28 (111100100)
+-7 + -20 = -27 (111100101)
+-7 + -19 = -26 (111100110)
+-7 + -18 = -25 (111100111)
+-7 + -17 = -24 (111101000)
+-7 + -16 = -23 (111101001)
+-7 + -15 = -22 (111101010)
+-7 + -14 = -21 (111101011)
+-7 + -13 = -20 (111101100)
+-7 + -12 = -19 (111101101)
+-7 + -11 = -18 (111101110)
+-7 + -10 = -17 (111101111)
+-7 + -9 = -16 (111110000)
+-7 + -8 = -15 (111110001)
+-7 + -7 = -14 (111110010)
+-7 + -6 = -13 (111110011)
+-7 + -5 = -12 (111110100)
+-7 + -4 = -11 (111110101)
+-7 + -3 = -10 (111110110)
+-7 + -2 = -9 (111110111)
+-7 + -1 = -8 (111111000)
+-6 + 0 = -6 (111111010)
+-6 + 1 = -5 (111111011)
+-6 + 2 = -4 (111111100)
+-6 + 3 = -3 (111111101)
+-6 + 4 = -2 (111111110)
+-6 + 5 = -1 (111111111)
+-6 + 6 = 0 (000000000)
+-6 + 7 = 1 (000000001)
+-6 + 8 = 2 (000000010)
+-6 + 9 = 3 (000000011)
+-6 + 10 = 4 (000000100)
+-6 + 11 = 5 (000000101)
+-6 + 12 = 6 (000000110)
+-6 + 13 = 7 (000000111)
+-6 + 14 = 8 (000001000)
+-6 + 15 = 9 (000001001)
+-6 + 16 = 10 (000001010)
+-6 + 17 = 11 (000001011)
+-6 + 18 = 12 (000001100)
+-6 + 19 = 13 (000001101)
+-6 + 20 = 14 (000001110)
+-6 + 21 = 15 (000001111)
+-6 + 22 = 16 (000010000)
+-6 + 23 = 17 (000010001)
+-6 + 24 = 18 (000010010)
+-6 + 25 = 19 (000010011)
+-6 + 26 = 20 (000010100)
+-6 + 27 = 21 (000010101)
+-6 + 28 = 22 (000010110)
+-6 + 29 = 23 (000010111)
+-6 + 30 = 24 (000011000)
+-6 + 31 = 25 (000011001)
+-6 + -32 = -38 (111011010)
+-6 + -31 = -37 (111011011)
+-6 + -30 = -36 (111011100)
+-6 + -29 = -35 (111011101)
+-6 + -28 = -34 (111011110)
+-6 + -27 = -33 (111011111)
+-6 + -26 = -32 (111100000)
+-6 + -25 = -31 (111100001)
+-6 + -24 = -30 (111100010)
+-6 + -23 = -29 (111100011)
+-6 + -22 = -28 (111100100)
+-6 + -21 = -27 (111100101)
+-6 + -20 = -26 (111100110)
+-6 + -19 = -25 (111100111)
+-6 + -18 = -24 (111101000)
+-6 + -17 = -23 (111101001)
+-6 + -16 = -22 (111101010)
+-6 + -15 = -21 (111101011)
+-6 + -14 = -20 (111101100)
+-6 + -13 = -19 (111101101)
+-6 + -12 = -18 (111101110)
+-6 + -11 = -17 (111101111)
+-6 + -10 = -16 (111110000)
+-6 + -9 = -15 (111110001)
+-6 + -8 = -14 (111110010)
+-6 + -7 = -13 (111110011)
+-6 + -6 = -12 (111110100)
+-6 + -5 = -11 (111110101)
+-6 + -4 = -10 (111110110)
+-6 + -3 = -9 (111110111)
+-6 + -2 = -8 (111111000)
+-6 + -1 = -7 (111111001)
+-5 + 0 = -5 (111111011)
+-5 + 1 = -4 (111111100)
+-5 + 2 = -3 (111111101)
+-5 + 3 = -2 (111111110)
+-5 + 4 = -1 (111111111)
+-5 + 5 = 0 (000000000)
+-5 + 6 = 1 (000000001)
+-5 + 7 = 2 (000000010)
+-5 + 8 = 3 (000000011)
+-5 + 9 = 4 (000000100)
+-5 + 10 = 5 (000000101)
+-5 + 11 = 6 (000000110)
+-5 + 12 = 7 (000000111)
+-5 + 13 = 8 (000001000)
+-5 + 14 = 9 (000001001)
+-5 + 15 = 10 (000001010)
+-5 + 16 = 11 (000001011)
+-5 + 17 = 12 (000001100)
+-5 + 18 = 13 (000001101)
+-5 + 19 = 14 (000001110)
+-5 + 20 = 15 (000001111)
+-5 + 21 = 16 (000010000)
+-5 + 22 = 17 (000010001)
+-5 + 23 = 18 (000010010)
+-5 + 24 = 19 (000010011)
+-5 + 25 = 20 (000010100)
+-5 + 26 = 21 (000010101)
+-5 + 27 = 22 (000010110)
+-5 + 28 = 23 (000010111)
+-5 + 29 = 24 (000011000)
+-5 + 30 = 25 (000011001)
+-5 + 31 = 26 (000011010)
+-5 + -32 = -37 (111011011)
+-5 + -31 = -36 (111011100)
+-5 + -30 = -35 (111011101)
+-5 + -29 = -34 (111011110)
+-5 + -28 = -33 (111011111)
+-5 + -27 = -32 (111100000)
+-5 + -26 = -31 (111100001)
+-5 + -25 = -30 (111100010)
+-5 + -24 = -29 (111100011)
+-5 + -23 = -28 (111100100)
+-5 + -22 = -27 (111100101)
+-5 + -21 = -26 (111100110)
+-5 + -20 = -25 (111100111)
+-5 + -19 = -24 (111101000)
+-5 + -18 = -23 (111101001)
+-5 + -17 = -22 (111101010)
+-5 + -16 = -21 (111101011)
+-5 + -15 = -20 (111101100)
+-5 + -14 = -19 (111101101)
+-5 + -13 = -18 (111101110)
+-5 + -12 = -17 (111101111)
+-5 + -11 = -16 (111110000)
+-5 + -10 = -15 (111110001)
+-5 + -9 = -14 (111110010)
+-5 + -8 = -13 (111110011)
+-5 + -7 = -12 (111110100)
+-5 + -6 = -11 (111110101)
+-5 + -5 = -10 (111110110)
+-5 + -4 = -9 (111110111)
+-5 + -3 = -8 (111111000)
+-5 + -2 = -7 (111111001)
+-5 + -1 = -6 (111111010)
+-4 + 0 = -4 (111111100)
+-4 + 1 = -3 (111111101)
+-4 + 2 = -2 (111111110)
+-4 + 3 = -1 (111111111)
+-4 + 4 = 0 (000000000)
+-4 + 5 = 1 (000000001)
+-4 + 6 = 2 (000000010)
+-4 + 7 = 3 (000000011)
+-4 + 8 = 4 (000000100)
+-4 + 9 = 5 (000000101)
+-4 + 10 = 6 (000000110)
+-4 + 11 = 7 (000000111)
+-4 + 12 = 8 (000001000)
+-4 + 13 = 9 (000001001)
+-4 + 14 = 10 (000001010)
+-4 + 15 = 11 (000001011)
+-4 + 16 = 12 (000001100)
+-4 + 17 = 13 (000001101)
+-4 + 18 = 14 (000001110)
+-4 + 19 = 15 (000001111)
+-4 + 20 = 16 (000010000)
+-4 + 21 = 17 (000010001)
+-4 + 22 = 18 (000010010)
+-4 + 23 = 19 (000010011)
+-4 + 24 = 20 (000010100)
+-4 + 25 = 21 (000010101)
+-4 + 26 = 22 (000010110)
+-4 + 27 = 23 (000010111)
+-4 + 28 = 24 (000011000)
+-4 + 29 = 25 (000011001)
+-4 + 30 = 26 (000011010)
+-4 + 31 = 27 (000011011)
+-4 + -32 = -36 (111011100)
+-4 + -31 = -35 (111011101)
+-4 + -30 = -34 (111011110)
+-4 + -29 = -33 (111011111)
+-4 + -28 = -32 (111100000)
+-4 + -27 = -31 (111100001)
+-4 + -26 = -30 (111100010)
+-4 + -25 = -29 (111100011)
+-4 + -24 = -28 (111100100)
+-4 + -23 = -27 (111100101)
+-4 + -22 = -26 (111100110)
+-4 + -21 = -25 (111100111)
+-4 + -20 = -24 (111101000)
+-4 + -19 = -23 (111101001)
+-4 + -18 = -22 (111101010)
+-4 + -17 = -21 (111101011)
+-4 + -16 = -20 (111101100)
+-4 + -15 = -19 (111101101)
+-4 + -14 = -18 (111101110)
+-4 + -13 = -17 (111101111)
+-4 + -12 = -16 (111110000)
+-4 + -11 = -15 (111110001)
+-4 + -10 = -14 (111110010)
+-4 + -9 = -13 (111110011)
+-4 + -8 = -12 (111110100)
+-4 + -7 = -11 (111110101)
+-4 + -6 = -10 (111110110)
+-4 + -5 = -9 (111110111)
+-4 + -4 = -8 (111111000)
+-4 + -3 = -7 (111111001)
+-4 + -2 = -6 (111111010)
+-4 + -1 = -5 (111111011)
+-3 + 0 = -3 (111111101)
+-3 + 1 = -2 (111111110)
+-3 + 2 = -1 (111111111)
+-3 + 3 = 0 (000000000)
+-3 + 4 = 1 (000000001)
+-3 + 5 = 2 (000000010)
+-3 + 6 = 3 (000000011)
+-3 + 7 = 4 (000000100)
+-3 + 8 = 5 (000000101)
+-3 + 9 = 6 (000000110)
+-3 + 10 = 7 (000000111)
+-3 + 11 = 8 (000001000)
+-3 + 12 = 9 (000001001)
+-3 + 13 = 10 (000001010)
+-3 + 14 = 11 (000001011)
+-3 + 15 = 12 (000001100)
+-3 + 16 = 13 (000001101)
+-3 + 17 = 14 (000001110)
+-3 + 18 = 15 (000001111)
+-3 + 19 = 16 (000010000)
+-3 + 20 = 17 (000010001)
+-3 + 21 = 18 (000010010)
+-3 + 22 = 19 (000010011)
+-3 + 23 = 20 (000010100)
+-3 + 24 = 21 (000010101)
+-3 + 25 = 22 (000010110)
+-3 + 26 = 23 (000010111)
+-3 + 27 = 24 (000011000)
+-3 + 28 = 25 (000011001)
+-3 + 29 = 26 (000011010)
+-3 + 30 = 27 (000011011)
+-3 + 31 = 28 (000011100)
+-3 + -32 = -35 (111011101)
+-3 + -31 = -34 (111011110)
+-3 + -30 = -33 (111011111)
+-3 + -29 = -32 (111100000)
+-3 + -28 = -31 (111100001)
+-3 + -27 = -30 (111100010)
+-3 + -26 = -29 (111100011)
+-3 + -25 = -28 (111100100)
+-3 + -24 = -27 (111100101)
+-3 + -23 = -26 (111100110)
+-3 + -22 = -25 (111100111)
+-3 + -21 = -24 (111101000)
+-3 + -20 = -23 (111101001)
+-3 + -19 = -22 (111101010)
+-3 + -18 = -21 (111101011)
+-3 + -17 = -20 (111101100)
+-3 + -16 = -19 (111101101)
+-3 + -15 = -18 (111101110)
+-3 + -14 = -17 (111101111)
+-3 + -13 = -16 (111110000)
+-3 + -12 = -15 (111110001)
+-3 + -11 = -14 (111110010)
+-3 + -10 = -13 (111110011)
+-3 + -9 = -12 (111110100)
+-3 + -8 = -11 (111110101)
+-3 + -7 = -10 (111110110)
+-3 + -6 = -9 (111110111)
+-3 + -5 = -8 (111111000)
+-3 + -4 = -7 (111111001)
+-3 + -3 = -6 (111111010)
+-3 + -2 = -5 (111111011)
+-3 + -1 = -4 (111111100)
+-2 + 0 = -2 (111111110)
+-2 + 1 = -1 (111111111)
+-2 + 2 = 0 (000000000)
+-2 + 3 = 1 (000000001)
+-2 + 4 = 2 (000000010)
+-2 + 5 = 3 (000000011)
+-2 + 6 = 4 (000000100)
+-2 + 7 = 5 (000000101)
+-2 + 8 = 6 (000000110)
+-2 + 9 = 7 (000000111)
+-2 + 10 = 8 (000001000)
+-2 + 11 = 9 (000001001)
+-2 + 12 = 10 (000001010)
+-2 + 13 = 11 (000001011)
+-2 + 14 = 12 (000001100)
+-2 + 15 = 13 (000001101)
+-2 + 16 = 14 (000001110)
+-2 + 17 = 15 (000001111)
+-2 + 18 = 16 (000010000)
+-2 + 19 = 17 (000010001)
+-2 + 20 = 18 (000010010)
+-2 + 21 = 19 (000010011)
+-2 + 22 = 20 (000010100)
+-2 + 23 = 21 (000010101)
+-2 + 24 = 22 (000010110)
+-2 + 25 = 23 (000010111)
+-2 + 26 = 24 (000011000)
+-2 + 27 = 25 (000011001)
+-2 + 28 = 26 (000011010)
+-2 + 29 = 27 (000011011)
+-2 + 30 = 28 (000011100)
+-2 + 31 = 29 (000011101)
+-2 + -32 = -34 (111011110)
+-2 + -31 = -33 (111011111)
+-2 + -30 = -32 (111100000)
+-2 + -29 = -31 (111100001)
+-2 + -28 = -30 (111100010)
+-2 + -27 = -29 (111100011)
+-2 + -26 = -28 (111100100)
+-2 + -25 = -27 (111100101)
+-2 + -24 = -26 (111100110)
+-2 + -23 = -25 (111100111)
+-2 + -22 = -24 (111101000)
+-2 + -21 = -23 (111101001)
+-2 + -20 = -22 (111101010)
+-2 + -19 = -21 (111101011)
+-2 + -18 = -20 (111101100)
+-2 + -17 = -19 (111101101)
+-2 + -16 = -18 (111101110)
+-2 + -15 = -17 (111101111)
+-2 + -14 = -16 (111110000)
+-2 + -13 = -15 (111110001)
+-2 + -12 = -14 (111110010)
+-2 + -11 = -13 (111110011)
+-2 + -10 = -12 (111110100)
+-2 + -9 = -11 (111110101)
+-2 + -8 = -10 (111110110)
+-2 + -7 = -9 (111110111)
+-2 + -6 = -8 (111111000)
+-2 + -5 = -7 (111111001)
+-2 + -4 = -6 (111111010)
+-2 + -3 = -5 (111111011)
+-2 + -2 = -4 (111111100)
+-2 + -1 = -3 (111111101)
+-1 + 0 = -1 (111111111)
+-1 + 1 = 0 (000000000)
+-1 + 2 = 1 (000000001)
+-1 + 3 = 2 (000000010)
+-1 + 4 = 3 (000000011)
+-1 + 5 = 4 (000000100)
+-1 + 6 = 5 (000000101)
+-1 + 7 = 6 (000000110)
+-1 + 8 = 7 (000000111)
+-1 + 9 = 8 (000001000)
+-1 + 10 = 9 (000001001)
+-1 + 11 = 10 (000001010)
+-1 + 12 = 11 (000001011)
+-1 + 13 = 12 (000001100)
+-1 + 14 = 13 (000001101)
+-1 + 15 = 14 (000001110)
+-1 + 16 = 15 (000001111)
+-1 + 17 = 16 (000010000)
+-1 + 18 = 17 (000010001)
+-1 + 19 = 18 (000010010)
+-1 + 20 = 19 (000010011)
+-1 + 21 = 20 (000010100)
+-1 + 22 = 21 (000010101)
+-1 + 23 = 22 (000010110)
+-1 + 24 = 23 (000010111)
+-1 + 25 = 24 (000011000)
+-1 + 26 = 25 (000011001)
+-1 + 27 = 26 (000011010)
+-1 + 28 = 27 (000011011)
+-1 + 29 = 28 (000011100)
+-1 + 30 = 29 (000011101)
+-1 + 31 = 30 (000011110)
+-1 + -32 = -33 (111011111)
+-1 + -31 = -32 (111100000)
+-1 + -30 = -31 (111100001)
+-1 + -29 = -30 (111100010)
+-1 + -28 = -29 (111100011)
+-1 + -27 = -28 (111100100)
+-1 + -26 = -27 (111100101)
+-1 + -25 = -26 (111100110)
+-1 + -24 = -25 (111100111)
+-1 + -23 = -24 (111101000)
+-1 + -22 = -23 (111101001)
+-1 + -21 = -22 (111101010)
+-1 + -20 = -21 (111101011)
+-1 + -19 = -20 (111101100)
+-1 + -18 = -19 (111101101)
+-1 + -17 = -18 (111101110)
+-1 + -16 = -17 (111101111)
+-1 + -15 = -16 (111110000)
+-1 + -14 = -15 (111110001)
+-1 + -13 = -14 (111110010)
+-1 + -12 = -13 (111110011)
+-1 + -11 = -12 (111110100)
+-1 + -10 = -11 (111110101)
+-1 + -9 = -10 (111110110)
+-1 + -8 = -9 (111110111)
+-1 + -7 = -8 (111111000)
+-1 + -6 = -7 (111111001)
+-1 + -5 = -6 (111111010)
+-1 + -4 = -5 (111111011)
+-1 + -3 = -4 (111111100)
+-1 + -2 = -3 (111111101)
+-1 + -1 = -2 (111111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/main.cpp
new file mode 100644
index 000000000..dda8095a1
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 9-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 9;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector9 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/promote_extension.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/promote_extension.f
new file mode 100644
index 000000000..3c46f3738
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/promote_extension.f
@@ -0,0 +1,3 @@
+promote_extension/datawidth.cpp
+promote_extension/stimgen.cpp
+promote_extension/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/stimgen.h
new file mode 100644
index 000000000..1c35e4175
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_extension/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector9& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector9& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/common.h
new file mode 100644
index 000000000..2e2569230
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/datawidth.cpp
new file mode 100644
index 000000000..25913d4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_signed tmp_a (in1_width);
+ sc_signed tmp_b (in2_width);
+ sc_signed tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/datawidth.h
new file mode 100644
index 000000000..6adbfd87b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector6& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector6& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/golden/promote_lost_carry.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/golden/promote_lost_carry.log
new file mode 100644
index 000000000..833493d33
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/golden/promote_lost_carry.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + -32 = -32 (100000)
+0 + -31 = -31 (100001)
+0 + -30 = -30 (100010)
+0 + -29 = -29 (100011)
+0 + -28 = -28 (100100)
+0 + -27 = -27 (100101)
+0 + -26 = -26 (100110)
+0 + -25 = -25 (100111)
+0 + -24 = -24 (101000)
+0 + -23 = -23 (101001)
+0 + -22 = -22 (101010)
+0 + -21 = -21 (101011)
+0 + -20 = -20 (101100)
+0 + -19 = -19 (101101)
+0 + -18 = -18 (101110)
+0 + -17 = -17 (101111)
+0 + -16 = -16 (110000)
+0 + -15 = -15 (110001)
+0 + -14 = -14 (110010)
+0 + -13 = -13 (110011)
+0 + -12 = -12 (110100)
+0 + -11 = -11 (110101)
+0 + -10 = -10 (110110)
+0 + -9 = -9 (110111)
+0 + -8 = -8 (111000)
+0 + -7 = -7 (111001)
+0 + -6 = -6 (111010)
+0 + -5 = -5 (111011)
+0 + -4 = -4 (111100)
+0 + -3 = -3 (111101)
+0 + -2 = -2 (111110)
+0 + -1 = -1 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = -32 (100000)
+1 + -32 = -31 (100001)
+1 + -31 = -30 (100010)
+1 + -30 = -29 (100011)
+1 + -29 = -28 (100100)
+1 + -28 = -27 (100101)
+1 + -27 = -26 (100110)
+1 + -26 = -25 (100111)
+1 + -25 = -24 (101000)
+1 + -24 = -23 (101001)
+1 + -23 = -22 (101010)
+1 + -22 = -21 (101011)
+1 + -21 = -20 (101100)
+1 + -20 = -19 (101101)
+1 + -19 = -18 (101110)
+1 + -18 = -17 (101111)
+1 + -17 = -16 (110000)
+1 + -16 = -15 (110001)
+1 + -15 = -14 (110010)
+1 + -14 = -13 (110011)
+1 + -13 = -12 (110100)
+1 + -12 = -11 (110101)
+1 + -11 = -10 (110110)
+1 + -10 = -9 (110111)
+1 + -9 = -8 (111000)
+1 + -8 = -7 (111001)
+1 + -7 = -6 (111010)
+1 + -6 = -5 (111011)
+1 + -5 = -4 (111100)
+1 + -4 = -3 (111101)
+1 + -3 = -2 (111110)
+1 + -2 = -1 (111111)
+1 + -1 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = -32 (100000)
+2 + 31 = -31 (100001)
+2 + -32 = -30 (100010)
+2 + -31 = -29 (100011)
+2 + -30 = -28 (100100)
+2 + -29 = -27 (100101)
+2 + -28 = -26 (100110)
+2 + -27 = -25 (100111)
+2 + -26 = -24 (101000)
+2 + -25 = -23 (101001)
+2 + -24 = -22 (101010)
+2 + -23 = -21 (101011)
+2 + -22 = -20 (101100)
+2 + -21 = -19 (101101)
+2 + -20 = -18 (101110)
+2 + -19 = -17 (101111)
+2 + -18 = -16 (110000)
+2 + -17 = -15 (110001)
+2 + -16 = -14 (110010)
+2 + -15 = -13 (110011)
+2 + -14 = -12 (110100)
+2 + -13 = -11 (110101)
+2 + -12 = -10 (110110)
+2 + -11 = -9 (110111)
+2 + -10 = -8 (111000)
+2 + -9 = -7 (111001)
+2 + -8 = -6 (111010)
+2 + -7 = -5 (111011)
+2 + -6 = -4 (111100)
+2 + -5 = -3 (111101)
+2 + -4 = -2 (111110)
+2 + -3 = -1 (111111)
+2 + -2 = 0 (000000)
+2 + -1 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = -32 (100000)
+3 + 30 = -31 (100001)
+3 + 31 = -30 (100010)
+3 + -32 = -29 (100011)
+3 + -31 = -28 (100100)
+3 + -30 = -27 (100101)
+3 + -29 = -26 (100110)
+3 + -28 = -25 (100111)
+3 + -27 = -24 (101000)
+3 + -26 = -23 (101001)
+3 + -25 = -22 (101010)
+3 + -24 = -21 (101011)
+3 + -23 = -20 (101100)
+3 + -22 = -19 (101101)
+3 + -21 = -18 (101110)
+3 + -20 = -17 (101111)
+3 + -19 = -16 (110000)
+3 + -18 = -15 (110001)
+3 + -17 = -14 (110010)
+3 + -16 = -13 (110011)
+3 + -15 = -12 (110100)
+3 + -14 = -11 (110101)
+3 + -13 = -10 (110110)
+3 + -12 = -9 (110111)
+3 + -11 = -8 (111000)
+3 + -10 = -7 (111001)
+3 + -9 = -6 (111010)
+3 + -8 = -5 (111011)
+3 + -7 = -4 (111100)
+3 + -6 = -3 (111101)
+3 + -5 = -2 (111110)
+3 + -4 = -1 (111111)
+3 + -3 = 0 (000000)
+3 + -2 = 1 (000001)
+3 + -1 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = -32 (100000)
+4 + 29 = -31 (100001)
+4 + 30 = -30 (100010)
+4 + 31 = -29 (100011)
+4 + -32 = -28 (100100)
+4 + -31 = -27 (100101)
+4 + -30 = -26 (100110)
+4 + -29 = -25 (100111)
+4 + -28 = -24 (101000)
+4 + -27 = -23 (101001)
+4 + -26 = -22 (101010)
+4 + -25 = -21 (101011)
+4 + -24 = -20 (101100)
+4 + -23 = -19 (101101)
+4 + -22 = -18 (101110)
+4 + -21 = -17 (101111)
+4 + -20 = -16 (110000)
+4 + -19 = -15 (110001)
+4 + -18 = -14 (110010)
+4 + -17 = -13 (110011)
+4 + -16 = -12 (110100)
+4 + -15 = -11 (110101)
+4 + -14 = -10 (110110)
+4 + -13 = -9 (110111)
+4 + -12 = -8 (111000)
+4 + -11 = -7 (111001)
+4 + -10 = -6 (111010)
+4 + -9 = -5 (111011)
+4 + -8 = -4 (111100)
+4 + -7 = -3 (111101)
+4 + -6 = -2 (111110)
+4 + -5 = -1 (111111)
+4 + -4 = 0 (000000)
+4 + -3 = 1 (000001)
+4 + -2 = 2 (000010)
+4 + -1 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = -32 (100000)
+5 + 28 = -31 (100001)
+5 + 29 = -30 (100010)
+5 + 30 = -29 (100011)
+5 + 31 = -28 (100100)
+5 + -32 = -27 (100101)
+5 + -31 = -26 (100110)
+5 + -30 = -25 (100111)
+5 + -29 = -24 (101000)
+5 + -28 = -23 (101001)
+5 + -27 = -22 (101010)
+5 + -26 = -21 (101011)
+5 + -25 = -20 (101100)
+5 + -24 = -19 (101101)
+5 + -23 = -18 (101110)
+5 + -22 = -17 (101111)
+5 + -21 = -16 (110000)
+5 + -20 = -15 (110001)
+5 + -19 = -14 (110010)
+5 + -18 = -13 (110011)
+5 + -17 = -12 (110100)
+5 + -16 = -11 (110101)
+5 + -15 = -10 (110110)
+5 + -14 = -9 (110111)
+5 + -13 = -8 (111000)
+5 + -12 = -7 (111001)
+5 + -11 = -6 (111010)
+5 + -10 = -5 (111011)
+5 + -9 = -4 (111100)
+5 + -8 = -3 (111101)
+5 + -7 = -2 (111110)
+5 + -6 = -1 (111111)
+5 + -5 = 0 (000000)
+5 + -4 = 1 (000001)
+5 + -3 = 2 (000010)
+5 + -2 = 3 (000011)
+5 + -1 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = -32 (100000)
+6 + 27 = -31 (100001)
+6 + 28 = -30 (100010)
+6 + 29 = -29 (100011)
+6 + 30 = -28 (100100)
+6 + 31 = -27 (100101)
+6 + -32 = -26 (100110)
+6 + -31 = -25 (100111)
+6 + -30 = -24 (101000)
+6 + -29 = -23 (101001)
+6 + -28 = -22 (101010)
+6 + -27 = -21 (101011)
+6 + -26 = -20 (101100)
+6 + -25 = -19 (101101)
+6 + -24 = -18 (101110)
+6 + -23 = -17 (101111)
+6 + -22 = -16 (110000)
+6 + -21 = -15 (110001)
+6 + -20 = -14 (110010)
+6 + -19 = -13 (110011)
+6 + -18 = -12 (110100)
+6 + -17 = -11 (110101)
+6 + -16 = -10 (110110)
+6 + -15 = -9 (110111)
+6 + -14 = -8 (111000)
+6 + -13 = -7 (111001)
+6 + -12 = -6 (111010)
+6 + -11 = -5 (111011)
+6 + -10 = -4 (111100)
+6 + -9 = -3 (111101)
+6 + -8 = -2 (111110)
+6 + -7 = -1 (111111)
+6 + -6 = 0 (000000)
+6 + -5 = 1 (000001)
+6 + -4 = 2 (000010)
+6 + -3 = 3 (000011)
+6 + -2 = 4 (000100)
+6 + -1 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = -32 (100000)
+7 + 26 = -31 (100001)
+7 + 27 = -30 (100010)
+7 + 28 = -29 (100011)
+7 + 29 = -28 (100100)
+7 + 30 = -27 (100101)
+7 + 31 = -26 (100110)
+7 + -32 = -25 (100111)
+7 + -31 = -24 (101000)
+7 + -30 = -23 (101001)
+7 + -29 = -22 (101010)
+7 + -28 = -21 (101011)
+7 + -27 = -20 (101100)
+7 + -26 = -19 (101101)
+7 + -25 = -18 (101110)
+7 + -24 = -17 (101111)
+7 + -23 = -16 (110000)
+7 + -22 = -15 (110001)
+7 + -21 = -14 (110010)
+7 + -20 = -13 (110011)
+7 + -19 = -12 (110100)
+7 + -18 = -11 (110101)
+7 + -17 = -10 (110110)
+7 + -16 = -9 (110111)
+7 + -15 = -8 (111000)
+7 + -14 = -7 (111001)
+7 + -13 = -6 (111010)
+7 + -12 = -5 (111011)
+7 + -11 = -4 (111100)
+7 + -10 = -3 (111101)
+7 + -9 = -2 (111110)
+7 + -8 = -1 (111111)
+7 + -7 = 0 (000000)
+7 + -6 = 1 (000001)
+7 + -5 = 2 (000010)
+7 + -4 = 3 (000011)
+7 + -3 = 4 (000100)
+7 + -2 = 5 (000101)
+7 + -1 = 6 (000110)
+-8 + 0 = -8 (111000)
+-8 + 1 = -7 (111001)
+-8 + 2 = -6 (111010)
+-8 + 3 = -5 (111011)
+-8 + 4 = -4 (111100)
+-8 + 5 = -3 (111101)
+-8 + 6 = -2 (111110)
+-8 + 7 = -1 (111111)
+-8 + 8 = 0 (000000)
+-8 + 9 = 1 (000001)
+-8 + 10 = 2 (000010)
+-8 + 11 = 3 (000011)
+-8 + 12 = 4 (000100)
+-8 + 13 = 5 (000101)
+-8 + 14 = 6 (000110)
+-8 + 15 = 7 (000111)
+-8 + 16 = 8 (001000)
+-8 + 17 = 9 (001001)
+-8 + 18 = 10 (001010)
+-8 + 19 = 11 (001011)
+-8 + 20 = 12 (001100)
+-8 + 21 = 13 (001101)
+-8 + 22 = 14 (001110)
+-8 + 23 = 15 (001111)
+-8 + 24 = 16 (010000)
+-8 + 25 = 17 (010001)
+-8 + 26 = 18 (010010)
+-8 + 27 = 19 (010011)
+-8 + 28 = 20 (010100)
+-8 + 29 = 21 (010101)
+-8 + 30 = 22 (010110)
+-8 + 31 = 23 (010111)
+-8 + -32 = 24 (011000)
+-8 + -31 = 25 (011001)
+-8 + -30 = 26 (011010)
+-8 + -29 = 27 (011011)
+-8 + -28 = 28 (011100)
+-8 + -27 = 29 (011101)
+-8 + -26 = 30 (011110)
+-8 + -25 = 31 (011111)
+-8 + -24 = -32 (100000)
+-8 + -23 = -31 (100001)
+-8 + -22 = -30 (100010)
+-8 + -21 = -29 (100011)
+-8 + -20 = -28 (100100)
+-8 + -19 = -27 (100101)
+-8 + -18 = -26 (100110)
+-8 + -17 = -25 (100111)
+-8 + -16 = -24 (101000)
+-8 + -15 = -23 (101001)
+-8 + -14 = -22 (101010)
+-8 + -13 = -21 (101011)
+-8 + -12 = -20 (101100)
+-8 + -11 = -19 (101101)
+-8 + -10 = -18 (101110)
+-8 + -9 = -17 (101111)
+-8 + -8 = -16 (110000)
+-8 + -7 = -15 (110001)
+-8 + -6 = -14 (110010)
+-8 + -5 = -13 (110011)
+-8 + -4 = -12 (110100)
+-8 + -3 = -11 (110101)
+-8 + -2 = -10 (110110)
+-8 + -1 = -9 (110111)
+-7 + 0 = -7 (111001)
+-7 + 1 = -6 (111010)
+-7 + 2 = -5 (111011)
+-7 + 3 = -4 (111100)
+-7 + 4 = -3 (111101)
+-7 + 5 = -2 (111110)
+-7 + 6 = -1 (111111)
+-7 + 7 = 0 (000000)
+-7 + 8 = 1 (000001)
+-7 + 9 = 2 (000010)
+-7 + 10 = 3 (000011)
+-7 + 11 = 4 (000100)
+-7 + 12 = 5 (000101)
+-7 + 13 = 6 (000110)
+-7 + 14 = 7 (000111)
+-7 + 15 = 8 (001000)
+-7 + 16 = 9 (001001)
+-7 + 17 = 10 (001010)
+-7 + 18 = 11 (001011)
+-7 + 19 = 12 (001100)
+-7 + 20 = 13 (001101)
+-7 + 21 = 14 (001110)
+-7 + 22 = 15 (001111)
+-7 + 23 = 16 (010000)
+-7 + 24 = 17 (010001)
+-7 + 25 = 18 (010010)
+-7 + 26 = 19 (010011)
+-7 + 27 = 20 (010100)
+-7 + 28 = 21 (010101)
+-7 + 29 = 22 (010110)
+-7 + 30 = 23 (010111)
+-7 + 31 = 24 (011000)
+-7 + -32 = 25 (011001)
+-7 + -31 = 26 (011010)
+-7 + -30 = 27 (011011)
+-7 + -29 = 28 (011100)
+-7 + -28 = 29 (011101)
+-7 + -27 = 30 (011110)
+-7 + -26 = 31 (011111)
+-7 + -25 = -32 (100000)
+-7 + -24 = -31 (100001)
+-7 + -23 = -30 (100010)
+-7 + -22 = -29 (100011)
+-7 + -21 = -28 (100100)
+-7 + -20 = -27 (100101)
+-7 + -19 = -26 (100110)
+-7 + -18 = -25 (100111)
+-7 + -17 = -24 (101000)
+-7 + -16 = -23 (101001)
+-7 + -15 = -22 (101010)
+-7 + -14 = -21 (101011)
+-7 + -13 = -20 (101100)
+-7 + -12 = -19 (101101)
+-7 + -11 = -18 (101110)
+-7 + -10 = -17 (101111)
+-7 + -9 = -16 (110000)
+-7 + -8 = -15 (110001)
+-7 + -7 = -14 (110010)
+-7 + -6 = -13 (110011)
+-7 + -5 = -12 (110100)
+-7 + -4 = -11 (110101)
+-7 + -3 = -10 (110110)
+-7 + -2 = -9 (110111)
+-7 + -1 = -8 (111000)
+-6 + 0 = -6 (111010)
+-6 + 1 = -5 (111011)
+-6 + 2 = -4 (111100)
+-6 + 3 = -3 (111101)
+-6 + 4 = -2 (111110)
+-6 + 5 = -1 (111111)
+-6 + 6 = 0 (000000)
+-6 + 7 = 1 (000001)
+-6 + 8 = 2 (000010)
+-6 + 9 = 3 (000011)
+-6 + 10 = 4 (000100)
+-6 + 11 = 5 (000101)
+-6 + 12 = 6 (000110)
+-6 + 13 = 7 (000111)
+-6 + 14 = 8 (001000)
+-6 + 15 = 9 (001001)
+-6 + 16 = 10 (001010)
+-6 + 17 = 11 (001011)
+-6 + 18 = 12 (001100)
+-6 + 19 = 13 (001101)
+-6 + 20 = 14 (001110)
+-6 + 21 = 15 (001111)
+-6 + 22 = 16 (010000)
+-6 + 23 = 17 (010001)
+-6 + 24 = 18 (010010)
+-6 + 25 = 19 (010011)
+-6 + 26 = 20 (010100)
+-6 + 27 = 21 (010101)
+-6 + 28 = 22 (010110)
+-6 + 29 = 23 (010111)
+-6 + 30 = 24 (011000)
+-6 + 31 = 25 (011001)
+-6 + -32 = 26 (011010)
+-6 + -31 = 27 (011011)
+-6 + -30 = 28 (011100)
+-6 + -29 = 29 (011101)
+-6 + -28 = 30 (011110)
+-6 + -27 = 31 (011111)
+-6 + -26 = -32 (100000)
+-6 + -25 = -31 (100001)
+-6 + -24 = -30 (100010)
+-6 + -23 = -29 (100011)
+-6 + -22 = -28 (100100)
+-6 + -21 = -27 (100101)
+-6 + -20 = -26 (100110)
+-6 + -19 = -25 (100111)
+-6 + -18 = -24 (101000)
+-6 + -17 = -23 (101001)
+-6 + -16 = -22 (101010)
+-6 + -15 = -21 (101011)
+-6 + -14 = -20 (101100)
+-6 + -13 = -19 (101101)
+-6 + -12 = -18 (101110)
+-6 + -11 = -17 (101111)
+-6 + -10 = -16 (110000)
+-6 + -9 = -15 (110001)
+-6 + -8 = -14 (110010)
+-6 + -7 = -13 (110011)
+-6 + -6 = -12 (110100)
+-6 + -5 = -11 (110101)
+-6 + -4 = -10 (110110)
+-6 + -3 = -9 (110111)
+-6 + -2 = -8 (111000)
+-6 + -1 = -7 (111001)
+-5 + 0 = -5 (111011)
+-5 + 1 = -4 (111100)
+-5 + 2 = -3 (111101)
+-5 + 3 = -2 (111110)
+-5 + 4 = -1 (111111)
+-5 + 5 = 0 (000000)
+-5 + 6 = 1 (000001)
+-5 + 7 = 2 (000010)
+-5 + 8 = 3 (000011)
+-5 + 9 = 4 (000100)
+-5 + 10 = 5 (000101)
+-5 + 11 = 6 (000110)
+-5 + 12 = 7 (000111)
+-5 + 13 = 8 (001000)
+-5 + 14 = 9 (001001)
+-5 + 15 = 10 (001010)
+-5 + 16 = 11 (001011)
+-5 + 17 = 12 (001100)
+-5 + 18 = 13 (001101)
+-5 + 19 = 14 (001110)
+-5 + 20 = 15 (001111)
+-5 + 21 = 16 (010000)
+-5 + 22 = 17 (010001)
+-5 + 23 = 18 (010010)
+-5 + 24 = 19 (010011)
+-5 + 25 = 20 (010100)
+-5 + 26 = 21 (010101)
+-5 + 27 = 22 (010110)
+-5 + 28 = 23 (010111)
+-5 + 29 = 24 (011000)
+-5 + 30 = 25 (011001)
+-5 + 31 = 26 (011010)
+-5 + -32 = 27 (011011)
+-5 + -31 = 28 (011100)
+-5 + -30 = 29 (011101)
+-5 + -29 = 30 (011110)
+-5 + -28 = 31 (011111)
+-5 + -27 = -32 (100000)
+-5 + -26 = -31 (100001)
+-5 + -25 = -30 (100010)
+-5 + -24 = -29 (100011)
+-5 + -23 = -28 (100100)
+-5 + -22 = -27 (100101)
+-5 + -21 = -26 (100110)
+-5 + -20 = -25 (100111)
+-5 + -19 = -24 (101000)
+-5 + -18 = -23 (101001)
+-5 + -17 = -22 (101010)
+-5 + -16 = -21 (101011)
+-5 + -15 = -20 (101100)
+-5 + -14 = -19 (101101)
+-5 + -13 = -18 (101110)
+-5 + -12 = -17 (101111)
+-5 + -11 = -16 (110000)
+-5 + -10 = -15 (110001)
+-5 + -9 = -14 (110010)
+-5 + -8 = -13 (110011)
+-5 + -7 = -12 (110100)
+-5 + -6 = -11 (110101)
+-5 + -5 = -10 (110110)
+-5 + -4 = -9 (110111)
+-5 + -3 = -8 (111000)
+-5 + -2 = -7 (111001)
+-5 + -1 = -6 (111010)
+-4 + 0 = -4 (111100)
+-4 + 1 = -3 (111101)
+-4 + 2 = -2 (111110)
+-4 + 3 = -1 (111111)
+-4 + 4 = 0 (000000)
+-4 + 5 = 1 (000001)
+-4 + 6 = 2 (000010)
+-4 + 7 = 3 (000011)
+-4 + 8 = 4 (000100)
+-4 + 9 = 5 (000101)
+-4 + 10 = 6 (000110)
+-4 + 11 = 7 (000111)
+-4 + 12 = 8 (001000)
+-4 + 13 = 9 (001001)
+-4 + 14 = 10 (001010)
+-4 + 15 = 11 (001011)
+-4 + 16 = 12 (001100)
+-4 + 17 = 13 (001101)
+-4 + 18 = 14 (001110)
+-4 + 19 = 15 (001111)
+-4 + 20 = 16 (010000)
+-4 + 21 = 17 (010001)
+-4 + 22 = 18 (010010)
+-4 + 23 = 19 (010011)
+-4 + 24 = 20 (010100)
+-4 + 25 = 21 (010101)
+-4 + 26 = 22 (010110)
+-4 + 27 = 23 (010111)
+-4 + 28 = 24 (011000)
+-4 + 29 = 25 (011001)
+-4 + 30 = 26 (011010)
+-4 + 31 = 27 (011011)
+-4 + -32 = 28 (011100)
+-4 + -31 = 29 (011101)
+-4 + -30 = 30 (011110)
+-4 + -29 = 31 (011111)
+-4 + -28 = -32 (100000)
+-4 + -27 = -31 (100001)
+-4 + -26 = -30 (100010)
+-4 + -25 = -29 (100011)
+-4 + -24 = -28 (100100)
+-4 + -23 = -27 (100101)
+-4 + -22 = -26 (100110)
+-4 + -21 = -25 (100111)
+-4 + -20 = -24 (101000)
+-4 + -19 = -23 (101001)
+-4 + -18 = -22 (101010)
+-4 + -17 = -21 (101011)
+-4 + -16 = -20 (101100)
+-4 + -15 = -19 (101101)
+-4 + -14 = -18 (101110)
+-4 + -13 = -17 (101111)
+-4 + -12 = -16 (110000)
+-4 + -11 = -15 (110001)
+-4 + -10 = -14 (110010)
+-4 + -9 = -13 (110011)
+-4 + -8 = -12 (110100)
+-4 + -7 = -11 (110101)
+-4 + -6 = -10 (110110)
+-4 + -5 = -9 (110111)
+-4 + -4 = -8 (111000)
+-4 + -3 = -7 (111001)
+-4 + -2 = -6 (111010)
+-4 + -1 = -5 (111011)
+-3 + 0 = -3 (111101)
+-3 + 1 = -2 (111110)
+-3 + 2 = -1 (111111)
+-3 + 3 = 0 (000000)
+-3 + 4 = 1 (000001)
+-3 + 5 = 2 (000010)
+-3 + 6 = 3 (000011)
+-3 + 7 = 4 (000100)
+-3 + 8 = 5 (000101)
+-3 + 9 = 6 (000110)
+-3 + 10 = 7 (000111)
+-3 + 11 = 8 (001000)
+-3 + 12 = 9 (001001)
+-3 + 13 = 10 (001010)
+-3 + 14 = 11 (001011)
+-3 + 15 = 12 (001100)
+-3 + 16 = 13 (001101)
+-3 + 17 = 14 (001110)
+-3 + 18 = 15 (001111)
+-3 + 19 = 16 (010000)
+-3 + 20 = 17 (010001)
+-3 + 21 = 18 (010010)
+-3 + 22 = 19 (010011)
+-3 + 23 = 20 (010100)
+-3 + 24 = 21 (010101)
+-3 + 25 = 22 (010110)
+-3 + 26 = 23 (010111)
+-3 + 27 = 24 (011000)
+-3 + 28 = 25 (011001)
+-3 + 29 = 26 (011010)
+-3 + 30 = 27 (011011)
+-3 + 31 = 28 (011100)
+-3 + -32 = 29 (011101)
+-3 + -31 = 30 (011110)
+-3 + -30 = 31 (011111)
+-3 + -29 = -32 (100000)
+-3 + -28 = -31 (100001)
+-3 + -27 = -30 (100010)
+-3 + -26 = -29 (100011)
+-3 + -25 = -28 (100100)
+-3 + -24 = -27 (100101)
+-3 + -23 = -26 (100110)
+-3 + -22 = -25 (100111)
+-3 + -21 = -24 (101000)
+-3 + -20 = -23 (101001)
+-3 + -19 = -22 (101010)
+-3 + -18 = -21 (101011)
+-3 + -17 = -20 (101100)
+-3 + -16 = -19 (101101)
+-3 + -15 = -18 (101110)
+-3 + -14 = -17 (101111)
+-3 + -13 = -16 (110000)
+-3 + -12 = -15 (110001)
+-3 + -11 = -14 (110010)
+-3 + -10 = -13 (110011)
+-3 + -9 = -12 (110100)
+-3 + -8 = -11 (110101)
+-3 + -7 = -10 (110110)
+-3 + -6 = -9 (110111)
+-3 + -5 = -8 (111000)
+-3 + -4 = -7 (111001)
+-3 + -3 = -6 (111010)
+-3 + -2 = -5 (111011)
+-3 + -1 = -4 (111100)
+-2 + 0 = -2 (111110)
+-2 + 1 = -1 (111111)
+-2 + 2 = 0 (000000)
+-2 + 3 = 1 (000001)
+-2 + 4 = 2 (000010)
+-2 + 5 = 3 (000011)
+-2 + 6 = 4 (000100)
+-2 + 7 = 5 (000101)
+-2 + 8 = 6 (000110)
+-2 + 9 = 7 (000111)
+-2 + 10 = 8 (001000)
+-2 + 11 = 9 (001001)
+-2 + 12 = 10 (001010)
+-2 + 13 = 11 (001011)
+-2 + 14 = 12 (001100)
+-2 + 15 = 13 (001101)
+-2 + 16 = 14 (001110)
+-2 + 17 = 15 (001111)
+-2 + 18 = 16 (010000)
+-2 + 19 = 17 (010001)
+-2 + 20 = 18 (010010)
+-2 + 21 = 19 (010011)
+-2 + 22 = 20 (010100)
+-2 + 23 = 21 (010101)
+-2 + 24 = 22 (010110)
+-2 + 25 = 23 (010111)
+-2 + 26 = 24 (011000)
+-2 + 27 = 25 (011001)
+-2 + 28 = 26 (011010)
+-2 + 29 = 27 (011011)
+-2 + 30 = 28 (011100)
+-2 + 31 = 29 (011101)
+-2 + -32 = 30 (011110)
+-2 + -31 = 31 (011111)
+-2 + -30 = -32 (100000)
+-2 + -29 = -31 (100001)
+-2 + -28 = -30 (100010)
+-2 + -27 = -29 (100011)
+-2 + -26 = -28 (100100)
+-2 + -25 = -27 (100101)
+-2 + -24 = -26 (100110)
+-2 + -23 = -25 (100111)
+-2 + -22 = -24 (101000)
+-2 + -21 = -23 (101001)
+-2 + -20 = -22 (101010)
+-2 + -19 = -21 (101011)
+-2 + -18 = -20 (101100)
+-2 + -17 = -19 (101101)
+-2 + -16 = -18 (101110)
+-2 + -15 = -17 (101111)
+-2 + -14 = -16 (110000)
+-2 + -13 = -15 (110001)
+-2 + -12 = -14 (110010)
+-2 + -11 = -13 (110011)
+-2 + -10 = -12 (110100)
+-2 + -9 = -11 (110101)
+-2 + -8 = -10 (110110)
+-2 + -7 = -9 (110111)
+-2 + -6 = -8 (111000)
+-2 + -5 = -7 (111001)
+-2 + -4 = -6 (111010)
+-2 + -3 = -5 (111011)
+-2 + -2 = -4 (111100)
+-2 + -1 = -3 (111101)
+-1 + 0 = -1 (111111)
+-1 + 1 = 0 (000000)
+-1 + 2 = 1 (000001)
+-1 + 3 = 2 (000010)
+-1 + 4 = 3 (000011)
+-1 + 5 = 4 (000100)
+-1 + 6 = 5 (000101)
+-1 + 7 = 6 (000110)
+-1 + 8 = 7 (000111)
+-1 + 9 = 8 (001000)
+-1 + 10 = 9 (001001)
+-1 + 11 = 10 (001010)
+-1 + 12 = 11 (001011)
+-1 + 13 = 12 (001100)
+-1 + 14 = 13 (001101)
+-1 + 15 = 14 (001110)
+-1 + 16 = 15 (001111)
+-1 + 17 = 16 (010000)
+-1 + 18 = 17 (010001)
+-1 + 19 = 18 (010010)
+-1 + 20 = 19 (010011)
+-1 + 21 = 20 (010100)
+-1 + 22 = 21 (010101)
+-1 + 23 = 22 (010110)
+-1 + 24 = 23 (010111)
+-1 + 25 = 24 (011000)
+-1 + 26 = 25 (011001)
+-1 + 27 = 26 (011010)
+-1 + 28 = 27 (011011)
+-1 + 29 = 28 (011100)
+-1 + 30 = 29 (011101)
+-1 + 31 = 30 (011110)
+-1 + -32 = 31 (011111)
+-1 + -31 = -32 (100000)
+-1 + -30 = -31 (100001)
+-1 + -29 = -30 (100010)
+-1 + -28 = -29 (100011)
+-1 + -27 = -28 (100100)
+-1 + -26 = -27 (100101)
+-1 + -25 = -26 (100110)
+-1 + -24 = -25 (100111)
+-1 + -23 = -24 (101000)
+-1 + -22 = -23 (101001)
+-1 + -21 = -22 (101010)
+-1 + -20 = -21 (101011)
+-1 + -19 = -20 (101100)
+-1 + -18 = -19 (101101)
+-1 + -17 = -18 (101110)
+-1 + -16 = -17 (101111)
+-1 + -15 = -16 (110000)
+-1 + -14 = -15 (110001)
+-1 + -13 = -14 (110010)
+-1 + -12 = -13 (110011)
+-1 + -11 = -12 (110100)
+-1 + -10 = -11 (110101)
+-1 + -9 = -10 (110110)
+-1 + -8 = -9 (110111)
+-1 + -7 = -8 (111000)
+-1 + -6 = -7 (111001)
+-1 + -5 = -6 (111010)
+-1 + -4 = -5 (111011)
+-1 + -3 = -4 (111100)
+-1 + -2 = -3 (111101)
+-1 + -1 = -2 (111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/main.cpp
new file mode 100644
index 000000000..5990e96a7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 6-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 6;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector6 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/promote_lost_carry.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/promote_lost_carry.f
new file mode 100644
index 000000000..052991cee
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/promote_lost_carry.f
@@ -0,0 +1,3 @@
+promote_lost_carry/datawidth.cpp
+promote_lost_carry/stimgen.cpp
+promote_lost_carry/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/stimgen.h
new file mode 100644
index 000000000..e2675e0b4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_lost_carry/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/common.h
new file mode 100644
index 000000000..2e2569230
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/datawidth.cpp
new file mode 100644
index 000000000..25913d4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_signed tmp_a (in1_width);
+ sc_signed tmp_b (in2_width);
+ sc_signed tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/datawidth.h
new file mode 100644
index 000000000..12f04c9be
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector4& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector4& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/golden/promote_truncation.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/golden/promote_truncation.log
new file mode 100644
index 000000000..081cff3dd
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/golden/promote_truncation.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/main.cpp
new file mode 100644
index 000000000..2aefb1d1d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 4-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 4;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector4 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/promote_truncation.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/promote_truncation.f
new file mode 100644
index 000000000..90b689aca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/promote_truncation.f
@@ -0,0 +1,3 @@
+promote_truncation/datawidth.cpp
+promote_truncation/stimgen.cpp
+promote_truncation/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/stimgen.h
new file mode 100644
index 000000000..959122edf
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/promote_truncation/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/common.h
new file mode 100644
index 000000000..2e2569230
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/datawidth.h
new file mode 100644
index 000000000..98681b45a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector4& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector4& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/golden/truncation.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/golden/truncation.log
new file mode 100644
index 000000000..0787b97b7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/golden/truncation.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = -8 (1000)
+0 + 9 = -7 (1001)
+0 + 10 = -6 (1010)
+0 + 11 = -5 (1011)
+0 + 12 = -4 (1100)
+0 + 13 = -3 (1101)
+0 + 14 = -2 (1110)
+0 + 15 = -1 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = -8 (1000)
+0 + 25 = -7 (1001)
+0 + 26 = -6 (1010)
+0 + 27 = -5 (1011)
+0 + 28 = -4 (1100)
+0 + 29 = -3 (1101)
+0 + 30 = -2 (1110)
+0 + 31 = -1 (1111)
+0 + -32 = 0 (0000)
+0 + -31 = 1 (0001)
+0 + -30 = 2 (0010)
+0 + -29 = 3 (0011)
+0 + -28 = 4 (0100)
+0 + -27 = 5 (0101)
+0 + -26 = 6 (0110)
+0 + -25 = 7 (0111)
+0 + -24 = -8 (1000)
+0 + -23 = -7 (1001)
+0 + -22 = -6 (1010)
+0 + -21 = -5 (1011)
+0 + -20 = -4 (1100)
+0 + -19 = -3 (1101)
+0 + -18 = -2 (1110)
+0 + -17 = -1 (1111)
+0 + -16 = 0 (0000)
+0 + -15 = 1 (0001)
+0 + -14 = 2 (0010)
+0 + -13 = 3 (0011)
+0 + -12 = 4 (0100)
+0 + -11 = 5 (0101)
+0 + -10 = 6 (0110)
+0 + -9 = 7 (0111)
+0 + -8 = -8 (1000)
+0 + -7 = -7 (1001)
+0 + -6 = -6 (1010)
+0 + -5 = -5 (1011)
+0 + -4 = -4 (1100)
+0 + -3 = -3 (1101)
+0 + -2 = -2 (1110)
+0 + -1 = -1 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = -8 (1000)
+1 + 8 = -7 (1001)
+1 + 9 = -6 (1010)
+1 + 10 = -5 (1011)
+1 + 11 = -4 (1100)
+1 + 12 = -3 (1101)
+1 + 13 = -2 (1110)
+1 + 14 = -1 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = -8 (1000)
+1 + 24 = -7 (1001)
+1 + 25 = -6 (1010)
+1 + 26 = -5 (1011)
+1 + 27 = -4 (1100)
+1 + 28 = -3 (1101)
+1 + 29 = -2 (1110)
+1 + 30 = -1 (1111)
+1 + 31 = 0 (0000)
+1 + -32 = 1 (0001)
+1 + -31 = 2 (0010)
+1 + -30 = 3 (0011)
+1 + -29 = 4 (0100)
+1 + -28 = 5 (0101)
+1 + -27 = 6 (0110)
+1 + -26 = 7 (0111)
+1 + -25 = -8 (1000)
+1 + -24 = -7 (1001)
+1 + -23 = -6 (1010)
+1 + -22 = -5 (1011)
+1 + -21 = -4 (1100)
+1 + -20 = -3 (1101)
+1 + -19 = -2 (1110)
+1 + -18 = -1 (1111)
+1 + -17 = 0 (0000)
+1 + -16 = 1 (0001)
+1 + -15 = 2 (0010)
+1 + -14 = 3 (0011)
+1 + -13 = 4 (0100)
+1 + -12 = 5 (0101)
+1 + -11 = 6 (0110)
+1 + -10 = 7 (0111)
+1 + -9 = -8 (1000)
+1 + -8 = -7 (1001)
+1 + -7 = -6 (1010)
+1 + -6 = -5 (1011)
+1 + -5 = -4 (1100)
+1 + -4 = -3 (1101)
+1 + -3 = -2 (1110)
+1 + -2 = -1 (1111)
+1 + -1 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = -8 (1000)
+2 + 7 = -7 (1001)
+2 + 8 = -6 (1010)
+2 + 9 = -5 (1011)
+2 + 10 = -4 (1100)
+2 + 11 = -3 (1101)
+2 + 12 = -2 (1110)
+2 + 13 = -1 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = -8 (1000)
+2 + 23 = -7 (1001)
+2 + 24 = -6 (1010)
+2 + 25 = -5 (1011)
+2 + 26 = -4 (1100)
+2 + 27 = -3 (1101)
+2 + 28 = -2 (1110)
+2 + 29 = -1 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + -32 = 2 (0010)
+2 + -31 = 3 (0011)
+2 + -30 = 4 (0100)
+2 + -29 = 5 (0101)
+2 + -28 = 6 (0110)
+2 + -27 = 7 (0111)
+2 + -26 = -8 (1000)
+2 + -25 = -7 (1001)
+2 + -24 = -6 (1010)
+2 + -23 = -5 (1011)
+2 + -22 = -4 (1100)
+2 + -21 = -3 (1101)
+2 + -20 = -2 (1110)
+2 + -19 = -1 (1111)
+2 + -18 = 0 (0000)
+2 + -17 = 1 (0001)
+2 + -16 = 2 (0010)
+2 + -15 = 3 (0011)
+2 + -14 = 4 (0100)
+2 + -13 = 5 (0101)
+2 + -12 = 6 (0110)
+2 + -11 = 7 (0111)
+2 + -10 = -8 (1000)
+2 + -9 = -7 (1001)
+2 + -8 = -6 (1010)
+2 + -7 = -5 (1011)
+2 + -6 = -4 (1100)
+2 + -5 = -3 (1101)
+2 + -4 = -2 (1110)
+2 + -3 = -1 (1111)
+2 + -2 = 0 (0000)
+2 + -1 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = -8 (1000)
+3 + 6 = -7 (1001)
+3 + 7 = -6 (1010)
+3 + 8 = -5 (1011)
+3 + 9 = -4 (1100)
+3 + 10 = -3 (1101)
+3 + 11 = -2 (1110)
+3 + 12 = -1 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = -8 (1000)
+3 + 22 = -7 (1001)
+3 + 23 = -6 (1010)
+3 + 24 = -5 (1011)
+3 + 25 = -4 (1100)
+3 + 26 = -3 (1101)
+3 + 27 = -2 (1110)
+3 + 28 = -1 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + -32 = 3 (0011)
+3 + -31 = 4 (0100)
+3 + -30 = 5 (0101)
+3 + -29 = 6 (0110)
+3 + -28 = 7 (0111)
+3 + -27 = -8 (1000)
+3 + -26 = -7 (1001)
+3 + -25 = -6 (1010)
+3 + -24 = -5 (1011)
+3 + -23 = -4 (1100)
+3 + -22 = -3 (1101)
+3 + -21 = -2 (1110)
+3 + -20 = -1 (1111)
+3 + -19 = 0 (0000)
+3 + -18 = 1 (0001)
+3 + -17 = 2 (0010)
+3 + -16 = 3 (0011)
+3 + -15 = 4 (0100)
+3 + -14 = 5 (0101)
+3 + -13 = 6 (0110)
+3 + -12 = 7 (0111)
+3 + -11 = -8 (1000)
+3 + -10 = -7 (1001)
+3 + -9 = -6 (1010)
+3 + -8 = -5 (1011)
+3 + -7 = -4 (1100)
+3 + -6 = -3 (1101)
+3 + -5 = -2 (1110)
+3 + -4 = -1 (1111)
+3 + -3 = 0 (0000)
+3 + -2 = 1 (0001)
+3 + -1 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = -8 (1000)
+4 + 5 = -7 (1001)
+4 + 6 = -6 (1010)
+4 + 7 = -5 (1011)
+4 + 8 = -4 (1100)
+4 + 9 = -3 (1101)
+4 + 10 = -2 (1110)
+4 + 11 = -1 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = -8 (1000)
+4 + 21 = -7 (1001)
+4 + 22 = -6 (1010)
+4 + 23 = -5 (1011)
+4 + 24 = -4 (1100)
+4 + 25 = -3 (1101)
+4 + 26 = -2 (1110)
+4 + 27 = -1 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + -32 = 4 (0100)
+4 + -31 = 5 (0101)
+4 + -30 = 6 (0110)
+4 + -29 = 7 (0111)
+4 + -28 = -8 (1000)
+4 + -27 = -7 (1001)
+4 + -26 = -6 (1010)
+4 + -25 = -5 (1011)
+4 + -24 = -4 (1100)
+4 + -23 = -3 (1101)
+4 + -22 = -2 (1110)
+4 + -21 = -1 (1111)
+4 + -20 = 0 (0000)
+4 + -19 = 1 (0001)
+4 + -18 = 2 (0010)
+4 + -17 = 3 (0011)
+4 + -16 = 4 (0100)
+4 + -15 = 5 (0101)
+4 + -14 = 6 (0110)
+4 + -13 = 7 (0111)
+4 + -12 = -8 (1000)
+4 + -11 = -7 (1001)
+4 + -10 = -6 (1010)
+4 + -9 = -5 (1011)
+4 + -8 = -4 (1100)
+4 + -7 = -3 (1101)
+4 + -6 = -2 (1110)
+4 + -5 = -1 (1111)
+4 + -4 = 0 (0000)
+4 + -3 = 1 (0001)
+4 + -2 = 2 (0010)
+4 + -1 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = -8 (1000)
+5 + 4 = -7 (1001)
+5 + 5 = -6 (1010)
+5 + 6 = -5 (1011)
+5 + 7 = -4 (1100)
+5 + 8 = -3 (1101)
+5 + 9 = -2 (1110)
+5 + 10 = -1 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = -8 (1000)
+5 + 20 = -7 (1001)
+5 + 21 = -6 (1010)
+5 + 22 = -5 (1011)
+5 + 23 = -4 (1100)
+5 + 24 = -3 (1101)
+5 + 25 = -2 (1110)
+5 + 26 = -1 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + -32 = 5 (0101)
+5 + -31 = 6 (0110)
+5 + -30 = 7 (0111)
+5 + -29 = -8 (1000)
+5 + -28 = -7 (1001)
+5 + -27 = -6 (1010)
+5 + -26 = -5 (1011)
+5 + -25 = -4 (1100)
+5 + -24 = -3 (1101)
+5 + -23 = -2 (1110)
+5 + -22 = -1 (1111)
+5 + -21 = 0 (0000)
+5 + -20 = 1 (0001)
+5 + -19 = 2 (0010)
+5 + -18 = 3 (0011)
+5 + -17 = 4 (0100)
+5 + -16 = 5 (0101)
+5 + -15 = 6 (0110)
+5 + -14 = 7 (0111)
+5 + -13 = -8 (1000)
+5 + -12 = -7 (1001)
+5 + -11 = -6 (1010)
+5 + -10 = -5 (1011)
+5 + -9 = -4 (1100)
+5 + -8 = -3 (1101)
+5 + -7 = -2 (1110)
+5 + -6 = -1 (1111)
+5 + -5 = 0 (0000)
+5 + -4 = 1 (0001)
+5 + -3 = 2 (0010)
+5 + -2 = 3 (0011)
+5 + -1 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = -8 (1000)
+6 + 3 = -7 (1001)
+6 + 4 = -6 (1010)
+6 + 5 = -5 (1011)
+6 + 6 = -4 (1100)
+6 + 7 = -3 (1101)
+6 + 8 = -2 (1110)
+6 + 9 = -1 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = -8 (1000)
+6 + 19 = -7 (1001)
+6 + 20 = -6 (1010)
+6 + 21 = -5 (1011)
+6 + 22 = -4 (1100)
+6 + 23 = -3 (1101)
+6 + 24 = -2 (1110)
+6 + 25 = -1 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + -32 = 6 (0110)
+6 + -31 = 7 (0111)
+6 + -30 = -8 (1000)
+6 + -29 = -7 (1001)
+6 + -28 = -6 (1010)
+6 + -27 = -5 (1011)
+6 + -26 = -4 (1100)
+6 + -25 = -3 (1101)
+6 + -24 = -2 (1110)
+6 + -23 = -1 (1111)
+6 + -22 = 0 (0000)
+6 + -21 = 1 (0001)
+6 + -20 = 2 (0010)
+6 + -19 = 3 (0011)
+6 + -18 = 4 (0100)
+6 + -17 = 5 (0101)
+6 + -16 = 6 (0110)
+6 + -15 = 7 (0111)
+6 + -14 = -8 (1000)
+6 + -13 = -7 (1001)
+6 + -12 = -6 (1010)
+6 + -11 = -5 (1011)
+6 + -10 = -4 (1100)
+6 + -9 = -3 (1101)
+6 + -8 = -2 (1110)
+6 + -7 = -1 (1111)
+6 + -6 = 0 (0000)
+6 + -5 = 1 (0001)
+6 + -4 = 2 (0010)
+6 + -3 = 3 (0011)
+6 + -2 = 4 (0100)
+6 + -1 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = -8 (1000)
+7 + 2 = -7 (1001)
+7 + 3 = -6 (1010)
+7 + 4 = -5 (1011)
+7 + 5 = -4 (1100)
+7 + 6 = -3 (1101)
+7 + 7 = -2 (1110)
+7 + 8 = -1 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = -8 (1000)
+7 + 18 = -7 (1001)
+7 + 19 = -6 (1010)
+7 + 20 = -5 (1011)
+7 + 21 = -4 (1100)
+7 + 22 = -3 (1101)
+7 + 23 = -2 (1110)
+7 + 24 = -1 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + -32 = 7 (0111)
+7 + -31 = -8 (1000)
+7 + -30 = -7 (1001)
+7 + -29 = -6 (1010)
+7 + -28 = -5 (1011)
+7 + -27 = -4 (1100)
+7 + -26 = -3 (1101)
+7 + -25 = -2 (1110)
+7 + -24 = -1 (1111)
+7 + -23 = 0 (0000)
+7 + -22 = 1 (0001)
+7 + -21 = 2 (0010)
+7 + -20 = 3 (0011)
+7 + -19 = 4 (0100)
+7 + -18 = 5 (0101)
+7 + -17 = 6 (0110)
+7 + -16 = 7 (0111)
+7 + -15 = -8 (1000)
+7 + -14 = -7 (1001)
+7 + -13 = -6 (1010)
+7 + -12 = -5 (1011)
+7 + -11 = -4 (1100)
+7 + -10 = -3 (1101)
+7 + -9 = -2 (1110)
+7 + -8 = -1 (1111)
+7 + -7 = 0 (0000)
+7 + -6 = 1 (0001)
+7 + -5 = 2 (0010)
+7 + -4 = 3 (0011)
+7 + -3 = 4 (0100)
+7 + -2 = 5 (0101)
+7 + -1 = 6 (0110)
+8 + 0 = -8 (1000)
+8 + 1 = -7 (1001)
+8 + 2 = -6 (1010)
+8 + 3 = -5 (1011)
+8 + 4 = -4 (1100)
+8 + 5 = -3 (1101)
+8 + 6 = -2 (1110)
+8 + 7 = -1 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = -8 (1000)
+8 + 17 = -7 (1001)
+8 + 18 = -6 (1010)
+8 + 19 = -5 (1011)
+8 + 20 = -4 (1100)
+8 + 21 = -3 (1101)
+8 + 22 = -2 (1110)
+8 + 23 = -1 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + -32 = -8 (1000)
+8 + -31 = -7 (1001)
+8 + -30 = -6 (1010)
+8 + -29 = -5 (1011)
+8 + -28 = -4 (1100)
+8 + -27 = -3 (1101)
+8 + -26 = -2 (1110)
+8 + -25 = -1 (1111)
+8 + -24 = 0 (0000)
+8 + -23 = 1 (0001)
+8 + -22 = 2 (0010)
+8 + -21 = 3 (0011)
+8 + -20 = 4 (0100)
+8 + -19 = 5 (0101)
+8 + -18 = 6 (0110)
+8 + -17 = 7 (0111)
+8 + -16 = -8 (1000)
+8 + -15 = -7 (1001)
+8 + -14 = -6 (1010)
+8 + -13 = -5 (1011)
+8 + -12 = -4 (1100)
+8 + -11 = -3 (1101)
+8 + -10 = -2 (1110)
+8 + -9 = -1 (1111)
+8 + -8 = 0 (0000)
+8 + -7 = 1 (0001)
+8 + -6 = 2 (0010)
+8 + -5 = 3 (0011)
+8 + -4 = 4 (0100)
+8 + -3 = 5 (0101)
+8 + -2 = 6 (0110)
+8 + -1 = 7 (0111)
+9 + 0 = -7 (1001)
+9 + 1 = -6 (1010)
+9 + 2 = -5 (1011)
+9 + 3 = -4 (1100)
+9 + 4 = -3 (1101)
+9 + 5 = -2 (1110)
+9 + 6 = -1 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = -8 (1000)
+9 + 16 = -7 (1001)
+9 + 17 = -6 (1010)
+9 + 18 = -5 (1011)
+9 + 19 = -4 (1100)
+9 + 20 = -3 (1101)
+9 + 21 = -2 (1110)
+9 + 22 = -1 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = -8 (1000)
+9 + -32 = -7 (1001)
+9 + -31 = -6 (1010)
+9 + -30 = -5 (1011)
+9 + -29 = -4 (1100)
+9 + -28 = -3 (1101)
+9 + -27 = -2 (1110)
+9 + -26 = -1 (1111)
+9 + -25 = 0 (0000)
+9 + -24 = 1 (0001)
+9 + -23 = 2 (0010)
+9 + -22 = 3 (0011)
+9 + -21 = 4 (0100)
+9 + -20 = 5 (0101)
+9 + -19 = 6 (0110)
+9 + -18 = 7 (0111)
+9 + -17 = -8 (1000)
+9 + -16 = -7 (1001)
+9 + -15 = -6 (1010)
+9 + -14 = -5 (1011)
+9 + -13 = -4 (1100)
+9 + -12 = -3 (1101)
+9 + -11 = -2 (1110)
+9 + -10 = -1 (1111)
+9 + -9 = 0 (0000)
+9 + -8 = 1 (0001)
+9 + -7 = 2 (0010)
+9 + -6 = 3 (0011)
+9 + -5 = 4 (0100)
+9 + -4 = 5 (0101)
+9 + -3 = 6 (0110)
+9 + -2 = 7 (0111)
+9 + -1 = -8 (1000)
+10 + 0 = -6 (1010)
+10 + 1 = -5 (1011)
+10 + 2 = -4 (1100)
+10 + 3 = -3 (1101)
+10 + 4 = -2 (1110)
+10 + 5 = -1 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = -8 (1000)
+10 + 15 = -7 (1001)
+10 + 16 = -6 (1010)
+10 + 17 = -5 (1011)
+10 + 18 = -4 (1100)
+10 + 19 = -3 (1101)
+10 + 20 = -2 (1110)
+10 + 21 = -1 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = -8 (1000)
+10 + 31 = -7 (1001)
+10 + -32 = -6 (1010)
+10 + -31 = -5 (1011)
+10 + -30 = -4 (1100)
+10 + -29 = -3 (1101)
+10 + -28 = -2 (1110)
+10 + -27 = -1 (1111)
+10 + -26 = 0 (0000)
+10 + -25 = 1 (0001)
+10 + -24 = 2 (0010)
+10 + -23 = 3 (0011)
+10 + -22 = 4 (0100)
+10 + -21 = 5 (0101)
+10 + -20 = 6 (0110)
+10 + -19 = 7 (0111)
+10 + -18 = -8 (1000)
+10 + -17 = -7 (1001)
+10 + -16 = -6 (1010)
+10 + -15 = -5 (1011)
+10 + -14 = -4 (1100)
+10 + -13 = -3 (1101)
+10 + -12 = -2 (1110)
+10 + -11 = -1 (1111)
+10 + -10 = 0 (0000)
+10 + -9 = 1 (0001)
+10 + -8 = 2 (0010)
+10 + -7 = 3 (0011)
+10 + -6 = 4 (0100)
+10 + -5 = 5 (0101)
+10 + -4 = 6 (0110)
+10 + -3 = 7 (0111)
+10 + -2 = -8 (1000)
+10 + -1 = -7 (1001)
+11 + 0 = -5 (1011)
+11 + 1 = -4 (1100)
+11 + 2 = -3 (1101)
+11 + 3 = -2 (1110)
+11 + 4 = -1 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = -8 (1000)
+11 + 14 = -7 (1001)
+11 + 15 = -6 (1010)
+11 + 16 = -5 (1011)
+11 + 17 = -4 (1100)
+11 + 18 = -3 (1101)
+11 + 19 = -2 (1110)
+11 + 20 = -1 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = -8 (1000)
+11 + 30 = -7 (1001)
+11 + 31 = -6 (1010)
+11 + -32 = -5 (1011)
+11 + -31 = -4 (1100)
+11 + -30 = -3 (1101)
+11 + -29 = -2 (1110)
+11 + -28 = -1 (1111)
+11 + -27 = 0 (0000)
+11 + -26 = 1 (0001)
+11 + -25 = 2 (0010)
+11 + -24 = 3 (0011)
+11 + -23 = 4 (0100)
+11 + -22 = 5 (0101)
+11 + -21 = 6 (0110)
+11 + -20 = 7 (0111)
+11 + -19 = -8 (1000)
+11 + -18 = -7 (1001)
+11 + -17 = -6 (1010)
+11 + -16 = -5 (1011)
+11 + -15 = -4 (1100)
+11 + -14 = -3 (1101)
+11 + -13 = -2 (1110)
+11 + -12 = -1 (1111)
+11 + -11 = 0 (0000)
+11 + -10 = 1 (0001)
+11 + -9 = 2 (0010)
+11 + -8 = 3 (0011)
+11 + -7 = 4 (0100)
+11 + -6 = 5 (0101)
+11 + -5 = 6 (0110)
+11 + -4 = 7 (0111)
+11 + -3 = -8 (1000)
+11 + -2 = -7 (1001)
+11 + -1 = -6 (1010)
+12 + 0 = -4 (1100)
+12 + 1 = -3 (1101)
+12 + 2 = -2 (1110)
+12 + 3 = -1 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = -8 (1000)
+12 + 13 = -7 (1001)
+12 + 14 = -6 (1010)
+12 + 15 = -5 (1011)
+12 + 16 = -4 (1100)
+12 + 17 = -3 (1101)
+12 + 18 = -2 (1110)
+12 + 19 = -1 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = -8 (1000)
+12 + 29 = -7 (1001)
+12 + 30 = -6 (1010)
+12 + 31 = -5 (1011)
+12 + -32 = -4 (1100)
+12 + -31 = -3 (1101)
+12 + -30 = -2 (1110)
+12 + -29 = -1 (1111)
+12 + -28 = 0 (0000)
+12 + -27 = 1 (0001)
+12 + -26 = 2 (0010)
+12 + -25 = 3 (0011)
+12 + -24 = 4 (0100)
+12 + -23 = 5 (0101)
+12 + -22 = 6 (0110)
+12 + -21 = 7 (0111)
+12 + -20 = -8 (1000)
+12 + -19 = -7 (1001)
+12 + -18 = -6 (1010)
+12 + -17 = -5 (1011)
+12 + -16 = -4 (1100)
+12 + -15 = -3 (1101)
+12 + -14 = -2 (1110)
+12 + -13 = -1 (1111)
+12 + -12 = 0 (0000)
+12 + -11 = 1 (0001)
+12 + -10 = 2 (0010)
+12 + -9 = 3 (0011)
+12 + -8 = 4 (0100)
+12 + -7 = 5 (0101)
+12 + -6 = 6 (0110)
+12 + -5 = 7 (0111)
+12 + -4 = -8 (1000)
+12 + -3 = -7 (1001)
+12 + -2 = -6 (1010)
+12 + -1 = -5 (1011)
+13 + 0 = -3 (1101)
+13 + 1 = -2 (1110)
+13 + 2 = -1 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = -8 (1000)
+13 + 12 = -7 (1001)
+13 + 13 = -6 (1010)
+13 + 14 = -5 (1011)
+13 + 15 = -4 (1100)
+13 + 16 = -3 (1101)
+13 + 17 = -2 (1110)
+13 + 18 = -1 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = -8 (1000)
+13 + 28 = -7 (1001)
+13 + 29 = -6 (1010)
+13 + 30 = -5 (1011)
+13 + 31 = -4 (1100)
+13 + -32 = -3 (1101)
+13 + -31 = -2 (1110)
+13 + -30 = -1 (1111)
+13 + -29 = 0 (0000)
+13 + -28 = 1 (0001)
+13 + -27 = 2 (0010)
+13 + -26 = 3 (0011)
+13 + -25 = 4 (0100)
+13 + -24 = 5 (0101)
+13 + -23 = 6 (0110)
+13 + -22 = 7 (0111)
+13 + -21 = -8 (1000)
+13 + -20 = -7 (1001)
+13 + -19 = -6 (1010)
+13 + -18 = -5 (1011)
+13 + -17 = -4 (1100)
+13 + -16 = -3 (1101)
+13 + -15 = -2 (1110)
+13 + -14 = -1 (1111)
+13 + -13 = 0 (0000)
+13 + -12 = 1 (0001)
+13 + -11 = 2 (0010)
+13 + -10 = 3 (0011)
+13 + -9 = 4 (0100)
+13 + -8 = 5 (0101)
+13 + -7 = 6 (0110)
+13 + -6 = 7 (0111)
+13 + -5 = -8 (1000)
+13 + -4 = -7 (1001)
+13 + -3 = -6 (1010)
+13 + -2 = -5 (1011)
+13 + -1 = -4 (1100)
+14 + 0 = -2 (1110)
+14 + 1 = -1 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = -8 (1000)
+14 + 11 = -7 (1001)
+14 + 12 = -6 (1010)
+14 + 13 = -5 (1011)
+14 + 14 = -4 (1100)
+14 + 15 = -3 (1101)
+14 + 16 = -2 (1110)
+14 + 17 = -1 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = -8 (1000)
+14 + 27 = -7 (1001)
+14 + 28 = -6 (1010)
+14 + 29 = -5 (1011)
+14 + 30 = -4 (1100)
+14 + 31 = -3 (1101)
+14 + -32 = -2 (1110)
+14 + -31 = -1 (1111)
+14 + -30 = 0 (0000)
+14 + -29 = 1 (0001)
+14 + -28 = 2 (0010)
+14 + -27 = 3 (0011)
+14 + -26 = 4 (0100)
+14 + -25 = 5 (0101)
+14 + -24 = 6 (0110)
+14 + -23 = 7 (0111)
+14 + -22 = -8 (1000)
+14 + -21 = -7 (1001)
+14 + -20 = -6 (1010)
+14 + -19 = -5 (1011)
+14 + -18 = -4 (1100)
+14 + -17 = -3 (1101)
+14 + -16 = -2 (1110)
+14 + -15 = -1 (1111)
+14 + -14 = 0 (0000)
+14 + -13 = 1 (0001)
+14 + -12 = 2 (0010)
+14 + -11 = 3 (0011)
+14 + -10 = 4 (0100)
+14 + -9 = 5 (0101)
+14 + -8 = 6 (0110)
+14 + -7 = 7 (0111)
+14 + -6 = -8 (1000)
+14 + -5 = -7 (1001)
+14 + -4 = -6 (1010)
+14 + -3 = -5 (1011)
+14 + -2 = -4 (1100)
+14 + -1 = -3 (1101)
+15 + 0 = -1 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = -8 (1000)
+15 + 10 = -7 (1001)
+15 + 11 = -6 (1010)
+15 + 12 = -5 (1011)
+15 + 13 = -4 (1100)
+15 + 14 = -3 (1101)
+15 + 15 = -2 (1110)
+15 + 16 = -1 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = -8 (1000)
+15 + 26 = -7 (1001)
+15 + 27 = -6 (1010)
+15 + 28 = -5 (1011)
+15 + 29 = -4 (1100)
+15 + 30 = -3 (1101)
+15 + 31 = -2 (1110)
+15 + -32 = -1 (1111)
+15 + -31 = 0 (0000)
+15 + -30 = 1 (0001)
+15 + -29 = 2 (0010)
+15 + -28 = 3 (0011)
+15 + -27 = 4 (0100)
+15 + -26 = 5 (0101)
+15 + -25 = 6 (0110)
+15 + -24 = 7 (0111)
+15 + -23 = -8 (1000)
+15 + -22 = -7 (1001)
+15 + -21 = -6 (1010)
+15 + -20 = -5 (1011)
+15 + -19 = -4 (1100)
+15 + -18 = -3 (1101)
+15 + -17 = -2 (1110)
+15 + -16 = -1 (1111)
+15 + -15 = 0 (0000)
+15 + -14 = 1 (0001)
+15 + -13 = 2 (0010)
+15 + -12 = 3 (0011)
+15 + -11 = 4 (0100)
+15 + -10 = 5 (0101)
+15 + -9 = 6 (0110)
+15 + -8 = 7 (0111)
+15 + -7 = -8 (1000)
+15 + -6 = -7 (1001)
+15 + -5 = -6 (1010)
+15 + -4 = -5 (1011)
+15 + -3 = -4 (1100)
+15 + -2 = -3 (1101)
+15 + -1 = -2 (1110)
+16 + 0 = 0 (0000)
+16 + 1 = 1 (0001)
+16 + 2 = 2 (0010)
+16 + 3 = 3 (0011)
+16 + 4 = 4 (0100)
+16 + 5 = 5 (0101)
+16 + 6 = 6 (0110)
+16 + 7 = 7 (0111)
+16 + 8 = -8 (1000)
+16 + 9 = -7 (1001)
+16 + 10 = -6 (1010)
+16 + 11 = -5 (1011)
+16 + 12 = -4 (1100)
+16 + 13 = -3 (1101)
+16 + 14 = -2 (1110)
+16 + 15 = -1 (1111)
+16 + 16 = 0 (0000)
+16 + 17 = 1 (0001)
+16 + 18 = 2 (0010)
+16 + 19 = 3 (0011)
+16 + 20 = 4 (0100)
+16 + 21 = 5 (0101)
+16 + 22 = 6 (0110)
+16 + 23 = 7 (0111)
+16 + 24 = -8 (1000)
+16 + 25 = -7 (1001)
+16 + 26 = -6 (1010)
+16 + 27 = -5 (1011)
+16 + 28 = -4 (1100)
+16 + 29 = -3 (1101)
+16 + 30 = -2 (1110)
+16 + 31 = -1 (1111)
+16 + -32 = 0 (0000)
+16 + -31 = 1 (0001)
+16 + -30 = 2 (0010)
+16 + -29 = 3 (0011)
+16 + -28 = 4 (0100)
+16 + -27 = 5 (0101)
+16 + -26 = 6 (0110)
+16 + -25 = 7 (0111)
+16 + -24 = -8 (1000)
+16 + -23 = -7 (1001)
+16 + -22 = -6 (1010)
+16 + -21 = -5 (1011)
+16 + -20 = -4 (1100)
+16 + -19 = -3 (1101)
+16 + -18 = -2 (1110)
+16 + -17 = -1 (1111)
+16 + -16 = 0 (0000)
+16 + -15 = 1 (0001)
+16 + -14 = 2 (0010)
+16 + -13 = 3 (0011)
+16 + -12 = 4 (0100)
+16 + -11 = 5 (0101)
+16 + -10 = 6 (0110)
+16 + -9 = 7 (0111)
+16 + -8 = -8 (1000)
+16 + -7 = -7 (1001)
+16 + -6 = -6 (1010)
+16 + -5 = -5 (1011)
+16 + -4 = -4 (1100)
+16 + -3 = -3 (1101)
+16 + -2 = -2 (1110)
+16 + -1 = -1 (1111)
+17 + 0 = 1 (0001)
+17 + 1 = 2 (0010)
+17 + 2 = 3 (0011)
+17 + 3 = 4 (0100)
+17 + 4 = 5 (0101)
+17 + 5 = 6 (0110)
+17 + 6 = 7 (0111)
+17 + 7 = -8 (1000)
+17 + 8 = -7 (1001)
+17 + 9 = -6 (1010)
+17 + 10 = -5 (1011)
+17 + 11 = -4 (1100)
+17 + 12 = -3 (1101)
+17 + 13 = -2 (1110)
+17 + 14 = -1 (1111)
+17 + 15 = 0 (0000)
+17 + 16 = 1 (0001)
+17 + 17 = 2 (0010)
+17 + 18 = 3 (0011)
+17 + 19 = 4 (0100)
+17 + 20 = 5 (0101)
+17 + 21 = 6 (0110)
+17 + 22 = 7 (0111)
+17 + 23 = -8 (1000)
+17 + 24 = -7 (1001)
+17 + 25 = -6 (1010)
+17 + 26 = -5 (1011)
+17 + 27 = -4 (1100)
+17 + 28 = -3 (1101)
+17 + 29 = -2 (1110)
+17 + 30 = -1 (1111)
+17 + 31 = 0 (0000)
+17 + -32 = 1 (0001)
+17 + -31 = 2 (0010)
+17 + -30 = 3 (0011)
+17 + -29 = 4 (0100)
+17 + -28 = 5 (0101)
+17 + -27 = 6 (0110)
+17 + -26 = 7 (0111)
+17 + -25 = -8 (1000)
+17 + -24 = -7 (1001)
+17 + -23 = -6 (1010)
+17 + -22 = -5 (1011)
+17 + -21 = -4 (1100)
+17 + -20 = -3 (1101)
+17 + -19 = -2 (1110)
+17 + -18 = -1 (1111)
+17 + -17 = 0 (0000)
+17 + -16 = 1 (0001)
+17 + -15 = 2 (0010)
+17 + -14 = 3 (0011)
+17 + -13 = 4 (0100)
+17 + -12 = 5 (0101)
+17 + -11 = 6 (0110)
+17 + -10 = 7 (0111)
+17 + -9 = -8 (1000)
+17 + -8 = -7 (1001)
+17 + -7 = -6 (1010)
+17 + -6 = -5 (1011)
+17 + -5 = -4 (1100)
+17 + -4 = -3 (1101)
+17 + -3 = -2 (1110)
+17 + -2 = -1 (1111)
+17 + -1 = 0 (0000)
+18 + 0 = 2 (0010)
+18 + 1 = 3 (0011)
+18 + 2 = 4 (0100)
+18 + 3 = 5 (0101)
+18 + 4 = 6 (0110)
+18 + 5 = 7 (0111)
+18 + 6 = -8 (1000)
+18 + 7 = -7 (1001)
+18 + 8 = -6 (1010)
+18 + 9 = -5 (1011)
+18 + 10 = -4 (1100)
+18 + 11 = -3 (1101)
+18 + 12 = -2 (1110)
+18 + 13 = -1 (1111)
+18 + 14 = 0 (0000)
+18 + 15 = 1 (0001)
+18 + 16 = 2 (0010)
+18 + 17 = 3 (0011)
+18 + 18 = 4 (0100)
+18 + 19 = 5 (0101)
+18 + 20 = 6 (0110)
+18 + 21 = 7 (0111)
+18 + 22 = -8 (1000)
+18 + 23 = -7 (1001)
+18 + 24 = -6 (1010)
+18 + 25 = -5 (1011)
+18 + 26 = -4 (1100)
+18 + 27 = -3 (1101)
+18 + 28 = -2 (1110)
+18 + 29 = -1 (1111)
+18 + 30 = 0 (0000)
+18 + 31 = 1 (0001)
+18 + -32 = 2 (0010)
+18 + -31 = 3 (0011)
+18 + -30 = 4 (0100)
+18 + -29 = 5 (0101)
+18 + -28 = 6 (0110)
+18 + -27 = 7 (0111)
+18 + -26 = -8 (1000)
+18 + -25 = -7 (1001)
+18 + -24 = -6 (1010)
+18 + -23 = -5 (1011)
+18 + -22 = -4 (1100)
+18 + -21 = -3 (1101)
+18 + -20 = -2 (1110)
+18 + -19 = -1 (1111)
+18 + -18 = 0 (0000)
+18 + -17 = 1 (0001)
+18 + -16 = 2 (0010)
+18 + -15 = 3 (0011)
+18 + -14 = 4 (0100)
+18 + -13 = 5 (0101)
+18 + -12 = 6 (0110)
+18 + -11 = 7 (0111)
+18 + -10 = -8 (1000)
+18 + -9 = -7 (1001)
+18 + -8 = -6 (1010)
+18 + -7 = -5 (1011)
+18 + -6 = -4 (1100)
+18 + -5 = -3 (1101)
+18 + -4 = -2 (1110)
+18 + -3 = -1 (1111)
+18 + -2 = 0 (0000)
+18 + -1 = 1 (0001)
+19 + 0 = 3 (0011)
+19 + 1 = 4 (0100)
+19 + 2 = 5 (0101)
+19 + 3 = 6 (0110)
+19 + 4 = 7 (0111)
+19 + 5 = -8 (1000)
+19 + 6 = -7 (1001)
+19 + 7 = -6 (1010)
+19 + 8 = -5 (1011)
+19 + 9 = -4 (1100)
+19 + 10 = -3 (1101)
+19 + 11 = -2 (1110)
+19 + 12 = -1 (1111)
+19 + 13 = 0 (0000)
+19 + 14 = 1 (0001)
+19 + 15 = 2 (0010)
+19 + 16 = 3 (0011)
+19 + 17 = 4 (0100)
+19 + 18 = 5 (0101)
+19 + 19 = 6 (0110)
+19 + 20 = 7 (0111)
+19 + 21 = -8 (1000)
+19 + 22 = -7 (1001)
+19 + 23 = -6 (1010)
+19 + 24 = -5 (1011)
+19 + 25 = -4 (1100)
+19 + 26 = -3 (1101)
+19 + 27 = -2 (1110)
+19 + 28 = -1 (1111)
+19 + 29 = 0 (0000)
+19 + 30 = 1 (0001)
+19 + 31 = 2 (0010)
+19 + -32 = 3 (0011)
+19 + -31 = 4 (0100)
+19 + -30 = 5 (0101)
+19 + -29 = 6 (0110)
+19 + -28 = 7 (0111)
+19 + -27 = -8 (1000)
+19 + -26 = -7 (1001)
+19 + -25 = -6 (1010)
+19 + -24 = -5 (1011)
+19 + -23 = -4 (1100)
+19 + -22 = -3 (1101)
+19 + -21 = -2 (1110)
+19 + -20 = -1 (1111)
+19 + -19 = 0 (0000)
+19 + -18 = 1 (0001)
+19 + -17 = 2 (0010)
+19 + -16 = 3 (0011)
+19 + -15 = 4 (0100)
+19 + -14 = 5 (0101)
+19 + -13 = 6 (0110)
+19 + -12 = 7 (0111)
+19 + -11 = -8 (1000)
+19 + -10 = -7 (1001)
+19 + -9 = -6 (1010)
+19 + -8 = -5 (1011)
+19 + -7 = -4 (1100)
+19 + -6 = -3 (1101)
+19 + -5 = -2 (1110)
+19 + -4 = -1 (1111)
+19 + -3 = 0 (0000)
+19 + -2 = 1 (0001)
+19 + -1 = 2 (0010)
+20 + 0 = 4 (0100)
+20 + 1 = 5 (0101)
+20 + 2 = 6 (0110)
+20 + 3 = 7 (0111)
+20 + 4 = -8 (1000)
+20 + 5 = -7 (1001)
+20 + 6 = -6 (1010)
+20 + 7 = -5 (1011)
+20 + 8 = -4 (1100)
+20 + 9 = -3 (1101)
+20 + 10 = -2 (1110)
+20 + 11 = -1 (1111)
+20 + 12 = 0 (0000)
+20 + 13 = 1 (0001)
+20 + 14 = 2 (0010)
+20 + 15 = 3 (0011)
+20 + 16 = 4 (0100)
+20 + 17 = 5 (0101)
+20 + 18 = 6 (0110)
+20 + 19 = 7 (0111)
+20 + 20 = -8 (1000)
+20 + 21 = -7 (1001)
+20 + 22 = -6 (1010)
+20 + 23 = -5 (1011)
+20 + 24 = -4 (1100)
+20 + 25 = -3 (1101)
+20 + 26 = -2 (1110)
+20 + 27 = -1 (1111)
+20 + 28 = 0 (0000)
+20 + 29 = 1 (0001)
+20 + 30 = 2 (0010)
+20 + 31 = 3 (0011)
+20 + -32 = 4 (0100)
+20 + -31 = 5 (0101)
+20 + -30 = 6 (0110)
+20 + -29 = 7 (0111)
+20 + -28 = -8 (1000)
+20 + -27 = -7 (1001)
+20 + -26 = -6 (1010)
+20 + -25 = -5 (1011)
+20 + -24 = -4 (1100)
+20 + -23 = -3 (1101)
+20 + -22 = -2 (1110)
+20 + -21 = -1 (1111)
+20 + -20 = 0 (0000)
+20 + -19 = 1 (0001)
+20 + -18 = 2 (0010)
+20 + -17 = 3 (0011)
+20 + -16 = 4 (0100)
+20 + -15 = 5 (0101)
+20 + -14 = 6 (0110)
+20 + -13 = 7 (0111)
+20 + -12 = -8 (1000)
+20 + -11 = -7 (1001)
+20 + -10 = -6 (1010)
+20 + -9 = -5 (1011)
+20 + -8 = -4 (1100)
+20 + -7 = -3 (1101)
+20 + -6 = -2 (1110)
+20 + -5 = -1 (1111)
+20 + -4 = 0 (0000)
+20 + -3 = 1 (0001)
+20 + -2 = 2 (0010)
+20 + -1 = 3 (0011)
+21 + 0 = 5 (0101)
+21 + 1 = 6 (0110)
+21 + 2 = 7 (0111)
+21 + 3 = -8 (1000)
+21 + 4 = -7 (1001)
+21 + 5 = -6 (1010)
+21 + 6 = -5 (1011)
+21 + 7 = -4 (1100)
+21 + 8 = -3 (1101)
+21 + 9 = -2 (1110)
+21 + 10 = -1 (1111)
+21 + 11 = 0 (0000)
+21 + 12 = 1 (0001)
+21 + 13 = 2 (0010)
+21 + 14 = 3 (0011)
+21 + 15 = 4 (0100)
+21 + 16 = 5 (0101)
+21 + 17 = 6 (0110)
+21 + 18 = 7 (0111)
+21 + 19 = -8 (1000)
+21 + 20 = -7 (1001)
+21 + 21 = -6 (1010)
+21 + 22 = -5 (1011)
+21 + 23 = -4 (1100)
+21 + 24 = -3 (1101)
+21 + 25 = -2 (1110)
+21 + 26 = -1 (1111)
+21 + 27 = 0 (0000)
+21 + 28 = 1 (0001)
+21 + 29 = 2 (0010)
+21 + 30 = 3 (0011)
+21 + 31 = 4 (0100)
+21 + -32 = 5 (0101)
+21 + -31 = 6 (0110)
+21 + -30 = 7 (0111)
+21 + -29 = -8 (1000)
+21 + -28 = -7 (1001)
+21 + -27 = -6 (1010)
+21 + -26 = -5 (1011)
+21 + -25 = -4 (1100)
+21 + -24 = -3 (1101)
+21 + -23 = -2 (1110)
+21 + -22 = -1 (1111)
+21 + -21 = 0 (0000)
+21 + -20 = 1 (0001)
+21 + -19 = 2 (0010)
+21 + -18 = 3 (0011)
+21 + -17 = 4 (0100)
+21 + -16 = 5 (0101)
+21 + -15 = 6 (0110)
+21 + -14 = 7 (0111)
+21 + -13 = -8 (1000)
+21 + -12 = -7 (1001)
+21 + -11 = -6 (1010)
+21 + -10 = -5 (1011)
+21 + -9 = -4 (1100)
+21 + -8 = -3 (1101)
+21 + -7 = -2 (1110)
+21 + -6 = -1 (1111)
+21 + -5 = 0 (0000)
+21 + -4 = 1 (0001)
+21 + -3 = 2 (0010)
+21 + -2 = 3 (0011)
+21 + -1 = 4 (0100)
+22 + 0 = 6 (0110)
+22 + 1 = 7 (0111)
+22 + 2 = -8 (1000)
+22 + 3 = -7 (1001)
+22 + 4 = -6 (1010)
+22 + 5 = -5 (1011)
+22 + 6 = -4 (1100)
+22 + 7 = -3 (1101)
+22 + 8 = -2 (1110)
+22 + 9 = -1 (1111)
+22 + 10 = 0 (0000)
+22 + 11 = 1 (0001)
+22 + 12 = 2 (0010)
+22 + 13 = 3 (0011)
+22 + 14 = 4 (0100)
+22 + 15 = 5 (0101)
+22 + 16 = 6 (0110)
+22 + 17 = 7 (0111)
+22 + 18 = -8 (1000)
+22 + 19 = -7 (1001)
+22 + 20 = -6 (1010)
+22 + 21 = -5 (1011)
+22 + 22 = -4 (1100)
+22 + 23 = -3 (1101)
+22 + 24 = -2 (1110)
+22 + 25 = -1 (1111)
+22 + 26 = 0 (0000)
+22 + 27 = 1 (0001)
+22 + 28 = 2 (0010)
+22 + 29 = 3 (0011)
+22 + 30 = 4 (0100)
+22 + 31 = 5 (0101)
+22 + -32 = 6 (0110)
+22 + -31 = 7 (0111)
+22 + -30 = -8 (1000)
+22 + -29 = -7 (1001)
+22 + -28 = -6 (1010)
+22 + -27 = -5 (1011)
+22 + -26 = -4 (1100)
+22 + -25 = -3 (1101)
+22 + -24 = -2 (1110)
+22 + -23 = -1 (1111)
+22 + -22 = 0 (0000)
+22 + -21 = 1 (0001)
+22 + -20 = 2 (0010)
+22 + -19 = 3 (0011)
+22 + -18 = 4 (0100)
+22 + -17 = 5 (0101)
+22 + -16 = 6 (0110)
+22 + -15 = 7 (0111)
+22 + -14 = -8 (1000)
+22 + -13 = -7 (1001)
+22 + -12 = -6 (1010)
+22 + -11 = -5 (1011)
+22 + -10 = -4 (1100)
+22 + -9 = -3 (1101)
+22 + -8 = -2 (1110)
+22 + -7 = -1 (1111)
+22 + -6 = 0 (0000)
+22 + -5 = 1 (0001)
+22 + -4 = 2 (0010)
+22 + -3 = 3 (0011)
+22 + -2 = 4 (0100)
+22 + -1 = 5 (0101)
+23 + 0 = 7 (0111)
+23 + 1 = -8 (1000)
+23 + 2 = -7 (1001)
+23 + 3 = -6 (1010)
+23 + 4 = -5 (1011)
+23 + 5 = -4 (1100)
+23 + 6 = -3 (1101)
+23 + 7 = -2 (1110)
+23 + 8 = -1 (1111)
+23 + 9 = 0 (0000)
+23 + 10 = 1 (0001)
+23 + 11 = 2 (0010)
+23 + 12 = 3 (0011)
+23 + 13 = 4 (0100)
+23 + 14 = 5 (0101)
+23 + 15 = 6 (0110)
+23 + 16 = 7 (0111)
+23 + 17 = -8 (1000)
+23 + 18 = -7 (1001)
+23 + 19 = -6 (1010)
+23 + 20 = -5 (1011)
+23 + 21 = -4 (1100)
+23 + 22 = -3 (1101)
+23 + 23 = -2 (1110)
+23 + 24 = -1 (1111)
+23 + 25 = 0 (0000)
+23 + 26 = 1 (0001)
+23 + 27 = 2 (0010)
+23 + 28 = 3 (0011)
+23 + 29 = 4 (0100)
+23 + 30 = 5 (0101)
+23 + 31 = 6 (0110)
+23 + -32 = 7 (0111)
+23 + -31 = -8 (1000)
+23 + -30 = -7 (1001)
+23 + -29 = -6 (1010)
+23 + -28 = -5 (1011)
+23 + -27 = -4 (1100)
+23 + -26 = -3 (1101)
+23 + -25 = -2 (1110)
+23 + -24 = -1 (1111)
+23 + -23 = 0 (0000)
+23 + -22 = 1 (0001)
+23 + -21 = 2 (0010)
+23 + -20 = 3 (0011)
+23 + -19 = 4 (0100)
+23 + -18 = 5 (0101)
+23 + -17 = 6 (0110)
+23 + -16 = 7 (0111)
+23 + -15 = -8 (1000)
+23 + -14 = -7 (1001)
+23 + -13 = -6 (1010)
+23 + -12 = -5 (1011)
+23 + -11 = -4 (1100)
+23 + -10 = -3 (1101)
+23 + -9 = -2 (1110)
+23 + -8 = -1 (1111)
+23 + -7 = 0 (0000)
+23 + -6 = 1 (0001)
+23 + -5 = 2 (0010)
+23 + -4 = 3 (0011)
+23 + -3 = 4 (0100)
+23 + -2 = 5 (0101)
+23 + -1 = 6 (0110)
+24 + 0 = -8 (1000)
+24 + 1 = -7 (1001)
+24 + 2 = -6 (1010)
+24 + 3 = -5 (1011)
+24 + 4 = -4 (1100)
+24 + 5 = -3 (1101)
+24 + 6 = -2 (1110)
+24 + 7 = -1 (1111)
+24 + 8 = 0 (0000)
+24 + 9 = 1 (0001)
+24 + 10 = 2 (0010)
+24 + 11 = 3 (0011)
+24 + 12 = 4 (0100)
+24 + 13 = 5 (0101)
+24 + 14 = 6 (0110)
+24 + 15 = 7 (0111)
+24 + 16 = -8 (1000)
+24 + 17 = -7 (1001)
+24 + 18 = -6 (1010)
+24 + 19 = -5 (1011)
+24 + 20 = -4 (1100)
+24 + 21 = -3 (1101)
+24 + 22 = -2 (1110)
+24 + 23 = -1 (1111)
+24 + 24 = 0 (0000)
+24 + 25 = 1 (0001)
+24 + 26 = 2 (0010)
+24 + 27 = 3 (0011)
+24 + 28 = 4 (0100)
+24 + 29 = 5 (0101)
+24 + 30 = 6 (0110)
+24 + 31 = 7 (0111)
+24 + -32 = -8 (1000)
+24 + -31 = -7 (1001)
+24 + -30 = -6 (1010)
+24 + -29 = -5 (1011)
+24 + -28 = -4 (1100)
+24 + -27 = -3 (1101)
+24 + -26 = -2 (1110)
+24 + -25 = -1 (1111)
+24 + -24 = 0 (0000)
+24 + -23 = 1 (0001)
+24 + -22 = 2 (0010)
+24 + -21 = 3 (0011)
+24 + -20 = 4 (0100)
+24 + -19 = 5 (0101)
+24 + -18 = 6 (0110)
+24 + -17 = 7 (0111)
+24 + -16 = -8 (1000)
+24 + -15 = -7 (1001)
+24 + -14 = -6 (1010)
+24 + -13 = -5 (1011)
+24 + -12 = -4 (1100)
+24 + -11 = -3 (1101)
+24 + -10 = -2 (1110)
+24 + -9 = -1 (1111)
+24 + -8 = 0 (0000)
+24 + -7 = 1 (0001)
+24 + -6 = 2 (0010)
+24 + -5 = 3 (0011)
+24 + -4 = 4 (0100)
+24 + -3 = 5 (0101)
+24 + -2 = 6 (0110)
+24 + -1 = 7 (0111)
+25 + 0 = -7 (1001)
+25 + 1 = -6 (1010)
+25 + 2 = -5 (1011)
+25 + 3 = -4 (1100)
+25 + 4 = -3 (1101)
+25 + 5 = -2 (1110)
+25 + 6 = -1 (1111)
+25 + 7 = 0 (0000)
+25 + 8 = 1 (0001)
+25 + 9 = 2 (0010)
+25 + 10 = 3 (0011)
+25 + 11 = 4 (0100)
+25 + 12 = 5 (0101)
+25 + 13 = 6 (0110)
+25 + 14 = 7 (0111)
+25 + 15 = -8 (1000)
+25 + 16 = -7 (1001)
+25 + 17 = -6 (1010)
+25 + 18 = -5 (1011)
+25 + 19 = -4 (1100)
+25 + 20 = -3 (1101)
+25 + 21 = -2 (1110)
+25 + 22 = -1 (1111)
+25 + 23 = 0 (0000)
+25 + 24 = 1 (0001)
+25 + 25 = 2 (0010)
+25 + 26 = 3 (0011)
+25 + 27 = 4 (0100)
+25 + 28 = 5 (0101)
+25 + 29 = 6 (0110)
+25 + 30 = 7 (0111)
+25 + 31 = -8 (1000)
+25 + -32 = -7 (1001)
+25 + -31 = -6 (1010)
+25 + -30 = -5 (1011)
+25 + -29 = -4 (1100)
+25 + -28 = -3 (1101)
+25 + -27 = -2 (1110)
+25 + -26 = -1 (1111)
+25 + -25 = 0 (0000)
+25 + -24 = 1 (0001)
+25 + -23 = 2 (0010)
+25 + -22 = 3 (0011)
+25 + -21 = 4 (0100)
+25 + -20 = 5 (0101)
+25 + -19 = 6 (0110)
+25 + -18 = 7 (0111)
+25 + -17 = -8 (1000)
+25 + -16 = -7 (1001)
+25 + -15 = -6 (1010)
+25 + -14 = -5 (1011)
+25 + -13 = -4 (1100)
+25 + -12 = -3 (1101)
+25 + -11 = -2 (1110)
+25 + -10 = -1 (1111)
+25 + -9 = 0 (0000)
+25 + -8 = 1 (0001)
+25 + -7 = 2 (0010)
+25 + -6 = 3 (0011)
+25 + -5 = 4 (0100)
+25 + -4 = 5 (0101)
+25 + -3 = 6 (0110)
+25 + -2 = 7 (0111)
+25 + -1 = -8 (1000)
+26 + 0 = -6 (1010)
+26 + 1 = -5 (1011)
+26 + 2 = -4 (1100)
+26 + 3 = -3 (1101)
+26 + 4 = -2 (1110)
+26 + 5 = -1 (1111)
+26 + 6 = 0 (0000)
+26 + 7 = 1 (0001)
+26 + 8 = 2 (0010)
+26 + 9 = 3 (0011)
+26 + 10 = 4 (0100)
+26 + 11 = 5 (0101)
+26 + 12 = 6 (0110)
+26 + 13 = 7 (0111)
+26 + 14 = -8 (1000)
+26 + 15 = -7 (1001)
+26 + 16 = -6 (1010)
+26 + 17 = -5 (1011)
+26 + 18 = -4 (1100)
+26 + 19 = -3 (1101)
+26 + 20 = -2 (1110)
+26 + 21 = -1 (1111)
+26 + 22 = 0 (0000)
+26 + 23 = 1 (0001)
+26 + 24 = 2 (0010)
+26 + 25 = 3 (0011)
+26 + 26 = 4 (0100)
+26 + 27 = 5 (0101)
+26 + 28 = 6 (0110)
+26 + 29 = 7 (0111)
+26 + 30 = -8 (1000)
+26 + 31 = -7 (1001)
+26 + -32 = -6 (1010)
+26 + -31 = -5 (1011)
+26 + -30 = -4 (1100)
+26 + -29 = -3 (1101)
+26 + -28 = -2 (1110)
+26 + -27 = -1 (1111)
+26 + -26 = 0 (0000)
+26 + -25 = 1 (0001)
+26 + -24 = 2 (0010)
+26 + -23 = 3 (0011)
+26 + -22 = 4 (0100)
+26 + -21 = 5 (0101)
+26 + -20 = 6 (0110)
+26 + -19 = 7 (0111)
+26 + -18 = -8 (1000)
+26 + -17 = -7 (1001)
+26 + -16 = -6 (1010)
+26 + -15 = -5 (1011)
+26 + -14 = -4 (1100)
+26 + -13 = -3 (1101)
+26 + -12 = -2 (1110)
+26 + -11 = -1 (1111)
+26 + -10 = 0 (0000)
+26 + -9 = 1 (0001)
+26 + -8 = 2 (0010)
+26 + -7 = 3 (0011)
+26 + -6 = 4 (0100)
+26 + -5 = 5 (0101)
+26 + -4 = 6 (0110)
+26 + -3 = 7 (0111)
+26 + -2 = -8 (1000)
+26 + -1 = -7 (1001)
+27 + 0 = -5 (1011)
+27 + 1 = -4 (1100)
+27 + 2 = -3 (1101)
+27 + 3 = -2 (1110)
+27 + 4 = -1 (1111)
+27 + 5 = 0 (0000)
+27 + 6 = 1 (0001)
+27 + 7 = 2 (0010)
+27 + 8 = 3 (0011)
+27 + 9 = 4 (0100)
+27 + 10 = 5 (0101)
+27 + 11 = 6 (0110)
+27 + 12 = 7 (0111)
+27 + 13 = -8 (1000)
+27 + 14 = -7 (1001)
+27 + 15 = -6 (1010)
+27 + 16 = -5 (1011)
+27 + 17 = -4 (1100)
+27 + 18 = -3 (1101)
+27 + 19 = -2 (1110)
+27 + 20 = -1 (1111)
+27 + 21 = 0 (0000)
+27 + 22 = 1 (0001)
+27 + 23 = 2 (0010)
+27 + 24 = 3 (0011)
+27 + 25 = 4 (0100)
+27 + 26 = 5 (0101)
+27 + 27 = 6 (0110)
+27 + 28 = 7 (0111)
+27 + 29 = -8 (1000)
+27 + 30 = -7 (1001)
+27 + 31 = -6 (1010)
+27 + -32 = -5 (1011)
+27 + -31 = -4 (1100)
+27 + -30 = -3 (1101)
+27 + -29 = -2 (1110)
+27 + -28 = -1 (1111)
+27 + -27 = 0 (0000)
+27 + -26 = 1 (0001)
+27 + -25 = 2 (0010)
+27 + -24 = 3 (0011)
+27 + -23 = 4 (0100)
+27 + -22 = 5 (0101)
+27 + -21 = 6 (0110)
+27 + -20 = 7 (0111)
+27 + -19 = -8 (1000)
+27 + -18 = -7 (1001)
+27 + -17 = -6 (1010)
+27 + -16 = -5 (1011)
+27 + -15 = -4 (1100)
+27 + -14 = -3 (1101)
+27 + -13 = -2 (1110)
+27 + -12 = -1 (1111)
+27 + -11 = 0 (0000)
+27 + -10 = 1 (0001)
+27 + -9 = 2 (0010)
+27 + -8 = 3 (0011)
+27 + -7 = 4 (0100)
+27 + -6 = 5 (0101)
+27 + -5 = 6 (0110)
+27 + -4 = 7 (0111)
+27 + -3 = -8 (1000)
+27 + -2 = -7 (1001)
+27 + -1 = -6 (1010)
+28 + 0 = -4 (1100)
+28 + 1 = -3 (1101)
+28 + 2 = -2 (1110)
+28 + 3 = -1 (1111)
+28 + 4 = 0 (0000)
+28 + 5 = 1 (0001)
+28 + 6 = 2 (0010)
+28 + 7 = 3 (0011)
+28 + 8 = 4 (0100)
+28 + 9 = 5 (0101)
+28 + 10 = 6 (0110)
+28 + 11 = 7 (0111)
+28 + 12 = -8 (1000)
+28 + 13 = -7 (1001)
+28 + 14 = -6 (1010)
+28 + 15 = -5 (1011)
+28 + 16 = -4 (1100)
+28 + 17 = -3 (1101)
+28 + 18 = -2 (1110)
+28 + 19 = -1 (1111)
+28 + 20 = 0 (0000)
+28 + 21 = 1 (0001)
+28 + 22 = 2 (0010)
+28 + 23 = 3 (0011)
+28 + 24 = 4 (0100)
+28 + 25 = 5 (0101)
+28 + 26 = 6 (0110)
+28 + 27 = 7 (0111)
+28 + 28 = -8 (1000)
+28 + 29 = -7 (1001)
+28 + 30 = -6 (1010)
+28 + 31 = -5 (1011)
+28 + -32 = -4 (1100)
+28 + -31 = -3 (1101)
+28 + -30 = -2 (1110)
+28 + -29 = -1 (1111)
+28 + -28 = 0 (0000)
+28 + -27 = 1 (0001)
+28 + -26 = 2 (0010)
+28 + -25 = 3 (0011)
+28 + -24 = 4 (0100)
+28 + -23 = 5 (0101)
+28 + -22 = 6 (0110)
+28 + -21 = 7 (0111)
+28 + -20 = -8 (1000)
+28 + -19 = -7 (1001)
+28 + -18 = -6 (1010)
+28 + -17 = -5 (1011)
+28 + -16 = -4 (1100)
+28 + -15 = -3 (1101)
+28 + -14 = -2 (1110)
+28 + -13 = -1 (1111)
+28 + -12 = 0 (0000)
+28 + -11 = 1 (0001)
+28 + -10 = 2 (0010)
+28 + -9 = 3 (0011)
+28 + -8 = 4 (0100)
+28 + -7 = 5 (0101)
+28 + -6 = 6 (0110)
+28 + -5 = 7 (0111)
+28 + -4 = -8 (1000)
+28 + -3 = -7 (1001)
+28 + -2 = -6 (1010)
+28 + -1 = -5 (1011)
+29 + 0 = -3 (1101)
+29 + 1 = -2 (1110)
+29 + 2 = -1 (1111)
+29 + 3 = 0 (0000)
+29 + 4 = 1 (0001)
+29 + 5 = 2 (0010)
+29 + 6 = 3 (0011)
+29 + 7 = 4 (0100)
+29 + 8 = 5 (0101)
+29 + 9 = 6 (0110)
+29 + 10 = 7 (0111)
+29 + 11 = -8 (1000)
+29 + 12 = -7 (1001)
+29 + 13 = -6 (1010)
+29 + 14 = -5 (1011)
+29 + 15 = -4 (1100)
+29 + 16 = -3 (1101)
+29 + 17 = -2 (1110)
+29 + 18 = -1 (1111)
+29 + 19 = 0 (0000)
+29 + 20 = 1 (0001)
+29 + 21 = 2 (0010)
+29 + 22 = 3 (0011)
+29 + 23 = 4 (0100)
+29 + 24 = 5 (0101)
+29 + 25 = 6 (0110)
+29 + 26 = 7 (0111)
+29 + 27 = -8 (1000)
+29 + 28 = -7 (1001)
+29 + 29 = -6 (1010)
+29 + 30 = -5 (1011)
+29 + 31 = -4 (1100)
+29 + -32 = -3 (1101)
+29 + -31 = -2 (1110)
+29 + -30 = -1 (1111)
+29 + -29 = 0 (0000)
+29 + -28 = 1 (0001)
+29 + -27 = 2 (0010)
+29 + -26 = 3 (0011)
+29 + -25 = 4 (0100)
+29 + -24 = 5 (0101)
+29 + -23 = 6 (0110)
+29 + -22 = 7 (0111)
+29 + -21 = -8 (1000)
+29 + -20 = -7 (1001)
+29 + -19 = -6 (1010)
+29 + -18 = -5 (1011)
+29 + -17 = -4 (1100)
+29 + -16 = -3 (1101)
+29 + -15 = -2 (1110)
+29 + -14 = -1 (1111)
+29 + -13 = 0 (0000)
+29 + -12 = 1 (0001)
+29 + -11 = 2 (0010)
+29 + -10 = 3 (0011)
+29 + -9 = 4 (0100)
+29 + -8 = 5 (0101)
+29 + -7 = 6 (0110)
+29 + -6 = 7 (0111)
+29 + -5 = -8 (1000)
+29 + -4 = -7 (1001)
+29 + -3 = -6 (1010)
+29 + -2 = -5 (1011)
+29 + -1 = -4 (1100)
+30 + 0 = -2 (1110)
+30 + 1 = -1 (1111)
+30 + 2 = 0 (0000)
+30 + 3 = 1 (0001)
+30 + 4 = 2 (0010)
+30 + 5 = 3 (0011)
+30 + 6 = 4 (0100)
+30 + 7 = 5 (0101)
+30 + 8 = 6 (0110)
+30 + 9 = 7 (0111)
+30 + 10 = -8 (1000)
+30 + 11 = -7 (1001)
+30 + 12 = -6 (1010)
+30 + 13 = -5 (1011)
+30 + 14 = -4 (1100)
+30 + 15 = -3 (1101)
+30 + 16 = -2 (1110)
+30 + 17 = -1 (1111)
+30 + 18 = 0 (0000)
+30 + 19 = 1 (0001)
+30 + 20 = 2 (0010)
+30 + 21 = 3 (0011)
+30 + 22 = 4 (0100)
+30 + 23 = 5 (0101)
+30 + 24 = 6 (0110)
+30 + 25 = 7 (0111)
+30 + 26 = -8 (1000)
+30 + 27 = -7 (1001)
+30 + 28 = -6 (1010)
+30 + 29 = -5 (1011)
+30 + 30 = -4 (1100)
+30 + 31 = -3 (1101)
+30 + -32 = -2 (1110)
+30 + -31 = -1 (1111)
+30 + -30 = 0 (0000)
+30 + -29 = 1 (0001)
+30 + -28 = 2 (0010)
+30 + -27 = 3 (0011)
+30 + -26 = 4 (0100)
+30 + -25 = 5 (0101)
+30 + -24 = 6 (0110)
+30 + -23 = 7 (0111)
+30 + -22 = -8 (1000)
+30 + -21 = -7 (1001)
+30 + -20 = -6 (1010)
+30 + -19 = -5 (1011)
+30 + -18 = -4 (1100)
+30 + -17 = -3 (1101)
+30 + -16 = -2 (1110)
+30 + -15 = -1 (1111)
+30 + -14 = 0 (0000)
+30 + -13 = 1 (0001)
+30 + -12 = 2 (0010)
+30 + -11 = 3 (0011)
+30 + -10 = 4 (0100)
+30 + -9 = 5 (0101)
+30 + -8 = 6 (0110)
+30 + -7 = 7 (0111)
+30 + -6 = -8 (1000)
+30 + -5 = -7 (1001)
+30 + -4 = -6 (1010)
+30 + -3 = -5 (1011)
+30 + -2 = -4 (1100)
+30 + -1 = -3 (1101)
+31 + 0 = -1 (1111)
+31 + 1 = 0 (0000)
+31 + 2 = 1 (0001)
+31 + 3 = 2 (0010)
+31 + 4 = 3 (0011)
+31 + 5 = 4 (0100)
+31 + 6 = 5 (0101)
+31 + 7 = 6 (0110)
+31 + 8 = 7 (0111)
+31 + 9 = -8 (1000)
+31 + 10 = -7 (1001)
+31 + 11 = -6 (1010)
+31 + 12 = -5 (1011)
+31 + 13 = -4 (1100)
+31 + 14 = -3 (1101)
+31 + 15 = -2 (1110)
+31 + 16 = -1 (1111)
+31 + 17 = 0 (0000)
+31 + 18 = 1 (0001)
+31 + 19 = 2 (0010)
+31 + 20 = 3 (0011)
+31 + 21 = 4 (0100)
+31 + 22 = 5 (0101)
+31 + 23 = 6 (0110)
+31 + 24 = 7 (0111)
+31 + 25 = -8 (1000)
+31 + 26 = -7 (1001)
+31 + 27 = -6 (1010)
+31 + 28 = -5 (1011)
+31 + 29 = -4 (1100)
+31 + 30 = -3 (1101)
+31 + 31 = -2 (1110)
+31 + -32 = -1 (1111)
+31 + -31 = 0 (0000)
+31 + -30 = 1 (0001)
+31 + -29 = 2 (0010)
+31 + -28 = 3 (0011)
+31 + -27 = 4 (0100)
+31 + -26 = 5 (0101)
+31 + -25 = 6 (0110)
+31 + -24 = 7 (0111)
+31 + -23 = -8 (1000)
+31 + -22 = -7 (1001)
+31 + -21 = -6 (1010)
+31 + -20 = -5 (1011)
+31 + -19 = -4 (1100)
+31 + -18 = -3 (1101)
+31 + -17 = -2 (1110)
+31 + -16 = -1 (1111)
+31 + -15 = 0 (0000)
+31 + -14 = 1 (0001)
+31 + -13 = 2 (0010)
+31 + -12 = 3 (0011)
+31 + -11 = 4 (0100)
+31 + -10 = 5 (0101)
+31 + -9 = 6 (0110)
+31 + -8 = 7 (0111)
+31 + -7 = -8 (1000)
+31 + -6 = -7 (1001)
+31 + -5 = -6 (1010)
+31 + -4 = -5 (1011)
+31 + -3 = -4 (1100)
+31 + -2 = -3 (1101)
+31 + -1 = -2 (1110)
+-32 + 0 = 0 (0000)
+-32 + 1 = 1 (0001)
+-32 + 2 = 2 (0010)
+-32 + 3 = 3 (0011)
+-32 + 4 = 4 (0100)
+-32 + 5 = 5 (0101)
+-32 + 6 = 6 (0110)
+-32 + 7 = 7 (0111)
+-32 + 8 = -8 (1000)
+-32 + 9 = -7 (1001)
+-32 + 10 = -6 (1010)
+-32 + 11 = -5 (1011)
+-32 + 12 = -4 (1100)
+-32 + 13 = -3 (1101)
+-32 + 14 = -2 (1110)
+-32 + 15 = -1 (1111)
+-32 + 16 = 0 (0000)
+-32 + 17 = 1 (0001)
+-32 + 18 = 2 (0010)
+-32 + 19 = 3 (0011)
+-32 + 20 = 4 (0100)
+-32 + 21 = 5 (0101)
+-32 + 22 = 6 (0110)
+-32 + 23 = 7 (0111)
+-32 + 24 = -8 (1000)
+-32 + 25 = -7 (1001)
+-32 + 26 = -6 (1010)
+-32 + 27 = -5 (1011)
+-32 + 28 = -4 (1100)
+-32 + 29 = -3 (1101)
+-32 + 30 = -2 (1110)
+-32 + 31 = -1 (1111)
+-32 + -32 = 0 (0000)
+-32 + -31 = 1 (0001)
+-32 + -30 = 2 (0010)
+-32 + -29 = 3 (0011)
+-32 + -28 = 4 (0100)
+-32 + -27 = 5 (0101)
+-32 + -26 = 6 (0110)
+-32 + -25 = 7 (0111)
+-32 + -24 = -8 (1000)
+-32 + -23 = -7 (1001)
+-32 + -22 = -6 (1010)
+-32 + -21 = -5 (1011)
+-32 + -20 = -4 (1100)
+-32 + -19 = -3 (1101)
+-32 + -18 = -2 (1110)
+-32 + -17 = -1 (1111)
+-32 + -16 = 0 (0000)
+-32 + -15 = 1 (0001)
+-32 + -14 = 2 (0010)
+-32 + -13 = 3 (0011)
+-32 + -12 = 4 (0100)
+-32 + -11 = 5 (0101)
+-32 + -10 = 6 (0110)
+-32 + -9 = 7 (0111)
+-32 + -8 = -8 (1000)
+-32 + -7 = -7 (1001)
+-32 + -6 = -6 (1010)
+-32 + -5 = -5 (1011)
+-32 + -4 = -4 (1100)
+-32 + -3 = -3 (1101)
+-32 + -2 = -2 (1110)
+-32 + -1 = -1 (1111)
+-31 + 0 = 1 (0001)
+-31 + 1 = 2 (0010)
+-31 + 2 = 3 (0011)
+-31 + 3 = 4 (0100)
+-31 + 4 = 5 (0101)
+-31 + 5 = 6 (0110)
+-31 + 6 = 7 (0111)
+-31 + 7 = -8 (1000)
+-31 + 8 = -7 (1001)
+-31 + 9 = -6 (1010)
+-31 + 10 = -5 (1011)
+-31 + 11 = -4 (1100)
+-31 + 12 = -3 (1101)
+-31 + 13 = -2 (1110)
+-31 + 14 = -1 (1111)
+-31 + 15 = 0 (0000)
+-31 + 16 = 1 (0001)
+-31 + 17 = 2 (0010)
+-31 + 18 = 3 (0011)
+-31 + 19 = 4 (0100)
+-31 + 20 = 5 (0101)
+-31 + 21 = 6 (0110)
+-31 + 22 = 7 (0111)
+-31 + 23 = -8 (1000)
+-31 + 24 = -7 (1001)
+-31 + 25 = -6 (1010)
+-31 + 26 = -5 (1011)
+-31 + 27 = -4 (1100)
+-31 + 28 = -3 (1101)
+-31 + 29 = -2 (1110)
+-31 + 30 = -1 (1111)
+-31 + 31 = 0 (0000)
+-31 + -32 = 1 (0001)
+-31 + -31 = 2 (0010)
+-31 + -30 = 3 (0011)
+-31 + -29 = 4 (0100)
+-31 + -28 = 5 (0101)
+-31 + -27 = 6 (0110)
+-31 + -26 = 7 (0111)
+-31 + -25 = -8 (1000)
+-31 + -24 = -7 (1001)
+-31 + -23 = -6 (1010)
+-31 + -22 = -5 (1011)
+-31 + -21 = -4 (1100)
+-31 + -20 = -3 (1101)
+-31 + -19 = -2 (1110)
+-31 + -18 = -1 (1111)
+-31 + -17 = 0 (0000)
+-31 + -16 = 1 (0001)
+-31 + -15 = 2 (0010)
+-31 + -14 = 3 (0011)
+-31 + -13 = 4 (0100)
+-31 + -12 = 5 (0101)
+-31 + -11 = 6 (0110)
+-31 + -10 = 7 (0111)
+-31 + -9 = -8 (1000)
+-31 + -8 = -7 (1001)
+-31 + -7 = -6 (1010)
+-31 + -6 = -5 (1011)
+-31 + -5 = -4 (1100)
+-31 + -4 = -3 (1101)
+-31 + -3 = -2 (1110)
+-31 + -2 = -1 (1111)
+-31 + -1 = 0 (0000)
+-30 + 0 = 2 (0010)
+-30 + 1 = 3 (0011)
+-30 + 2 = 4 (0100)
+-30 + 3 = 5 (0101)
+-30 + 4 = 6 (0110)
+-30 + 5 = 7 (0111)
+-30 + 6 = -8 (1000)
+-30 + 7 = -7 (1001)
+-30 + 8 = -6 (1010)
+-30 + 9 = -5 (1011)
+-30 + 10 = -4 (1100)
+-30 + 11 = -3 (1101)
+-30 + 12 = -2 (1110)
+-30 + 13 = -1 (1111)
+-30 + 14 = 0 (0000)
+-30 + 15 = 1 (0001)
+-30 + 16 = 2 (0010)
+-30 + 17 = 3 (0011)
+-30 + 18 = 4 (0100)
+-30 + 19 = 5 (0101)
+-30 + 20 = 6 (0110)
+-30 + 21 = 7 (0111)
+-30 + 22 = -8 (1000)
+-30 + 23 = -7 (1001)
+-30 + 24 = -6 (1010)
+-30 + 25 = -5 (1011)
+-30 + 26 = -4 (1100)
+-30 + 27 = -3 (1101)
+-30 + 28 = -2 (1110)
+-30 + 29 = -1 (1111)
+-30 + 30 = 0 (0000)
+-30 + 31 = 1 (0001)
+-30 + -32 = 2 (0010)
+-30 + -31 = 3 (0011)
+-30 + -30 = 4 (0100)
+-30 + -29 = 5 (0101)
+-30 + -28 = 6 (0110)
+-30 + -27 = 7 (0111)
+-30 + -26 = -8 (1000)
+-30 + -25 = -7 (1001)
+-30 + -24 = -6 (1010)
+-30 + -23 = -5 (1011)
+-30 + -22 = -4 (1100)
+-30 + -21 = -3 (1101)
+-30 + -20 = -2 (1110)
+-30 + -19 = -1 (1111)
+-30 + -18 = 0 (0000)
+-30 + -17 = 1 (0001)
+-30 + -16 = 2 (0010)
+-30 + -15 = 3 (0011)
+-30 + -14 = 4 (0100)
+-30 + -13 = 5 (0101)
+-30 + -12 = 6 (0110)
+-30 + -11 = 7 (0111)
+-30 + -10 = -8 (1000)
+-30 + -9 = -7 (1001)
+-30 + -8 = -6 (1010)
+-30 + -7 = -5 (1011)
+-30 + -6 = -4 (1100)
+-30 + -5 = -3 (1101)
+-30 + -4 = -2 (1110)
+-30 + -3 = -1 (1111)
+-30 + -2 = 0 (0000)
+-30 + -1 = 1 (0001)
+-29 + 0 = 3 (0011)
+-29 + 1 = 4 (0100)
+-29 + 2 = 5 (0101)
+-29 + 3 = 6 (0110)
+-29 + 4 = 7 (0111)
+-29 + 5 = -8 (1000)
+-29 + 6 = -7 (1001)
+-29 + 7 = -6 (1010)
+-29 + 8 = -5 (1011)
+-29 + 9 = -4 (1100)
+-29 + 10 = -3 (1101)
+-29 + 11 = -2 (1110)
+-29 + 12 = -1 (1111)
+-29 + 13 = 0 (0000)
+-29 + 14 = 1 (0001)
+-29 + 15 = 2 (0010)
+-29 + 16 = 3 (0011)
+-29 + 17 = 4 (0100)
+-29 + 18 = 5 (0101)
+-29 + 19 = 6 (0110)
+-29 + 20 = 7 (0111)
+-29 + 21 = -8 (1000)
+-29 + 22 = -7 (1001)
+-29 + 23 = -6 (1010)
+-29 + 24 = -5 (1011)
+-29 + 25 = -4 (1100)
+-29 + 26 = -3 (1101)
+-29 + 27 = -2 (1110)
+-29 + 28 = -1 (1111)
+-29 + 29 = 0 (0000)
+-29 + 30 = 1 (0001)
+-29 + 31 = 2 (0010)
+-29 + -32 = 3 (0011)
+-29 + -31 = 4 (0100)
+-29 + -30 = 5 (0101)
+-29 + -29 = 6 (0110)
+-29 + -28 = 7 (0111)
+-29 + -27 = -8 (1000)
+-29 + -26 = -7 (1001)
+-29 + -25 = -6 (1010)
+-29 + -24 = -5 (1011)
+-29 + -23 = -4 (1100)
+-29 + -22 = -3 (1101)
+-29 + -21 = -2 (1110)
+-29 + -20 = -1 (1111)
+-29 + -19 = 0 (0000)
+-29 + -18 = 1 (0001)
+-29 + -17 = 2 (0010)
+-29 + -16 = 3 (0011)
+-29 + -15 = 4 (0100)
+-29 + -14 = 5 (0101)
+-29 + -13 = 6 (0110)
+-29 + -12 = 7 (0111)
+-29 + -11 = -8 (1000)
+-29 + -10 = -7 (1001)
+-29 + -9 = -6 (1010)
+-29 + -8 = -5 (1011)
+-29 + -7 = -4 (1100)
+-29 + -6 = -3 (1101)
+-29 + -5 = -2 (1110)
+-29 + -4 = -1 (1111)
+-29 + -3 = 0 (0000)
+-29 + -2 = 1 (0001)
+-29 + -1 = 2 (0010)
+-28 + 0 = 4 (0100)
+-28 + 1 = 5 (0101)
+-28 + 2 = 6 (0110)
+-28 + 3 = 7 (0111)
+-28 + 4 = -8 (1000)
+-28 + 5 = -7 (1001)
+-28 + 6 = -6 (1010)
+-28 + 7 = -5 (1011)
+-28 + 8 = -4 (1100)
+-28 + 9 = -3 (1101)
+-28 + 10 = -2 (1110)
+-28 + 11 = -1 (1111)
+-28 + 12 = 0 (0000)
+-28 + 13 = 1 (0001)
+-28 + 14 = 2 (0010)
+-28 + 15 = 3 (0011)
+-28 + 16 = 4 (0100)
+-28 + 17 = 5 (0101)
+-28 + 18 = 6 (0110)
+-28 + 19 = 7 (0111)
+-28 + 20 = -8 (1000)
+-28 + 21 = -7 (1001)
+-28 + 22 = -6 (1010)
+-28 + 23 = -5 (1011)
+-28 + 24 = -4 (1100)
+-28 + 25 = -3 (1101)
+-28 + 26 = -2 (1110)
+-28 + 27 = -1 (1111)
+-28 + 28 = 0 (0000)
+-28 + 29 = 1 (0001)
+-28 + 30 = 2 (0010)
+-28 + 31 = 3 (0011)
+-28 + -32 = 4 (0100)
+-28 + -31 = 5 (0101)
+-28 + -30 = 6 (0110)
+-28 + -29 = 7 (0111)
+-28 + -28 = -8 (1000)
+-28 + -27 = -7 (1001)
+-28 + -26 = -6 (1010)
+-28 + -25 = -5 (1011)
+-28 + -24 = -4 (1100)
+-28 + -23 = -3 (1101)
+-28 + -22 = -2 (1110)
+-28 + -21 = -1 (1111)
+-28 + -20 = 0 (0000)
+-28 + -19 = 1 (0001)
+-28 + -18 = 2 (0010)
+-28 + -17 = 3 (0011)
+-28 + -16 = 4 (0100)
+-28 + -15 = 5 (0101)
+-28 + -14 = 6 (0110)
+-28 + -13 = 7 (0111)
+-28 + -12 = -8 (1000)
+-28 + -11 = -7 (1001)
+-28 + -10 = -6 (1010)
+-28 + -9 = -5 (1011)
+-28 + -8 = -4 (1100)
+-28 + -7 = -3 (1101)
+-28 + -6 = -2 (1110)
+-28 + -5 = -1 (1111)
+-28 + -4 = 0 (0000)
+-28 + -3 = 1 (0001)
+-28 + -2 = 2 (0010)
+-28 + -1 = 3 (0011)
+-27 + 0 = 5 (0101)
+-27 + 1 = 6 (0110)
+-27 + 2 = 7 (0111)
+-27 + 3 = -8 (1000)
+-27 + 4 = -7 (1001)
+-27 + 5 = -6 (1010)
+-27 + 6 = -5 (1011)
+-27 + 7 = -4 (1100)
+-27 + 8 = -3 (1101)
+-27 + 9 = -2 (1110)
+-27 + 10 = -1 (1111)
+-27 + 11 = 0 (0000)
+-27 + 12 = 1 (0001)
+-27 + 13 = 2 (0010)
+-27 + 14 = 3 (0011)
+-27 + 15 = 4 (0100)
+-27 + 16 = 5 (0101)
+-27 + 17 = 6 (0110)
+-27 + 18 = 7 (0111)
+-27 + 19 = -8 (1000)
+-27 + 20 = -7 (1001)
+-27 + 21 = -6 (1010)
+-27 + 22 = -5 (1011)
+-27 + 23 = -4 (1100)
+-27 + 24 = -3 (1101)
+-27 + 25 = -2 (1110)
+-27 + 26 = -1 (1111)
+-27 + 27 = 0 (0000)
+-27 + 28 = 1 (0001)
+-27 + 29 = 2 (0010)
+-27 + 30 = 3 (0011)
+-27 + 31 = 4 (0100)
+-27 + -32 = 5 (0101)
+-27 + -31 = 6 (0110)
+-27 + -30 = 7 (0111)
+-27 + -29 = -8 (1000)
+-27 + -28 = -7 (1001)
+-27 + -27 = -6 (1010)
+-27 + -26 = -5 (1011)
+-27 + -25 = -4 (1100)
+-27 + -24 = -3 (1101)
+-27 + -23 = -2 (1110)
+-27 + -22 = -1 (1111)
+-27 + -21 = 0 (0000)
+-27 + -20 = 1 (0001)
+-27 + -19 = 2 (0010)
+-27 + -18 = 3 (0011)
+-27 + -17 = 4 (0100)
+-27 + -16 = 5 (0101)
+-27 + -15 = 6 (0110)
+-27 + -14 = 7 (0111)
+-27 + -13 = -8 (1000)
+-27 + -12 = -7 (1001)
+-27 + -11 = -6 (1010)
+-27 + -10 = -5 (1011)
+-27 + -9 = -4 (1100)
+-27 + -8 = -3 (1101)
+-27 + -7 = -2 (1110)
+-27 + -6 = -1 (1111)
+-27 + -5 = 0 (0000)
+-27 + -4 = 1 (0001)
+-27 + -3 = 2 (0010)
+-27 + -2 = 3 (0011)
+-27 + -1 = 4 (0100)
+-26 + 0 = 6 (0110)
+-26 + 1 = 7 (0111)
+-26 + 2 = -8 (1000)
+-26 + 3 = -7 (1001)
+-26 + 4 = -6 (1010)
+-26 + 5 = -5 (1011)
+-26 + 6 = -4 (1100)
+-26 + 7 = -3 (1101)
+-26 + 8 = -2 (1110)
+-26 + 9 = -1 (1111)
+-26 + 10 = 0 (0000)
+-26 + 11 = 1 (0001)
+-26 + 12 = 2 (0010)
+-26 + 13 = 3 (0011)
+-26 + 14 = 4 (0100)
+-26 + 15 = 5 (0101)
+-26 + 16 = 6 (0110)
+-26 + 17 = 7 (0111)
+-26 + 18 = -8 (1000)
+-26 + 19 = -7 (1001)
+-26 + 20 = -6 (1010)
+-26 + 21 = -5 (1011)
+-26 + 22 = -4 (1100)
+-26 + 23 = -3 (1101)
+-26 + 24 = -2 (1110)
+-26 + 25 = -1 (1111)
+-26 + 26 = 0 (0000)
+-26 + 27 = 1 (0001)
+-26 + 28 = 2 (0010)
+-26 + 29 = 3 (0011)
+-26 + 30 = 4 (0100)
+-26 + 31 = 5 (0101)
+-26 + -32 = 6 (0110)
+-26 + -31 = 7 (0111)
+-26 + -30 = -8 (1000)
+-26 + -29 = -7 (1001)
+-26 + -28 = -6 (1010)
+-26 + -27 = -5 (1011)
+-26 + -26 = -4 (1100)
+-26 + -25 = -3 (1101)
+-26 + -24 = -2 (1110)
+-26 + -23 = -1 (1111)
+-26 + -22 = 0 (0000)
+-26 + -21 = 1 (0001)
+-26 + -20 = 2 (0010)
+-26 + -19 = 3 (0011)
+-26 + -18 = 4 (0100)
+-26 + -17 = 5 (0101)
+-26 + -16 = 6 (0110)
+-26 + -15 = 7 (0111)
+-26 + -14 = -8 (1000)
+-26 + -13 = -7 (1001)
+-26 + -12 = -6 (1010)
+-26 + -11 = -5 (1011)
+-26 + -10 = -4 (1100)
+-26 + -9 = -3 (1101)
+-26 + -8 = -2 (1110)
+-26 + -7 = -1 (1111)
+-26 + -6 = 0 (0000)
+-26 + -5 = 1 (0001)
+-26 + -4 = 2 (0010)
+-26 + -3 = 3 (0011)
+-26 + -2 = 4 (0100)
+-26 + -1 = 5 (0101)
+-25 + 0 = 7 (0111)
+-25 + 1 = -8 (1000)
+-25 + 2 = -7 (1001)
+-25 + 3 = -6 (1010)
+-25 + 4 = -5 (1011)
+-25 + 5 = -4 (1100)
+-25 + 6 = -3 (1101)
+-25 + 7 = -2 (1110)
+-25 + 8 = -1 (1111)
+-25 + 9 = 0 (0000)
+-25 + 10 = 1 (0001)
+-25 + 11 = 2 (0010)
+-25 + 12 = 3 (0011)
+-25 + 13 = 4 (0100)
+-25 + 14 = 5 (0101)
+-25 + 15 = 6 (0110)
+-25 + 16 = 7 (0111)
+-25 + 17 = -8 (1000)
+-25 + 18 = -7 (1001)
+-25 + 19 = -6 (1010)
+-25 + 20 = -5 (1011)
+-25 + 21 = -4 (1100)
+-25 + 22 = -3 (1101)
+-25 + 23 = -2 (1110)
+-25 + 24 = -1 (1111)
+-25 + 25 = 0 (0000)
+-25 + 26 = 1 (0001)
+-25 + 27 = 2 (0010)
+-25 + 28 = 3 (0011)
+-25 + 29 = 4 (0100)
+-25 + 30 = 5 (0101)
+-25 + 31 = 6 (0110)
+-25 + -32 = 7 (0111)
+-25 + -31 = -8 (1000)
+-25 + -30 = -7 (1001)
+-25 + -29 = -6 (1010)
+-25 + -28 = -5 (1011)
+-25 + -27 = -4 (1100)
+-25 + -26 = -3 (1101)
+-25 + -25 = -2 (1110)
+-25 + -24 = -1 (1111)
+-25 + -23 = 0 (0000)
+-25 + -22 = 1 (0001)
+-25 + -21 = 2 (0010)
+-25 + -20 = 3 (0011)
+-25 + -19 = 4 (0100)
+-25 + -18 = 5 (0101)
+-25 + -17 = 6 (0110)
+-25 + -16 = 7 (0111)
+-25 + -15 = -8 (1000)
+-25 + -14 = -7 (1001)
+-25 + -13 = -6 (1010)
+-25 + -12 = -5 (1011)
+-25 + -11 = -4 (1100)
+-25 + -10 = -3 (1101)
+-25 + -9 = -2 (1110)
+-25 + -8 = -1 (1111)
+-25 + -7 = 0 (0000)
+-25 + -6 = 1 (0001)
+-25 + -5 = 2 (0010)
+-25 + -4 = 3 (0011)
+-25 + -3 = 4 (0100)
+-25 + -2 = 5 (0101)
+-25 + -1 = 6 (0110)
+-24 + 0 = -8 (1000)
+-24 + 1 = -7 (1001)
+-24 + 2 = -6 (1010)
+-24 + 3 = -5 (1011)
+-24 + 4 = -4 (1100)
+-24 + 5 = -3 (1101)
+-24 + 6 = -2 (1110)
+-24 + 7 = -1 (1111)
+-24 + 8 = 0 (0000)
+-24 + 9 = 1 (0001)
+-24 + 10 = 2 (0010)
+-24 + 11 = 3 (0011)
+-24 + 12 = 4 (0100)
+-24 + 13 = 5 (0101)
+-24 + 14 = 6 (0110)
+-24 + 15 = 7 (0111)
+-24 + 16 = -8 (1000)
+-24 + 17 = -7 (1001)
+-24 + 18 = -6 (1010)
+-24 + 19 = -5 (1011)
+-24 + 20 = -4 (1100)
+-24 + 21 = -3 (1101)
+-24 + 22 = -2 (1110)
+-24 + 23 = -1 (1111)
+-24 + 24 = 0 (0000)
+-24 + 25 = 1 (0001)
+-24 + 26 = 2 (0010)
+-24 + 27 = 3 (0011)
+-24 + 28 = 4 (0100)
+-24 + 29 = 5 (0101)
+-24 + 30 = 6 (0110)
+-24 + 31 = 7 (0111)
+-24 + -32 = -8 (1000)
+-24 + -31 = -7 (1001)
+-24 + -30 = -6 (1010)
+-24 + -29 = -5 (1011)
+-24 + -28 = -4 (1100)
+-24 + -27 = -3 (1101)
+-24 + -26 = -2 (1110)
+-24 + -25 = -1 (1111)
+-24 + -24 = 0 (0000)
+-24 + -23 = 1 (0001)
+-24 + -22 = 2 (0010)
+-24 + -21 = 3 (0011)
+-24 + -20 = 4 (0100)
+-24 + -19 = 5 (0101)
+-24 + -18 = 6 (0110)
+-24 + -17 = 7 (0111)
+-24 + -16 = -8 (1000)
+-24 + -15 = -7 (1001)
+-24 + -14 = -6 (1010)
+-24 + -13 = -5 (1011)
+-24 + -12 = -4 (1100)
+-24 + -11 = -3 (1101)
+-24 + -10 = -2 (1110)
+-24 + -9 = -1 (1111)
+-24 + -8 = 0 (0000)
+-24 + -7 = 1 (0001)
+-24 + -6 = 2 (0010)
+-24 + -5 = 3 (0011)
+-24 + -4 = 4 (0100)
+-24 + -3 = 5 (0101)
+-24 + -2 = 6 (0110)
+-24 + -1 = 7 (0111)
+-23 + 0 = -7 (1001)
+-23 + 1 = -6 (1010)
+-23 + 2 = -5 (1011)
+-23 + 3 = -4 (1100)
+-23 + 4 = -3 (1101)
+-23 + 5 = -2 (1110)
+-23 + 6 = -1 (1111)
+-23 + 7 = 0 (0000)
+-23 + 8 = 1 (0001)
+-23 + 9 = 2 (0010)
+-23 + 10 = 3 (0011)
+-23 + 11 = 4 (0100)
+-23 + 12 = 5 (0101)
+-23 + 13 = 6 (0110)
+-23 + 14 = 7 (0111)
+-23 + 15 = -8 (1000)
+-23 + 16 = -7 (1001)
+-23 + 17 = -6 (1010)
+-23 + 18 = -5 (1011)
+-23 + 19 = -4 (1100)
+-23 + 20 = -3 (1101)
+-23 + 21 = -2 (1110)
+-23 + 22 = -1 (1111)
+-23 + 23 = 0 (0000)
+-23 + 24 = 1 (0001)
+-23 + 25 = 2 (0010)
+-23 + 26 = 3 (0011)
+-23 + 27 = 4 (0100)
+-23 + 28 = 5 (0101)
+-23 + 29 = 6 (0110)
+-23 + 30 = 7 (0111)
+-23 + 31 = -8 (1000)
+-23 + -32 = -7 (1001)
+-23 + -31 = -6 (1010)
+-23 + -30 = -5 (1011)
+-23 + -29 = -4 (1100)
+-23 + -28 = -3 (1101)
+-23 + -27 = -2 (1110)
+-23 + -26 = -1 (1111)
+-23 + -25 = 0 (0000)
+-23 + -24 = 1 (0001)
+-23 + -23 = 2 (0010)
+-23 + -22 = 3 (0011)
+-23 + -21 = 4 (0100)
+-23 + -20 = 5 (0101)
+-23 + -19 = 6 (0110)
+-23 + -18 = 7 (0111)
+-23 + -17 = -8 (1000)
+-23 + -16 = -7 (1001)
+-23 + -15 = -6 (1010)
+-23 + -14 = -5 (1011)
+-23 + -13 = -4 (1100)
+-23 + -12 = -3 (1101)
+-23 + -11 = -2 (1110)
+-23 + -10 = -1 (1111)
+-23 + -9 = 0 (0000)
+-23 + -8 = 1 (0001)
+-23 + -7 = 2 (0010)
+-23 + -6 = 3 (0011)
+-23 + -5 = 4 (0100)
+-23 + -4 = 5 (0101)
+-23 + -3 = 6 (0110)
+-23 + -2 = 7 (0111)
+-23 + -1 = -8 (1000)
+-22 + 0 = -6 (1010)
+-22 + 1 = -5 (1011)
+-22 + 2 = -4 (1100)
+-22 + 3 = -3 (1101)
+-22 + 4 = -2 (1110)
+-22 + 5 = -1 (1111)
+-22 + 6 = 0 (0000)
+-22 + 7 = 1 (0001)
+-22 + 8 = 2 (0010)
+-22 + 9 = 3 (0011)
+-22 + 10 = 4 (0100)
+-22 + 11 = 5 (0101)
+-22 + 12 = 6 (0110)
+-22 + 13 = 7 (0111)
+-22 + 14 = -8 (1000)
+-22 + 15 = -7 (1001)
+-22 + 16 = -6 (1010)
+-22 + 17 = -5 (1011)
+-22 + 18 = -4 (1100)
+-22 + 19 = -3 (1101)
+-22 + 20 = -2 (1110)
+-22 + 21 = -1 (1111)
+-22 + 22 = 0 (0000)
+-22 + 23 = 1 (0001)
+-22 + 24 = 2 (0010)
+-22 + 25 = 3 (0011)
+-22 + 26 = 4 (0100)
+-22 + 27 = 5 (0101)
+-22 + 28 = 6 (0110)
+-22 + 29 = 7 (0111)
+-22 + 30 = -8 (1000)
+-22 + 31 = -7 (1001)
+-22 + -32 = -6 (1010)
+-22 + -31 = -5 (1011)
+-22 + -30 = -4 (1100)
+-22 + -29 = -3 (1101)
+-22 + -28 = -2 (1110)
+-22 + -27 = -1 (1111)
+-22 + -26 = 0 (0000)
+-22 + -25 = 1 (0001)
+-22 + -24 = 2 (0010)
+-22 + -23 = 3 (0011)
+-22 + -22 = 4 (0100)
+-22 + -21 = 5 (0101)
+-22 + -20 = 6 (0110)
+-22 + -19 = 7 (0111)
+-22 + -18 = -8 (1000)
+-22 + -17 = -7 (1001)
+-22 + -16 = -6 (1010)
+-22 + -15 = -5 (1011)
+-22 + -14 = -4 (1100)
+-22 + -13 = -3 (1101)
+-22 + -12 = -2 (1110)
+-22 + -11 = -1 (1111)
+-22 + -10 = 0 (0000)
+-22 + -9 = 1 (0001)
+-22 + -8 = 2 (0010)
+-22 + -7 = 3 (0011)
+-22 + -6 = 4 (0100)
+-22 + -5 = 5 (0101)
+-22 + -4 = 6 (0110)
+-22 + -3 = 7 (0111)
+-22 + -2 = -8 (1000)
+-22 + -1 = -7 (1001)
+-21 + 0 = -5 (1011)
+-21 + 1 = -4 (1100)
+-21 + 2 = -3 (1101)
+-21 + 3 = -2 (1110)
+-21 + 4 = -1 (1111)
+-21 + 5 = 0 (0000)
+-21 + 6 = 1 (0001)
+-21 + 7 = 2 (0010)
+-21 + 8 = 3 (0011)
+-21 + 9 = 4 (0100)
+-21 + 10 = 5 (0101)
+-21 + 11 = 6 (0110)
+-21 + 12 = 7 (0111)
+-21 + 13 = -8 (1000)
+-21 + 14 = -7 (1001)
+-21 + 15 = -6 (1010)
+-21 + 16 = -5 (1011)
+-21 + 17 = -4 (1100)
+-21 + 18 = -3 (1101)
+-21 + 19 = -2 (1110)
+-21 + 20 = -1 (1111)
+-21 + 21 = 0 (0000)
+-21 + 22 = 1 (0001)
+-21 + 23 = 2 (0010)
+-21 + 24 = 3 (0011)
+-21 + 25 = 4 (0100)
+-21 + 26 = 5 (0101)
+-21 + 27 = 6 (0110)
+-21 + 28 = 7 (0111)
+-21 + 29 = -8 (1000)
+-21 + 30 = -7 (1001)
+-21 + 31 = -6 (1010)
+-21 + -32 = -5 (1011)
+-21 + -31 = -4 (1100)
+-21 + -30 = -3 (1101)
+-21 + -29 = -2 (1110)
+-21 + -28 = -1 (1111)
+-21 + -27 = 0 (0000)
+-21 + -26 = 1 (0001)
+-21 + -25 = 2 (0010)
+-21 + -24 = 3 (0011)
+-21 + -23 = 4 (0100)
+-21 + -22 = 5 (0101)
+-21 + -21 = 6 (0110)
+-21 + -20 = 7 (0111)
+-21 + -19 = -8 (1000)
+-21 + -18 = -7 (1001)
+-21 + -17 = -6 (1010)
+-21 + -16 = -5 (1011)
+-21 + -15 = -4 (1100)
+-21 + -14 = -3 (1101)
+-21 + -13 = -2 (1110)
+-21 + -12 = -1 (1111)
+-21 + -11 = 0 (0000)
+-21 + -10 = 1 (0001)
+-21 + -9 = 2 (0010)
+-21 + -8 = 3 (0011)
+-21 + -7 = 4 (0100)
+-21 + -6 = 5 (0101)
+-21 + -5 = 6 (0110)
+-21 + -4 = 7 (0111)
+-21 + -3 = -8 (1000)
+-21 + -2 = -7 (1001)
+-21 + -1 = -6 (1010)
+-20 + 0 = -4 (1100)
+-20 + 1 = -3 (1101)
+-20 + 2 = -2 (1110)
+-20 + 3 = -1 (1111)
+-20 + 4 = 0 (0000)
+-20 + 5 = 1 (0001)
+-20 + 6 = 2 (0010)
+-20 + 7 = 3 (0011)
+-20 + 8 = 4 (0100)
+-20 + 9 = 5 (0101)
+-20 + 10 = 6 (0110)
+-20 + 11 = 7 (0111)
+-20 + 12 = -8 (1000)
+-20 + 13 = -7 (1001)
+-20 + 14 = -6 (1010)
+-20 + 15 = -5 (1011)
+-20 + 16 = -4 (1100)
+-20 + 17 = -3 (1101)
+-20 + 18 = -2 (1110)
+-20 + 19 = -1 (1111)
+-20 + 20 = 0 (0000)
+-20 + 21 = 1 (0001)
+-20 + 22 = 2 (0010)
+-20 + 23 = 3 (0011)
+-20 + 24 = 4 (0100)
+-20 + 25 = 5 (0101)
+-20 + 26 = 6 (0110)
+-20 + 27 = 7 (0111)
+-20 + 28 = -8 (1000)
+-20 + 29 = -7 (1001)
+-20 + 30 = -6 (1010)
+-20 + 31 = -5 (1011)
+-20 + -32 = -4 (1100)
+-20 + -31 = -3 (1101)
+-20 + -30 = -2 (1110)
+-20 + -29 = -1 (1111)
+-20 + -28 = 0 (0000)
+-20 + -27 = 1 (0001)
+-20 + -26 = 2 (0010)
+-20 + -25 = 3 (0011)
+-20 + -24 = 4 (0100)
+-20 + -23 = 5 (0101)
+-20 + -22 = 6 (0110)
+-20 + -21 = 7 (0111)
+-20 + -20 = -8 (1000)
+-20 + -19 = -7 (1001)
+-20 + -18 = -6 (1010)
+-20 + -17 = -5 (1011)
+-20 + -16 = -4 (1100)
+-20 + -15 = -3 (1101)
+-20 + -14 = -2 (1110)
+-20 + -13 = -1 (1111)
+-20 + -12 = 0 (0000)
+-20 + -11 = 1 (0001)
+-20 + -10 = 2 (0010)
+-20 + -9 = 3 (0011)
+-20 + -8 = 4 (0100)
+-20 + -7 = 5 (0101)
+-20 + -6 = 6 (0110)
+-20 + -5 = 7 (0111)
+-20 + -4 = -8 (1000)
+-20 + -3 = -7 (1001)
+-20 + -2 = -6 (1010)
+-20 + -1 = -5 (1011)
+-19 + 0 = -3 (1101)
+-19 + 1 = -2 (1110)
+-19 + 2 = -1 (1111)
+-19 + 3 = 0 (0000)
+-19 + 4 = 1 (0001)
+-19 + 5 = 2 (0010)
+-19 + 6 = 3 (0011)
+-19 + 7 = 4 (0100)
+-19 + 8 = 5 (0101)
+-19 + 9 = 6 (0110)
+-19 + 10 = 7 (0111)
+-19 + 11 = -8 (1000)
+-19 + 12 = -7 (1001)
+-19 + 13 = -6 (1010)
+-19 + 14 = -5 (1011)
+-19 + 15 = -4 (1100)
+-19 + 16 = -3 (1101)
+-19 + 17 = -2 (1110)
+-19 + 18 = -1 (1111)
+-19 + 19 = 0 (0000)
+-19 + 20 = 1 (0001)
+-19 + 21 = 2 (0010)
+-19 + 22 = 3 (0011)
+-19 + 23 = 4 (0100)
+-19 + 24 = 5 (0101)
+-19 + 25 = 6 (0110)
+-19 + 26 = 7 (0111)
+-19 + 27 = -8 (1000)
+-19 + 28 = -7 (1001)
+-19 + 29 = -6 (1010)
+-19 + 30 = -5 (1011)
+-19 + 31 = -4 (1100)
+-19 + -32 = -3 (1101)
+-19 + -31 = -2 (1110)
+-19 + -30 = -1 (1111)
+-19 + -29 = 0 (0000)
+-19 + -28 = 1 (0001)
+-19 + -27 = 2 (0010)
+-19 + -26 = 3 (0011)
+-19 + -25 = 4 (0100)
+-19 + -24 = 5 (0101)
+-19 + -23 = 6 (0110)
+-19 + -22 = 7 (0111)
+-19 + -21 = -8 (1000)
+-19 + -20 = -7 (1001)
+-19 + -19 = -6 (1010)
+-19 + -18 = -5 (1011)
+-19 + -17 = -4 (1100)
+-19 + -16 = -3 (1101)
+-19 + -15 = -2 (1110)
+-19 + -14 = -1 (1111)
+-19 + -13 = 0 (0000)
+-19 + -12 = 1 (0001)
+-19 + -11 = 2 (0010)
+-19 + -10 = 3 (0011)
+-19 + -9 = 4 (0100)
+-19 + -8 = 5 (0101)
+-19 + -7 = 6 (0110)
+-19 + -6 = 7 (0111)
+-19 + -5 = -8 (1000)
+-19 + -4 = -7 (1001)
+-19 + -3 = -6 (1010)
+-19 + -2 = -5 (1011)
+-19 + -1 = -4 (1100)
+-18 + 0 = -2 (1110)
+-18 + 1 = -1 (1111)
+-18 + 2 = 0 (0000)
+-18 + 3 = 1 (0001)
+-18 + 4 = 2 (0010)
+-18 + 5 = 3 (0011)
+-18 + 6 = 4 (0100)
+-18 + 7 = 5 (0101)
+-18 + 8 = 6 (0110)
+-18 + 9 = 7 (0111)
+-18 + 10 = -8 (1000)
+-18 + 11 = -7 (1001)
+-18 + 12 = -6 (1010)
+-18 + 13 = -5 (1011)
+-18 + 14 = -4 (1100)
+-18 + 15 = -3 (1101)
+-18 + 16 = -2 (1110)
+-18 + 17 = -1 (1111)
+-18 + 18 = 0 (0000)
+-18 + 19 = 1 (0001)
+-18 + 20 = 2 (0010)
+-18 + 21 = 3 (0011)
+-18 + 22 = 4 (0100)
+-18 + 23 = 5 (0101)
+-18 + 24 = 6 (0110)
+-18 + 25 = 7 (0111)
+-18 + 26 = -8 (1000)
+-18 + 27 = -7 (1001)
+-18 + 28 = -6 (1010)
+-18 + 29 = -5 (1011)
+-18 + 30 = -4 (1100)
+-18 + 31 = -3 (1101)
+-18 + -32 = -2 (1110)
+-18 + -31 = -1 (1111)
+-18 + -30 = 0 (0000)
+-18 + -29 = 1 (0001)
+-18 + -28 = 2 (0010)
+-18 + -27 = 3 (0011)
+-18 + -26 = 4 (0100)
+-18 + -25 = 5 (0101)
+-18 + -24 = 6 (0110)
+-18 + -23 = 7 (0111)
+-18 + -22 = -8 (1000)
+-18 + -21 = -7 (1001)
+-18 + -20 = -6 (1010)
+-18 + -19 = -5 (1011)
+-18 + -18 = -4 (1100)
+-18 + -17 = -3 (1101)
+-18 + -16 = -2 (1110)
+-18 + -15 = -1 (1111)
+-18 + -14 = 0 (0000)
+-18 + -13 = 1 (0001)
+-18 + -12 = 2 (0010)
+-18 + -11 = 3 (0011)
+-18 + -10 = 4 (0100)
+-18 + -9 = 5 (0101)
+-18 + -8 = 6 (0110)
+-18 + -7 = 7 (0111)
+-18 + -6 = -8 (1000)
+-18 + -5 = -7 (1001)
+-18 + -4 = -6 (1010)
+-18 + -3 = -5 (1011)
+-18 + -2 = -4 (1100)
+-18 + -1 = -3 (1101)
+-17 + 0 = -1 (1111)
+-17 + 1 = 0 (0000)
+-17 + 2 = 1 (0001)
+-17 + 3 = 2 (0010)
+-17 + 4 = 3 (0011)
+-17 + 5 = 4 (0100)
+-17 + 6 = 5 (0101)
+-17 + 7 = 6 (0110)
+-17 + 8 = 7 (0111)
+-17 + 9 = -8 (1000)
+-17 + 10 = -7 (1001)
+-17 + 11 = -6 (1010)
+-17 + 12 = -5 (1011)
+-17 + 13 = -4 (1100)
+-17 + 14 = -3 (1101)
+-17 + 15 = -2 (1110)
+-17 + 16 = -1 (1111)
+-17 + 17 = 0 (0000)
+-17 + 18 = 1 (0001)
+-17 + 19 = 2 (0010)
+-17 + 20 = 3 (0011)
+-17 + 21 = 4 (0100)
+-17 + 22 = 5 (0101)
+-17 + 23 = 6 (0110)
+-17 + 24 = 7 (0111)
+-17 + 25 = -8 (1000)
+-17 + 26 = -7 (1001)
+-17 + 27 = -6 (1010)
+-17 + 28 = -5 (1011)
+-17 + 29 = -4 (1100)
+-17 + 30 = -3 (1101)
+-17 + 31 = -2 (1110)
+-17 + -32 = -1 (1111)
+-17 + -31 = 0 (0000)
+-17 + -30 = 1 (0001)
+-17 + -29 = 2 (0010)
+-17 + -28 = 3 (0011)
+-17 + -27 = 4 (0100)
+-17 + -26 = 5 (0101)
+-17 + -25 = 6 (0110)
+-17 + -24 = 7 (0111)
+-17 + -23 = -8 (1000)
+-17 + -22 = -7 (1001)
+-17 + -21 = -6 (1010)
+-17 + -20 = -5 (1011)
+-17 + -19 = -4 (1100)
+-17 + -18 = -3 (1101)
+-17 + -17 = -2 (1110)
+-17 + -16 = -1 (1111)
+-17 + -15 = 0 (0000)
+-17 + -14 = 1 (0001)
+-17 + -13 = 2 (0010)
+-17 + -12 = 3 (0011)
+-17 + -11 = 4 (0100)
+-17 + -10 = 5 (0101)
+-17 + -9 = 6 (0110)
+-17 + -8 = 7 (0111)
+-17 + -7 = -8 (1000)
+-17 + -6 = -7 (1001)
+-17 + -5 = -6 (1010)
+-17 + -4 = -5 (1011)
+-17 + -3 = -4 (1100)
+-17 + -2 = -3 (1101)
+-17 + -1 = -2 (1110)
+-16 + 0 = 0 (0000)
+-16 + 1 = 1 (0001)
+-16 + 2 = 2 (0010)
+-16 + 3 = 3 (0011)
+-16 + 4 = 4 (0100)
+-16 + 5 = 5 (0101)
+-16 + 6 = 6 (0110)
+-16 + 7 = 7 (0111)
+-16 + 8 = -8 (1000)
+-16 + 9 = -7 (1001)
+-16 + 10 = -6 (1010)
+-16 + 11 = -5 (1011)
+-16 + 12 = -4 (1100)
+-16 + 13 = -3 (1101)
+-16 + 14 = -2 (1110)
+-16 + 15 = -1 (1111)
+-16 + 16 = 0 (0000)
+-16 + 17 = 1 (0001)
+-16 + 18 = 2 (0010)
+-16 + 19 = 3 (0011)
+-16 + 20 = 4 (0100)
+-16 + 21 = 5 (0101)
+-16 + 22 = 6 (0110)
+-16 + 23 = 7 (0111)
+-16 + 24 = -8 (1000)
+-16 + 25 = -7 (1001)
+-16 + 26 = -6 (1010)
+-16 + 27 = -5 (1011)
+-16 + 28 = -4 (1100)
+-16 + 29 = -3 (1101)
+-16 + 30 = -2 (1110)
+-16 + 31 = -1 (1111)
+-16 + -32 = 0 (0000)
+-16 + -31 = 1 (0001)
+-16 + -30 = 2 (0010)
+-16 + -29 = 3 (0011)
+-16 + -28 = 4 (0100)
+-16 + -27 = 5 (0101)
+-16 + -26 = 6 (0110)
+-16 + -25 = 7 (0111)
+-16 + -24 = -8 (1000)
+-16 + -23 = -7 (1001)
+-16 + -22 = -6 (1010)
+-16 + -21 = -5 (1011)
+-16 + -20 = -4 (1100)
+-16 + -19 = -3 (1101)
+-16 + -18 = -2 (1110)
+-16 + -17 = -1 (1111)
+-16 + -16 = 0 (0000)
+-16 + -15 = 1 (0001)
+-16 + -14 = 2 (0010)
+-16 + -13 = 3 (0011)
+-16 + -12 = 4 (0100)
+-16 + -11 = 5 (0101)
+-16 + -10 = 6 (0110)
+-16 + -9 = 7 (0111)
+-16 + -8 = -8 (1000)
+-16 + -7 = -7 (1001)
+-16 + -6 = -6 (1010)
+-16 + -5 = -5 (1011)
+-16 + -4 = -4 (1100)
+-16 + -3 = -3 (1101)
+-16 + -2 = -2 (1110)
+-16 + -1 = -1 (1111)
+-15 + 0 = 1 (0001)
+-15 + 1 = 2 (0010)
+-15 + 2 = 3 (0011)
+-15 + 3 = 4 (0100)
+-15 + 4 = 5 (0101)
+-15 + 5 = 6 (0110)
+-15 + 6 = 7 (0111)
+-15 + 7 = -8 (1000)
+-15 + 8 = -7 (1001)
+-15 + 9 = -6 (1010)
+-15 + 10 = -5 (1011)
+-15 + 11 = -4 (1100)
+-15 + 12 = -3 (1101)
+-15 + 13 = -2 (1110)
+-15 + 14 = -1 (1111)
+-15 + 15 = 0 (0000)
+-15 + 16 = 1 (0001)
+-15 + 17 = 2 (0010)
+-15 + 18 = 3 (0011)
+-15 + 19 = 4 (0100)
+-15 + 20 = 5 (0101)
+-15 + 21 = 6 (0110)
+-15 + 22 = 7 (0111)
+-15 + 23 = -8 (1000)
+-15 + 24 = -7 (1001)
+-15 + 25 = -6 (1010)
+-15 + 26 = -5 (1011)
+-15 + 27 = -4 (1100)
+-15 + 28 = -3 (1101)
+-15 + 29 = -2 (1110)
+-15 + 30 = -1 (1111)
+-15 + 31 = 0 (0000)
+-15 + -32 = 1 (0001)
+-15 + -31 = 2 (0010)
+-15 + -30 = 3 (0011)
+-15 + -29 = 4 (0100)
+-15 + -28 = 5 (0101)
+-15 + -27 = 6 (0110)
+-15 + -26 = 7 (0111)
+-15 + -25 = -8 (1000)
+-15 + -24 = -7 (1001)
+-15 + -23 = -6 (1010)
+-15 + -22 = -5 (1011)
+-15 + -21 = -4 (1100)
+-15 + -20 = -3 (1101)
+-15 + -19 = -2 (1110)
+-15 + -18 = -1 (1111)
+-15 + -17 = 0 (0000)
+-15 + -16 = 1 (0001)
+-15 + -15 = 2 (0010)
+-15 + -14 = 3 (0011)
+-15 + -13 = 4 (0100)
+-15 + -12 = 5 (0101)
+-15 + -11 = 6 (0110)
+-15 + -10 = 7 (0111)
+-15 + -9 = -8 (1000)
+-15 + -8 = -7 (1001)
+-15 + -7 = -6 (1010)
+-15 + -6 = -5 (1011)
+-15 + -5 = -4 (1100)
+-15 + -4 = -3 (1101)
+-15 + -3 = -2 (1110)
+-15 + -2 = -1 (1111)
+-15 + -1 = 0 (0000)
+-14 + 0 = 2 (0010)
+-14 + 1 = 3 (0011)
+-14 + 2 = 4 (0100)
+-14 + 3 = 5 (0101)
+-14 + 4 = 6 (0110)
+-14 + 5 = 7 (0111)
+-14 + 6 = -8 (1000)
+-14 + 7 = -7 (1001)
+-14 + 8 = -6 (1010)
+-14 + 9 = -5 (1011)
+-14 + 10 = -4 (1100)
+-14 + 11 = -3 (1101)
+-14 + 12 = -2 (1110)
+-14 + 13 = -1 (1111)
+-14 + 14 = 0 (0000)
+-14 + 15 = 1 (0001)
+-14 + 16 = 2 (0010)
+-14 + 17 = 3 (0011)
+-14 + 18 = 4 (0100)
+-14 + 19 = 5 (0101)
+-14 + 20 = 6 (0110)
+-14 + 21 = 7 (0111)
+-14 + 22 = -8 (1000)
+-14 + 23 = -7 (1001)
+-14 + 24 = -6 (1010)
+-14 + 25 = -5 (1011)
+-14 + 26 = -4 (1100)
+-14 + 27 = -3 (1101)
+-14 + 28 = -2 (1110)
+-14 + 29 = -1 (1111)
+-14 + 30 = 0 (0000)
+-14 + 31 = 1 (0001)
+-14 + -32 = 2 (0010)
+-14 + -31 = 3 (0011)
+-14 + -30 = 4 (0100)
+-14 + -29 = 5 (0101)
+-14 + -28 = 6 (0110)
+-14 + -27 = 7 (0111)
+-14 + -26 = -8 (1000)
+-14 + -25 = -7 (1001)
+-14 + -24 = -6 (1010)
+-14 + -23 = -5 (1011)
+-14 + -22 = -4 (1100)
+-14 + -21 = -3 (1101)
+-14 + -20 = -2 (1110)
+-14 + -19 = -1 (1111)
+-14 + -18 = 0 (0000)
+-14 + -17 = 1 (0001)
+-14 + -16 = 2 (0010)
+-14 + -15 = 3 (0011)
+-14 + -14 = 4 (0100)
+-14 + -13 = 5 (0101)
+-14 + -12 = 6 (0110)
+-14 + -11 = 7 (0111)
+-14 + -10 = -8 (1000)
+-14 + -9 = -7 (1001)
+-14 + -8 = -6 (1010)
+-14 + -7 = -5 (1011)
+-14 + -6 = -4 (1100)
+-14 + -5 = -3 (1101)
+-14 + -4 = -2 (1110)
+-14 + -3 = -1 (1111)
+-14 + -2 = 0 (0000)
+-14 + -1 = 1 (0001)
+-13 + 0 = 3 (0011)
+-13 + 1 = 4 (0100)
+-13 + 2 = 5 (0101)
+-13 + 3 = 6 (0110)
+-13 + 4 = 7 (0111)
+-13 + 5 = -8 (1000)
+-13 + 6 = -7 (1001)
+-13 + 7 = -6 (1010)
+-13 + 8 = -5 (1011)
+-13 + 9 = -4 (1100)
+-13 + 10 = -3 (1101)
+-13 + 11 = -2 (1110)
+-13 + 12 = -1 (1111)
+-13 + 13 = 0 (0000)
+-13 + 14 = 1 (0001)
+-13 + 15 = 2 (0010)
+-13 + 16 = 3 (0011)
+-13 + 17 = 4 (0100)
+-13 + 18 = 5 (0101)
+-13 + 19 = 6 (0110)
+-13 + 20 = 7 (0111)
+-13 + 21 = -8 (1000)
+-13 + 22 = -7 (1001)
+-13 + 23 = -6 (1010)
+-13 + 24 = -5 (1011)
+-13 + 25 = -4 (1100)
+-13 + 26 = -3 (1101)
+-13 + 27 = -2 (1110)
+-13 + 28 = -1 (1111)
+-13 + 29 = 0 (0000)
+-13 + 30 = 1 (0001)
+-13 + 31 = 2 (0010)
+-13 + -32 = 3 (0011)
+-13 + -31 = 4 (0100)
+-13 + -30 = 5 (0101)
+-13 + -29 = 6 (0110)
+-13 + -28 = 7 (0111)
+-13 + -27 = -8 (1000)
+-13 + -26 = -7 (1001)
+-13 + -25 = -6 (1010)
+-13 + -24 = -5 (1011)
+-13 + -23 = -4 (1100)
+-13 + -22 = -3 (1101)
+-13 + -21 = -2 (1110)
+-13 + -20 = -1 (1111)
+-13 + -19 = 0 (0000)
+-13 + -18 = 1 (0001)
+-13 + -17 = 2 (0010)
+-13 + -16 = 3 (0011)
+-13 + -15 = 4 (0100)
+-13 + -14 = 5 (0101)
+-13 + -13 = 6 (0110)
+-13 + -12 = 7 (0111)
+-13 + -11 = -8 (1000)
+-13 + -10 = -7 (1001)
+-13 + -9 = -6 (1010)
+-13 + -8 = -5 (1011)
+-13 + -7 = -4 (1100)
+-13 + -6 = -3 (1101)
+-13 + -5 = -2 (1110)
+-13 + -4 = -1 (1111)
+-13 + -3 = 0 (0000)
+-13 + -2 = 1 (0001)
+-13 + -1 = 2 (0010)
+-12 + 0 = 4 (0100)
+-12 + 1 = 5 (0101)
+-12 + 2 = 6 (0110)
+-12 + 3 = 7 (0111)
+-12 + 4 = -8 (1000)
+-12 + 5 = -7 (1001)
+-12 + 6 = -6 (1010)
+-12 + 7 = -5 (1011)
+-12 + 8 = -4 (1100)
+-12 + 9 = -3 (1101)
+-12 + 10 = -2 (1110)
+-12 + 11 = -1 (1111)
+-12 + 12 = 0 (0000)
+-12 + 13 = 1 (0001)
+-12 + 14 = 2 (0010)
+-12 + 15 = 3 (0011)
+-12 + 16 = 4 (0100)
+-12 + 17 = 5 (0101)
+-12 + 18 = 6 (0110)
+-12 + 19 = 7 (0111)
+-12 + 20 = -8 (1000)
+-12 + 21 = -7 (1001)
+-12 + 22 = -6 (1010)
+-12 + 23 = -5 (1011)
+-12 + 24 = -4 (1100)
+-12 + 25 = -3 (1101)
+-12 + 26 = -2 (1110)
+-12 + 27 = -1 (1111)
+-12 + 28 = 0 (0000)
+-12 + 29 = 1 (0001)
+-12 + 30 = 2 (0010)
+-12 + 31 = 3 (0011)
+-12 + -32 = 4 (0100)
+-12 + -31 = 5 (0101)
+-12 + -30 = 6 (0110)
+-12 + -29 = 7 (0111)
+-12 + -28 = -8 (1000)
+-12 + -27 = -7 (1001)
+-12 + -26 = -6 (1010)
+-12 + -25 = -5 (1011)
+-12 + -24 = -4 (1100)
+-12 + -23 = -3 (1101)
+-12 + -22 = -2 (1110)
+-12 + -21 = -1 (1111)
+-12 + -20 = 0 (0000)
+-12 + -19 = 1 (0001)
+-12 + -18 = 2 (0010)
+-12 + -17 = 3 (0011)
+-12 + -16 = 4 (0100)
+-12 + -15 = 5 (0101)
+-12 + -14 = 6 (0110)
+-12 + -13 = 7 (0111)
+-12 + -12 = -8 (1000)
+-12 + -11 = -7 (1001)
+-12 + -10 = -6 (1010)
+-12 + -9 = -5 (1011)
+-12 + -8 = -4 (1100)
+-12 + -7 = -3 (1101)
+-12 + -6 = -2 (1110)
+-12 + -5 = -1 (1111)
+-12 + -4 = 0 (0000)
+-12 + -3 = 1 (0001)
+-12 + -2 = 2 (0010)
+-12 + -1 = 3 (0011)
+-11 + 0 = 5 (0101)
+-11 + 1 = 6 (0110)
+-11 + 2 = 7 (0111)
+-11 + 3 = -8 (1000)
+-11 + 4 = -7 (1001)
+-11 + 5 = -6 (1010)
+-11 + 6 = -5 (1011)
+-11 + 7 = -4 (1100)
+-11 + 8 = -3 (1101)
+-11 + 9 = -2 (1110)
+-11 + 10 = -1 (1111)
+-11 + 11 = 0 (0000)
+-11 + 12 = 1 (0001)
+-11 + 13 = 2 (0010)
+-11 + 14 = 3 (0011)
+-11 + 15 = 4 (0100)
+-11 + 16 = 5 (0101)
+-11 + 17 = 6 (0110)
+-11 + 18 = 7 (0111)
+-11 + 19 = -8 (1000)
+-11 + 20 = -7 (1001)
+-11 + 21 = -6 (1010)
+-11 + 22 = -5 (1011)
+-11 + 23 = -4 (1100)
+-11 + 24 = -3 (1101)
+-11 + 25 = -2 (1110)
+-11 + 26 = -1 (1111)
+-11 + 27 = 0 (0000)
+-11 + 28 = 1 (0001)
+-11 + 29 = 2 (0010)
+-11 + 30 = 3 (0011)
+-11 + 31 = 4 (0100)
+-11 + -32 = 5 (0101)
+-11 + -31 = 6 (0110)
+-11 + -30 = 7 (0111)
+-11 + -29 = -8 (1000)
+-11 + -28 = -7 (1001)
+-11 + -27 = -6 (1010)
+-11 + -26 = -5 (1011)
+-11 + -25 = -4 (1100)
+-11 + -24 = -3 (1101)
+-11 + -23 = -2 (1110)
+-11 + -22 = -1 (1111)
+-11 + -21 = 0 (0000)
+-11 + -20 = 1 (0001)
+-11 + -19 = 2 (0010)
+-11 + -18 = 3 (0011)
+-11 + -17 = 4 (0100)
+-11 + -16 = 5 (0101)
+-11 + -15 = 6 (0110)
+-11 + -14 = 7 (0111)
+-11 + -13 = -8 (1000)
+-11 + -12 = -7 (1001)
+-11 + -11 = -6 (1010)
+-11 + -10 = -5 (1011)
+-11 + -9 = -4 (1100)
+-11 + -8 = -3 (1101)
+-11 + -7 = -2 (1110)
+-11 + -6 = -1 (1111)
+-11 + -5 = 0 (0000)
+-11 + -4 = 1 (0001)
+-11 + -3 = 2 (0010)
+-11 + -2 = 3 (0011)
+-11 + -1 = 4 (0100)
+-10 + 0 = 6 (0110)
+-10 + 1 = 7 (0111)
+-10 + 2 = -8 (1000)
+-10 + 3 = -7 (1001)
+-10 + 4 = -6 (1010)
+-10 + 5 = -5 (1011)
+-10 + 6 = -4 (1100)
+-10 + 7 = -3 (1101)
+-10 + 8 = -2 (1110)
+-10 + 9 = -1 (1111)
+-10 + 10 = 0 (0000)
+-10 + 11 = 1 (0001)
+-10 + 12 = 2 (0010)
+-10 + 13 = 3 (0011)
+-10 + 14 = 4 (0100)
+-10 + 15 = 5 (0101)
+-10 + 16 = 6 (0110)
+-10 + 17 = 7 (0111)
+-10 + 18 = -8 (1000)
+-10 + 19 = -7 (1001)
+-10 + 20 = -6 (1010)
+-10 + 21 = -5 (1011)
+-10 + 22 = -4 (1100)
+-10 + 23 = -3 (1101)
+-10 + 24 = -2 (1110)
+-10 + 25 = -1 (1111)
+-10 + 26 = 0 (0000)
+-10 + 27 = 1 (0001)
+-10 + 28 = 2 (0010)
+-10 + 29 = 3 (0011)
+-10 + 30 = 4 (0100)
+-10 + 31 = 5 (0101)
+-10 + -32 = 6 (0110)
+-10 + -31 = 7 (0111)
+-10 + -30 = -8 (1000)
+-10 + -29 = -7 (1001)
+-10 + -28 = -6 (1010)
+-10 + -27 = -5 (1011)
+-10 + -26 = -4 (1100)
+-10 + -25 = -3 (1101)
+-10 + -24 = -2 (1110)
+-10 + -23 = -1 (1111)
+-10 + -22 = 0 (0000)
+-10 + -21 = 1 (0001)
+-10 + -20 = 2 (0010)
+-10 + -19 = 3 (0011)
+-10 + -18 = 4 (0100)
+-10 + -17 = 5 (0101)
+-10 + -16 = 6 (0110)
+-10 + -15 = 7 (0111)
+-10 + -14 = -8 (1000)
+-10 + -13 = -7 (1001)
+-10 + -12 = -6 (1010)
+-10 + -11 = -5 (1011)
+-10 + -10 = -4 (1100)
+-10 + -9 = -3 (1101)
+-10 + -8 = -2 (1110)
+-10 + -7 = -1 (1111)
+-10 + -6 = 0 (0000)
+-10 + -5 = 1 (0001)
+-10 + -4 = 2 (0010)
+-10 + -3 = 3 (0011)
+-10 + -2 = 4 (0100)
+-10 + -1 = 5 (0101)
+-9 + 0 = 7 (0111)
+-9 + 1 = -8 (1000)
+-9 + 2 = -7 (1001)
+-9 + 3 = -6 (1010)
+-9 + 4 = -5 (1011)
+-9 + 5 = -4 (1100)
+-9 + 6 = -3 (1101)
+-9 + 7 = -2 (1110)
+-9 + 8 = -1 (1111)
+-9 + 9 = 0 (0000)
+-9 + 10 = 1 (0001)
+-9 + 11 = 2 (0010)
+-9 + 12 = 3 (0011)
+-9 + 13 = 4 (0100)
+-9 + 14 = 5 (0101)
+-9 + 15 = 6 (0110)
+-9 + 16 = 7 (0111)
+-9 + 17 = -8 (1000)
+-9 + 18 = -7 (1001)
+-9 + 19 = -6 (1010)
+-9 + 20 = -5 (1011)
+-9 + 21 = -4 (1100)
+-9 + 22 = -3 (1101)
+-9 + 23 = -2 (1110)
+-9 + 24 = -1 (1111)
+-9 + 25 = 0 (0000)
+-9 + 26 = 1 (0001)
+-9 + 27 = 2 (0010)
+-9 + 28 = 3 (0011)
+-9 + 29 = 4 (0100)
+-9 + 30 = 5 (0101)
+-9 + 31 = 6 (0110)
+-9 + -32 = 7 (0111)
+-9 + -31 = -8 (1000)
+-9 + -30 = -7 (1001)
+-9 + -29 = -6 (1010)
+-9 + -28 = -5 (1011)
+-9 + -27 = -4 (1100)
+-9 + -26 = -3 (1101)
+-9 + -25 = -2 (1110)
+-9 + -24 = -1 (1111)
+-9 + -23 = 0 (0000)
+-9 + -22 = 1 (0001)
+-9 + -21 = 2 (0010)
+-9 + -20 = 3 (0011)
+-9 + -19 = 4 (0100)
+-9 + -18 = 5 (0101)
+-9 + -17 = 6 (0110)
+-9 + -16 = 7 (0111)
+-9 + -15 = -8 (1000)
+-9 + -14 = -7 (1001)
+-9 + -13 = -6 (1010)
+-9 + -12 = -5 (1011)
+-9 + -11 = -4 (1100)
+-9 + -10 = -3 (1101)
+-9 + -9 = -2 (1110)
+-9 + -8 = -1 (1111)
+-9 + -7 = 0 (0000)
+-9 + -6 = 1 (0001)
+-9 + -5 = 2 (0010)
+-9 + -4 = 3 (0011)
+-9 + -3 = 4 (0100)
+-9 + -2 = 5 (0101)
+-9 + -1 = 6 (0110)
+-8 + 0 = -8 (1000)
+-8 + 1 = -7 (1001)
+-8 + 2 = -6 (1010)
+-8 + 3 = -5 (1011)
+-8 + 4 = -4 (1100)
+-8 + 5 = -3 (1101)
+-8 + 6 = -2 (1110)
+-8 + 7 = -1 (1111)
+-8 + 8 = 0 (0000)
+-8 + 9 = 1 (0001)
+-8 + 10 = 2 (0010)
+-8 + 11 = 3 (0011)
+-8 + 12 = 4 (0100)
+-8 + 13 = 5 (0101)
+-8 + 14 = 6 (0110)
+-8 + 15 = 7 (0111)
+-8 + 16 = -8 (1000)
+-8 + 17 = -7 (1001)
+-8 + 18 = -6 (1010)
+-8 + 19 = -5 (1011)
+-8 + 20 = -4 (1100)
+-8 + 21 = -3 (1101)
+-8 + 22 = -2 (1110)
+-8 + 23 = -1 (1111)
+-8 + 24 = 0 (0000)
+-8 + 25 = 1 (0001)
+-8 + 26 = 2 (0010)
+-8 + 27 = 3 (0011)
+-8 + 28 = 4 (0100)
+-8 + 29 = 5 (0101)
+-8 + 30 = 6 (0110)
+-8 + 31 = 7 (0111)
+-8 + -32 = -8 (1000)
+-8 + -31 = -7 (1001)
+-8 + -30 = -6 (1010)
+-8 + -29 = -5 (1011)
+-8 + -28 = -4 (1100)
+-8 + -27 = -3 (1101)
+-8 + -26 = -2 (1110)
+-8 + -25 = -1 (1111)
+-8 + -24 = 0 (0000)
+-8 + -23 = 1 (0001)
+-8 + -22 = 2 (0010)
+-8 + -21 = 3 (0011)
+-8 + -20 = 4 (0100)
+-8 + -19 = 5 (0101)
+-8 + -18 = 6 (0110)
+-8 + -17 = 7 (0111)
+-8 + -16 = -8 (1000)
+-8 + -15 = -7 (1001)
+-8 + -14 = -6 (1010)
+-8 + -13 = -5 (1011)
+-8 + -12 = -4 (1100)
+-8 + -11 = -3 (1101)
+-8 + -10 = -2 (1110)
+-8 + -9 = -1 (1111)
+-8 + -8 = 0 (0000)
+-8 + -7 = 1 (0001)
+-8 + -6 = 2 (0010)
+-8 + -5 = 3 (0011)
+-8 + -4 = 4 (0100)
+-8 + -3 = 5 (0101)
+-8 + -2 = 6 (0110)
+-8 + -1 = 7 (0111)
+-7 + 0 = -7 (1001)
+-7 + 1 = -6 (1010)
+-7 + 2 = -5 (1011)
+-7 + 3 = -4 (1100)
+-7 + 4 = -3 (1101)
+-7 + 5 = -2 (1110)
+-7 + 6 = -1 (1111)
+-7 + 7 = 0 (0000)
+-7 + 8 = 1 (0001)
+-7 + 9 = 2 (0010)
+-7 + 10 = 3 (0011)
+-7 + 11 = 4 (0100)
+-7 + 12 = 5 (0101)
+-7 + 13 = 6 (0110)
+-7 + 14 = 7 (0111)
+-7 + 15 = -8 (1000)
+-7 + 16 = -7 (1001)
+-7 + 17 = -6 (1010)
+-7 + 18 = -5 (1011)
+-7 + 19 = -4 (1100)
+-7 + 20 = -3 (1101)
+-7 + 21 = -2 (1110)
+-7 + 22 = -1 (1111)
+-7 + 23 = 0 (0000)
+-7 + 24 = 1 (0001)
+-7 + 25 = 2 (0010)
+-7 + 26 = 3 (0011)
+-7 + 27 = 4 (0100)
+-7 + 28 = 5 (0101)
+-7 + 29 = 6 (0110)
+-7 + 30 = 7 (0111)
+-7 + 31 = -8 (1000)
+-7 + -32 = -7 (1001)
+-7 + -31 = -6 (1010)
+-7 + -30 = -5 (1011)
+-7 + -29 = -4 (1100)
+-7 + -28 = -3 (1101)
+-7 + -27 = -2 (1110)
+-7 + -26 = -1 (1111)
+-7 + -25 = 0 (0000)
+-7 + -24 = 1 (0001)
+-7 + -23 = 2 (0010)
+-7 + -22 = 3 (0011)
+-7 + -21 = 4 (0100)
+-7 + -20 = 5 (0101)
+-7 + -19 = 6 (0110)
+-7 + -18 = 7 (0111)
+-7 + -17 = -8 (1000)
+-7 + -16 = -7 (1001)
+-7 + -15 = -6 (1010)
+-7 + -14 = -5 (1011)
+-7 + -13 = -4 (1100)
+-7 + -12 = -3 (1101)
+-7 + -11 = -2 (1110)
+-7 + -10 = -1 (1111)
+-7 + -9 = 0 (0000)
+-7 + -8 = 1 (0001)
+-7 + -7 = 2 (0010)
+-7 + -6 = 3 (0011)
+-7 + -5 = 4 (0100)
+-7 + -4 = 5 (0101)
+-7 + -3 = 6 (0110)
+-7 + -2 = 7 (0111)
+-7 + -1 = -8 (1000)
+-6 + 0 = -6 (1010)
+-6 + 1 = -5 (1011)
+-6 + 2 = -4 (1100)
+-6 + 3 = -3 (1101)
+-6 + 4 = -2 (1110)
+-6 + 5 = -1 (1111)
+-6 + 6 = 0 (0000)
+-6 + 7 = 1 (0001)
+-6 + 8 = 2 (0010)
+-6 + 9 = 3 (0011)
+-6 + 10 = 4 (0100)
+-6 + 11 = 5 (0101)
+-6 + 12 = 6 (0110)
+-6 + 13 = 7 (0111)
+-6 + 14 = -8 (1000)
+-6 + 15 = -7 (1001)
+-6 + 16 = -6 (1010)
+-6 + 17 = -5 (1011)
+-6 + 18 = -4 (1100)
+-6 + 19 = -3 (1101)
+-6 + 20 = -2 (1110)
+-6 + 21 = -1 (1111)
+-6 + 22 = 0 (0000)
+-6 + 23 = 1 (0001)
+-6 + 24 = 2 (0010)
+-6 + 25 = 3 (0011)
+-6 + 26 = 4 (0100)
+-6 + 27 = 5 (0101)
+-6 + 28 = 6 (0110)
+-6 + 29 = 7 (0111)
+-6 + 30 = -8 (1000)
+-6 + 31 = -7 (1001)
+-6 + -32 = -6 (1010)
+-6 + -31 = -5 (1011)
+-6 + -30 = -4 (1100)
+-6 + -29 = -3 (1101)
+-6 + -28 = -2 (1110)
+-6 + -27 = -1 (1111)
+-6 + -26 = 0 (0000)
+-6 + -25 = 1 (0001)
+-6 + -24 = 2 (0010)
+-6 + -23 = 3 (0011)
+-6 + -22 = 4 (0100)
+-6 + -21 = 5 (0101)
+-6 + -20 = 6 (0110)
+-6 + -19 = 7 (0111)
+-6 + -18 = -8 (1000)
+-6 + -17 = -7 (1001)
+-6 + -16 = -6 (1010)
+-6 + -15 = -5 (1011)
+-6 + -14 = -4 (1100)
+-6 + -13 = -3 (1101)
+-6 + -12 = -2 (1110)
+-6 + -11 = -1 (1111)
+-6 + -10 = 0 (0000)
+-6 + -9 = 1 (0001)
+-6 + -8 = 2 (0010)
+-6 + -7 = 3 (0011)
+-6 + -6 = 4 (0100)
+-6 + -5 = 5 (0101)
+-6 + -4 = 6 (0110)
+-6 + -3 = 7 (0111)
+-6 + -2 = -8 (1000)
+-6 + -1 = -7 (1001)
+-5 + 0 = -5 (1011)
+-5 + 1 = -4 (1100)
+-5 + 2 = -3 (1101)
+-5 + 3 = -2 (1110)
+-5 + 4 = -1 (1111)
+-5 + 5 = 0 (0000)
+-5 + 6 = 1 (0001)
+-5 + 7 = 2 (0010)
+-5 + 8 = 3 (0011)
+-5 + 9 = 4 (0100)
+-5 + 10 = 5 (0101)
+-5 + 11 = 6 (0110)
+-5 + 12 = 7 (0111)
+-5 + 13 = -8 (1000)
+-5 + 14 = -7 (1001)
+-5 + 15 = -6 (1010)
+-5 + 16 = -5 (1011)
+-5 + 17 = -4 (1100)
+-5 + 18 = -3 (1101)
+-5 + 19 = -2 (1110)
+-5 + 20 = -1 (1111)
+-5 + 21 = 0 (0000)
+-5 + 22 = 1 (0001)
+-5 + 23 = 2 (0010)
+-5 + 24 = 3 (0011)
+-5 + 25 = 4 (0100)
+-5 + 26 = 5 (0101)
+-5 + 27 = 6 (0110)
+-5 + 28 = 7 (0111)
+-5 + 29 = -8 (1000)
+-5 + 30 = -7 (1001)
+-5 + 31 = -6 (1010)
+-5 + -32 = -5 (1011)
+-5 + -31 = -4 (1100)
+-5 + -30 = -3 (1101)
+-5 + -29 = -2 (1110)
+-5 + -28 = -1 (1111)
+-5 + -27 = 0 (0000)
+-5 + -26 = 1 (0001)
+-5 + -25 = 2 (0010)
+-5 + -24 = 3 (0011)
+-5 + -23 = 4 (0100)
+-5 + -22 = 5 (0101)
+-5 + -21 = 6 (0110)
+-5 + -20 = 7 (0111)
+-5 + -19 = -8 (1000)
+-5 + -18 = -7 (1001)
+-5 + -17 = -6 (1010)
+-5 + -16 = -5 (1011)
+-5 + -15 = -4 (1100)
+-5 + -14 = -3 (1101)
+-5 + -13 = -2 (1110)
+-5 + -12 = -1 (1111)
+-5 + -11 = 0 (0000)
+-5 + -10 = 1 (0001)
+-5 + -9 = 2 (0010)
+-5 + -8 = 3 (0011)
+-5 + -7 = 4 (0100)
+-5 + -6 = 5 (0101)
+-5 + -5 = 6 (0110)
+-5 + -4 = 7 (0111)
+-5 + -3 = -8 (1000)
+-5 + -2 = -7 (1001)
+-5 + -1 = -6 (1010)
+-4 + 0 = -4 (1100)
+-4 + 1 = -3 (1101)
+-4 + 2 = -2 (1110)
+-4 + 3 = -1 (1111)
+-4 + 4 = 0 (0000)
+-4 + 5 = 1 (0001)
+-4 + 6 = 2 (0010)
+-4 + 7 = 3 (0011)
+-4 + 8 = 4 (0100)
+-4 + 9 = 5 (0101)
+-4 + 10 = 6 (0110)
+-4 + 11 = 7 (0111)
+-4 + 12 = -8 (1000)
+-4 + 13 = -7 (1001)
+-4 + 14 = -6 (1010)
+-4 + 15 = -5 (1011)
+-4 + 16 = -4 (1100)
+-4 + 17 = -3 (1101)
+-4 + 18 = -2 (1110)
+-4 + 19 = -1 (1111)
+-4 + 20 = 0 (0000)
+-4 + 21 = 1 (0001)
+-4 + 22 = 2 (0010)
+-4 + 23 = 3 (0011)
+-4 + 24 = 4 (0100)
+-4 + 25 = 5 (0101)
+-4 + 26 = 6 (0110)
+-4 + 27 = 7 (0111)
+-4 + 28 = -8 (1000)
+-4 + 29 = -7 (1001)
+-4 + 30 = -6 (1010)
+-4 + 31 = -5 (1011)
+-4 + -32 = -4 (1100)
+-4 + -31 = -3 (1101)
+-4 + -30 = -2 (1110)
+-4 + -29 = -1 (1111)
+-4 + -28 = 0 (0000)
+-4 + -27 = 1 (0001)
+-4 + -26 = 2 (0010)
+-4 + -25 = 3 (0011)
+-4 + -24 = 4 (0100)
+-4 + -23 = 5 (0101)
+-4 + -22 = 6 (0110)
+-4 + -21 = 7 (0111)
+-4 + -20 = -8 (1000)
+-4 + -19 = -7 (1001)
+-4 + -18 = -6 (1010)
+-4 + -17 = -5 (1011)
+-4 + -16 = -4 (1100)
+-4 + -15 = -3 (1101)
+-4 + -14 = -2 (1110)
+-4 + -13 = -1 (1111)
+-4 + -12 = 0 (0000)
+-4 + -11 = 1 (0001)
+-4 + -10 = 2 (0010)
+-4 + -9 = 3 (0011)
+-4 + -8 = 4 (0100)
+-4 + -7 = 5 (0101)
+-4 + -6 = 6 (0110)
+-4 + -5 = 7 (0111)
+-4 + -4 = -8 (1000)
+-4 + -3 = -7 (1001)
+-4 + -2 = -6 (1010)
+-4 + -1 = -5 (1011)
+-3 + 0 = -3 (1101)
+-3 + 1 = -2 (1110)
+-3 + 2 = -1 (1111)
+-3 + 3 = 0 (0000)
+-3 + 4 = 1 (0001)
+-3 + 5 = 2 (0010)
+-3 + 6 = 3 (0011)
+-3 + 7 = 4 (0100)
+-3 + 8 = 5 (0101)
+-3 + 9 = 6 (0110)
+-3 + 10 = 7 (0111)
+-3 + 11 = -8 (1000)
+-3 + 12 = -7 (1001)
+-3 + 13 = -6 (1010)
+-3 + 14 = -5 (1011)
+-3 + 15 = -4 (1100)
+-3 + 16 = -3 (1101)
+-3 + 17 = -2 (1110)
+-3 + 18 = -1 (1111)
+-3 + 19 = 0 (0000)
+-3 + 20 = 1 (0001)
+-3 + 21 = 2 (0010)
+-3 + 22 = 3 (0011)
+-3 + 23 = 4 (0100)
+-3 + 24 = 5 (0101)
+-3 + 25 = 6 (0110)
+-3 + 26 = 7 (0111)
+-3 + 27 = -8 (1000)
+-3 + 28 = -7 (1001)
+-3 + 29 = -6 (1010)
+-3 + 30 = -5 (1011)
+-3 + 31 = -4 (1100)
+-3 + -32 = -3 (1101)
+-3 + -31 = -2 (1110)
+-3 + -30 = -1 (1111)
+-3 + -29 = 0 (0000)
+-3 + -28 = 1 (0001)
+-3 + -27 = 2 (0010)
+-3 + -26 = 3 (0011)
+-3 + -25 = 4 (0100)
+-3 + -24 = 5 (0101)
+-3 + -23 = 6 (0110)
+-3 + -22 = 7 (0111)
+-3 + -21 = -8 (1000)
+-3 + -20 = -7 (1001)
+-3 + -19 = -6 (1010)
+-3 + -18 = -5 (1011)
+-3 + -17 = -4 (1100)
+-3 + -16 = -3 (1101)
+-3 + -15 = -2 (1110)
+-3 + -14 = -1 (1111)
+-3 + -13 = 0 (0000)
+-3 + -12 = 1 (0001)
+-3 + -11 = 2 (0010)
+-3 + -10 = 3 (0011)
+-3 + -9 = 4 (0100)
+-3 + -8 = 5 (0101)
+-3 + -7 = 6 (0110)
+-3 + -6 = 7 (0111)
+-3 + -5 = -8 (1000)
+-3 + -4 = -7 (1001)
+-3 + -3 = -6 (1010)
+-3 + -2 = -5 (1011)
+-3 + -1 = -4 (1100)
+-2 + 0 = -2 (1110)
+-2 + 1 = -1 (1111)
+-2 + 2 = 0 (0000)
+-2 + 3 = 1 (0001)
+-2 + 4 = 2 (0010)
+-2 + 5 = 3 (0011)
+-2 + 6 = 4 (0100)
+-2 + 7 = 5 (0101)
+-2 + 8 = 6 (0110)
+-2 + 9 = 7 (0111)
+-2 + 10 = -8 (1000)
+-2 + 11 = -7 (1001)
+-2 + 12 = -6 (1010)
+-2 + 13 = -5 (1011)
+-2 + 14 = -4 (1100)
+-2 + 15 = -3 (1101)
+-2 + 16 = -2 (1110)
+-2 + 17 = -1 (1111)
+-2 + 18 = 0 (0000)
+-2 + 19 = 1 (0001)
+-2 + 20 = 2 (0010)
+-2 + 21 = 3 (0011)
+-2 + 22 = 4 (0100)
+-2 + 23 = 5 (0101)
+-2 + 24 = 6 (0110)
+-2 + 25 = 7 (0111)
+-2 + 26 = -8 (1000)
+-2 + 27 = -7 (1001)
+-2 + 28 = -6 (1010)
+-2 + 29 = -5 (1011)
+-2 + 30 = -4 (1100)
+-2 + 31 = -3 (1101)
+-2 + -32 = -2 (1110)
+-2 + -31 = -1 (1111)
+-2 + -30 = 0 (0000)
+-2 + -29 = 1 (0001)
+-2 + -28 = 2 (0010)
+-2 + -27 = 3 (0011)
+-2 + -26 = 4 (0100)
+-2 + -25 = 5 (0101)
+-2 + -24 = 6 (0110)
+-2 + -23 = 7 (0111)
+-2 + -22 = -8 (1000)
+-2 + -21 = -7 (1001)
+-2 + -20 = -6 (1010)
+-2 + -19 = -5 (1011)
+-2 + -18 = -4 (1100)
+-2 + -17 = -3 (1101)
+-2 + -16 = -2 (1110)
+-2 + -15 = -1 (1111)
+-2 + -14 = 0 (0000)
+-2 + -13 = 1 (0001)
+-2 + -12 = 2 (0010)
+-2 + -11 = 3 (0011)
+-2 + -10 = 4 (0100)
+-2 + -9 = 5 (0101)
+-2 + -8 = 6 (0110)
+-2 + -7 = 7 (0111)
+-2 + -6 = -8 (1000)
+-2 + -5 = -7 (1001)
+-2 + -4 = -6 (1010)
+-2 + -3 = -5 (1011)
+-2 + -2 = -4 (1100)
+-2 + -1 = -3 (1101)
+-1 + 0 = -1 (1111)
+-1 + 1 = 0 (0000)
+-1 + 2 = 1 (0001)
+-1 + 3 = 2 (0010)
+-1 + 4 = 3 (0011)
+-1 + 5 = 4 (0100)
+-1 + 6 = 5 (0101)
+-1 + 7 = 6 (0110)
+-1 + 8 = 7 (0111)
+-1 + 9 = -8 (1000)
+-1 + 10 = -7 (1001)
+-1 + 11 = -6 (1010)
+-1 + 12 = -5 (1011)
+-1 + 13 = -4 (1100)
+-1 + 14 = -3 (1101)
+-1 + 15 = -2 (1110)
+-1 + 16 = -1 (1111)
+-1 + 17 = 0 (0000)
+-1 + 18 = 1 (0001)
+-1 + 19 = 2 (0010)
+-1 + 20 = 3 (0011)
+-1 + 21 = 4 (0100)
+-1 + 22 = 5 (0101)
+-1 + 23 = 6 (0110)
+-1 + 24 = 7 (0111)
+-1 + 25 = -8 (1000)
+-1 + 26 = -7 (1001)
+-1 + 27 = -6 (1010)
+-1 + 28 = -5 (1011)
+-1 + 29 = -4 (1100)
+-1 + 30 = -3 (1101)
+-1 + 31 = -2 (1110)
+-1 + -32 = -1 (1111)
+-1 + -31 = 0 (0000)
+-1 + -30 = 1 (0001)
+-1 + -29 = 2 (0010)
+-1 + -28 = 3 (0011)
+-1 + -27 = 4 (0100)
+-1 + -26 = 5 (0101)
+-1 + -25 = 6 (0110)
+-1 + -24 = 7 (0111)
+-1 + -23 = -8 (1000)
+-1 + -22 = -7 (1001)
+-1 + -21 = -6 (1010)
+-1 + -20 = -5 (1011)
+-1 + -19 = -4 (1100)
+-1 + -18 = -3 (1101)
+-1 + -17 = -2 (1110)
+-1 + -16 = -1 (1111)
+-1 + -15 = 0 (0000)
+-1 + -14 = 1 (0001)
+-1 + -13 = 2 (0010)
+-1 + -12 = 3 (0011)
+-1 + -11 = 4 (0100)
+-1 + -10 = 5 (0101)
+-1 + -9 = 6 (0110)
+-1 + -8 = 7 (0111)
+-1 + -7 = -8 (1000)
+-1 + -6 = -7 (1001)
+-1 + -5 = -6 (1010)
+-1 + -4 = -5 (1011)
+-1 + -3 = -4 (1100)
+-1 + -2 = -3 (1101)
+-1 + -1 = -2 (1110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/main.cpp
new file mode 100644
index 000000000..a7b21a2e2
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 4-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 4;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector4 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/stimgen.cpp
new file mode 100644
index 000000000..9a98bd4a9
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_int() << " + " << in2.read().to_int()
+ << " = " << result.read().to_int()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/stimgen.h
new file mode 100644
index 000000000..5a95ce7a8
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/truncation.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/truncation.f
new file mode 100644
index 000000000..d35040a90
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_signed/truncation/truncation.f
@@ -0,0 +1,3 @@
+truncation/datawidth.cpp
+truncation/stimgen.cpp
+truncation/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/README b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/README
new file mode 100644
index 000000000..6d77c7cbb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/README
@@ -0,0 +1,9 @@
+bits_to_bits 7-bit = 6-bit + 6-bit
+lost_carry 6-bit = 6-bit + 6-bit
+extension 9-bit = 6-bit + 6-bit
+truncation 4-bit = 6-bit + 6-bit
+
+promote 7-bit = 4-bit + 6-bit
+promote_lost_carry 6-bit = 4-bit + 6-bit
+promote_extension 9-bit = 4-bit + 6-bit
+promote_truncation 4-bit = 4-bit + 6-bit
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/bits_to_bits.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/bits_to_bits.f
new file mode 100644
index 000000000..9fcbb2977
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/bits_to_bits.f
@@ -0,0 +1,3 @@
+bits_to_bits/datawidth.cpp
+bits_to_bits/stimgen.cpp
+bits_to_bits/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/common.h
new file mode 100644
index 000000000..d0b50248c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+typedef sc_signal<sc_bv<7> > signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/datawidth.h
new file mode 100644
index 000000000..df7ca5b2e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector7& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector7& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/golden/bits_to_bits.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/golden/bits_to_bits.log
new file mode 100644
index 000000000..c41483f55
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/golden/bits_to_bits.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+16 + 0 = 16 (0010000)
+16 + 1 = 17 (0010001)
+16 + 2 = 18 (0010010)
+16 + 3 = 19 (0010011)
+16 + 4 = 20 (0010100)
+16 + 5 = 21 (0010101)
+16 + 6 = 22 (0010110)
+16 + 7 = 23 (0010111)
+16 + 8 = 24 (0011000)
+16 + 9 = 25 (0011001)
+16 + 10 = 26 (0011010)
+16 + 11 = 27 (0011011)
+16 + 12 = 28 (0011100)
+16 + 13 = 29 (0011101)
+16 + 14 = 30 (0011110)
+16 + 15 = 31 (0011111)
+16 + 16 = 32 (0100000)
+16 + 17 = 33 (0100001)
+16 + 18 = 34 (0100010)
+16 + 19 = 35 (0100011)
+16 + 20 = 36 (0100100)
+16 + 21 = 37 (0100101)
+16 + 22 = 38 (0100110)
+16 + 23 = 39 (0100111)
+16 + 24 = 40 (0101000)
+16 + 25 = 41 (0101001)
+16 + 26 = 42 (0101010)
+16 + 27 = 43 (0101011)
+16 + 28 = 44 (0101100)
+16 + 29 = 45 (0101101)
+16 + 30 = 46 (0101110)
+16 + 31 = 47 (0101111)
+16 + 32 = 48 (0110000)
+16 + 33 = 49 (0110001)
+16 + 34 = 50 (0110010)
+16 + 35 = 51 (0110011)
+16 + 36 = 52 (0110100)
+16 + 37 = 53 (0110101)
+16 + 38 = 54 (0110110)
+16 + 39 = 55 (0110111)
+16 + 40 = 56 (0111000)
+16 + 41 = 57 (0111001)
+16 + 42 = 58 (0111010)
+16 + 43 = 59 (0111011)
+16 + 44 = 60 (0111100)
+16 + 45 = 61 (0111101)
+16 + 46 = 62 (0111110)
+16 + 47 = 63 (0111111)
+16 + 48 = 64 (1000000)
+16 + 49 = 65 (1000001)
+16 + 50 = 66 (1000010)
+16 + 51 = 67 (1000011)
+16 + 52 = 68 (1000100)
+16 + 53 = 69 (1000101)
+16 + 54 = 70 (1000110)
+16 + 55 = 71 (1000111)
+16 + 56 = 72 (1001000)
+16 + 57 = 73 (1001001)
+16 + 58 = 74 (1001010)
+16 + 59 = 75 (1001011)
+16 + 60 = 76 (1001100)
+16 + 61 = 77 (1001101)
+16 + 62 = 78 (1001110)
+16 + 63 = 79 (1001111)
+17 + 0 = 17 (0010001)
+17 + 1 = 18 (0010010)
+17 + 2 = 19 (0010011)
+17 + 3 = 20 (0010100)
+17 + 4 = 21 (0010101)
+17 + 5 = 22 (0010110)
+17 + 6 = 23 (0010111)
+17 + 7 = 24 (0011000)
+17 + 8 = 25 (0011001)
+17 + 9 = 26 (0011010)
+17 + 10 = 27 (0011011)
+17 + 11 = 28 (0011100)
+17 + 12 = 29 (0011101)
+17 + 13 = 30 (0011110)
+17 + 14 = 31 (0011111)
+17 + 15 = 32 (0100000)
+17 + 16 = 33 (0100001)
+17 + 17 = 34 (0100010)
+17 + 18 = 35 (0100011)
+17 + 19 = 36 (0100100)
+17 + 20 = 37 (0100101)
+17 + 21 = 38 (0100110)
+17 + 22 = 39 (0100111)
+17 + 23 = 40 (0101000)
+17 + 24 = 41 (0101001)
+17 + 25 = 42 (0101010)
+17 + 26 = 43 (0101011)
+17 + 27 = 44 (0101100)
+17 + 28 = 45 (0101101)
+17 + 29 = 46 (0101110)
+17 + 30 = 47 (0101111)
+17 + 31 = 48 (0110000)
+17 + 32 = 49 (0110001)
+17 + 33 = 50 (0110010)
+17 + 34 = 51 (0110011)
+17 + 35 = 52 (0110100)
+17 + 36 = 53 (0110101)
+17 + 37 = 54 (0110110)
+17 + 38 = 55 (0110111)
+17 + 39 = 56 (0111000)
+17 + 40 = 57 (0111001)
+17 + 41 = 58 (0111010)
+17 + 42 = 59 (0111011)
+17 + 43 = 60 (0111100)
+17 + 44 = 61 (0111101)
+17 + 45 = 62 (0111110)
+17 + 46 = 63 (0111111)
+17 + 47 = 64 (1000000)
+17 + 48 = 65 (1000001)
+17 + 49 = 66 (1000010)
+17 + 50 = 67 (1000011)
+17 + 51 = 68 (1000100)
+17 + 52 = 69 (1000101)
+17 + 53 = 70 (1000110)
+17 + 54 = 71 (1000111)
+17 + 55 = 72 (1001000)
+17 + 56 = 73 (1001001)
+17 + 57 = 74 (1001010)
+17 + 58 = 75 (1001011)
+17 + 59 = 76 (1001100)
+17 + 60 = 77 (1001101)
+17 + 61 = 78 (1001110)
+17 + 62 = 79 (1001111)
+17 + 63 = 80 (1010000)
+18 + 0 = 18 (0010010)
+18 + 1 = 19 (0010011)
+18 + 2 = 20 (0010100)
+18 + 3 = 21 (0010101)
+18 + 4 = 22 (0010110)
+18 + 5 = 23 (0010111)
+18 + 6 = 24 (0011000)
+18 + 7 = 25 (0011001)
+18 + 8 = 26 (0011010)
+18 + 9 = 27 (0011011)
+18 + 10 = 28 (0011100)
+18 + 11 = 29 (0011101)
+18 + 12 = 30 (0011110)
+18 + 13 = 31 (0011111)
+18 + 14 = 32 (0100000)
+18 + 15 = 33 (0100001)
+18 + 16 = 34 (0100010)
+18 + 17 = 35 (0100011)
+18 + 18 = 36 (0100100)
+18 + 19 = 37 (0100101)
+18 + 20 = 38 (0100110)
+18 + 21 = 39 (0100111)
+18 + 22 = 40 (0101000)
+18 + 23 = 41 (0101001)
+18 + 24 = 42 (0101010)
+18 + 25 = 43 (0101011)
+18 + 26 = 44 (0101100)
+18 + 27 = 45 (0101101)
+18 + 28 = 46 (0101110)
+18 + 29 = 47 (0101111)
+18 + 30 = 48 (0110000)
+18 + 31 = 49 (0110001)
+18 + 32 = 50 (0110010)
+18 + 33 = 51 (0110011)
+18 + 34 = 52 (0110100)
+18 + 35 = 53 (0110101)
+18 + 36 = 54 (0110110)
+18 + 37 = 55 (0110111)
+18 + 38 = 56 (0111000)
+18 + 39 = 57 (0111001)
+18 + 40 = 58 (0111010)
+18 + 41 = 59 (0111011)
+18 + 42 = 60 (0111100)
+18 + 43 = 61 (0111101)
+18 + 44 = 62 (0111110)
+18 + 45 = 63 (0111111)
+18 + 46 = 64 (1000000)
+18 + 47 = 65 (1000001)
+18 + 48 = 66 (1000010)
+18 + 49 = 67 (1000011)
+18 + 50 = 68 (1000100)
+18 + 51 = 69 (1000101)
+18 + 52 = 70 (1000110)
+18 + 53 = 71 (1000111)
+18 + 54 = 72 (1001000)
+18 + 55 = 73 (1001001)
+18 + 56 = 74 (1001010)
+18 + 57 = 75 (1001011)
+18 + 58 = 76 (1001100)
+18 + 59 = 77 (1001101)
+18 + 60 = 78 (1001110)
+18 + 61 = 79 (1001111)
+18 + 62 = 80 (1010000)
+18 + 63 = 81 (1010001)
+19 + 0 = 19 (0010011)
+19 + 1 = 20 (0010100)
+19 + 2 = 21 (0010101)
+19 + 3 = 22 (0010110)
+19 + 4 = 23 (0010111)
+19 + 5 = 24 (0011000)
+19 + 6 = 25 (0011001)
+19 + 7 = 26 (0011010)
+19 + 8 = 27 (0011011)
+19 + 9 = 28 (0011100)
+19 + 10 = 29 (0011101)
+19 + 11 = 30 (0011110)
+19 + 12 = 31 (0011111)
+19 + 13 = 32 (0100000)
+19 + 14 = 33 (0100001)
+19 + 15 = 34 (0100010)
+19 + 16 = 35 (0100011)
+19 + 17 = 36 (0100100)
+19 + 18 = 37 (0100101)
+19 + 19 = 38 (0100110)
+19 + 20 = 39 (0100111)
+19 + 21 = 40 (0101000)
+19 + 22 = 41 (0101001)
+19 + 23 = 42 (0101010)
+19 + 24 = 43 (0101011)
+19 + 25 = 44 (0101100)
+19 + 26 = 45 (0101101)
+19 + 27 = 46 (0101110)
+19 + 28 = 47 (0101111)
+19 + 29 = 48 (0110000)
+19 + 30 = 49 (0110001)
+19 + 31 = 50 (0110010)
+19 + 32 = 51 (0110011)
+19 + 33 = 52 (0110100)
+19 + 34 = 53 (0110101)
+19 + 35 = 54 (0110110)
+19 + 36 = 55 (0110111)
+19 + 37 = 56 (0111000)
+19 + 38 = 57 (0111001)
+19 + 39 = 58 (0111010)
+19 + 40 = 59 (0111011)
+19 + 41 = 60 (0111100)
+19 + 42 = 61 (0111101)
+19 + 43 = 62 (0111110)
+19 + 44 = 63 (0111111)
+19 + 45 = 64 (1000000)
+19 + 46 = 65 (1000001)
+19 + 47 = 66 (1000010)
+19 + 48 = 67 (1000011)
+19 + 49 = 68 (1000100)
+19 + 50 = 69 (1000101)
+19 + 51 = 70 (1000110)
+19 + 52 = 71 (1000111)
+19 + 53 = 72 (1001000)
+19 + 54 = 73 (1001001)
+19 + 55 = 74 (1001010)
+19 + 56 = 75 (1001011)
+19 + 57 = 76 (1001100)
+19 + 58 = 77 (1001101)
+19 + 59 = 78 (1001110)
+19 + 60 = 79 (1001111)
+19 + 61 = 80 (1010000)
+19 + 62 = 81 (1010001)
+19 + 63 = 82 (1010010)
+20 + 0 = 20 (0010100)
+20 + 1 = 21 (0010101)
+20 + 2 = 22 (0010110)
+20 + 3 = 23 (0010111)
+20 + 4 = 24 (0011000)
+20 + 5 = 25 (0011001)
+20 + 6 = 26 (0011010)
+20 + 7 = 27 (0011011)
+20 + 8 = 28 (0011100)
+20 + 9 = 29 (0011101)
+20 + 10 = 30 (0011110)
+20 + 11 = 31 (0011111)
+20 + 12 = 32 (0100000)
+20 + 13 = 33 (0100001)
+20 + 14 = 34 (0100010)
+20 + 15 = 35 (0100011)
+20 + 16 = 36 (0100100)
+20 + 17 = 37 (0100101)
+20 + 18 = 38 (0100110)
+20 + 19 = 39 (0100111)
+20 + 20 = 40 (0101000)
+20 + 21 = 41 (0101001)
+20 + 22 = 42 (0101010)
+20 + 23 = 43 (0101011)
+20 + 24 = 44 (0101100)
+20 + 25 = 45 (0101101)
+20 + 26 = 46 (0101110)
+20 + 27 = 47 (0101111)
+20 + 28 = 48 (0110000)
+20 + 29 = 49 (0110001)
+20 + 30 = 50 (0110010)
+20 + 31 = 51 (0110011)
+20 + 32 = 52 (0110100)
+20 + 33 = 53 (0110101)
+20 + 34 = 54 (0110110)
+20 + 35 = 55 (0110111)
+20 + 36 = 56 (0111000)
+20 + 37 = 57 (0111001)
+20 + 38 = 58 (0111010)
+20 + 39 = 59 (0111011)
+20 + 40 = 60 (0111100)
+20 + 41 = 61 (0111101)
+20 + 42 = 62 (0111110)
+20 + 43 = 63 (0111111)
+20 + 44 = 64 (1000000)
+20 + 45 = 65 (1000001)
+20 + 46 = 66 (1000010)
+20 + 47 = 67 (1000011)
+20 + 48 = 68 (1000100)
+20 + 49 = 69 (1000101)
+20 + 50 = 70 (1000110)
+20 + 51 = 71 (1000111)
+20 + 52 = 72 (1001000)
+20 + 53 = 73 (1001001)
+20 + 54 = 74 (1001010)
+20 + 55 = 75 (1001011)
+20 + 56 = 76 (1001100)
+20 + 57 = 77 (1001101)
+20 + 58 = 78 (1001110)
+20 + 59 = 79 (1001111)
+20 + 60 = 80 (1010000)
+20 + 61 = 81 (1010001)
+20 + 62 = 82 (1010010)
+20 + 63 = 83 (1010011)
+21 + 0 = 21 (0010101)
+21 + 1 = 22 (0010110)
+21 + 2 = 23 (0010111)
+21 + 3 = 24 (0011000)
+21 + 4 = 25 (0011001)
+21 + 5 = 26 (0011010)
+21 + 6 = 27 (0011011)
+21 + 7 = 28 (0011100)
+21 + 8 = 29 (0011101)
+21 + 9 = 30 (0011110)
+21 + 10 = 31 (0011111)
+21 + 11 = 32 (0100000)
+21 + 12 = 33 (0100001)
+21 + 13 = 34 (0100010)
+21 + 14 = 35 (0100011)
+21 + 15 = 36 (0100100)
+21 + 16 = 37 (0100101)
+21 + 17 = 38 (0100110)
+21 + 18 = 39 (0100111)
+21 + 19 = 40 (0101000)
+21 + 20 = 41 (0101001)
+21 + 21 = 42 (0101010)
+21 + 22 = 43 (0101011)
+21 + 23 = 44 (0101100)
+21 + 24 = 45 (0101101)
+21 + 25 = 46 (0101110)
+21 + 26 = 47 (0101111)
+21 + 27 = 48 (0110000)
+21 + 28 = 49 (0110001)
+21 + 29 = 50 (0110010)
+21 + 30 = 51 (0110011)
+21 + 31 = 52 (0110100)
+21 + 32 = 53 (0110101)
+21 + 33 = 54 (0110110)
+21 + 34 = 55 (0110111)
+21 + 35 = 56 (0111000)
+21 + 36 = 57 (0111001)
+21 + 37 = 58 (0111010)
+21 + 38 = 59 (0111011)
+21 + 39 = 60 (0111100)
+21 + 40 = 61 (0111101)
+21 + 41 = 62 (0111110)
+21 + 42 = 63 (0111111)
+21 + 43 = 64 (1000000)
+21 + 44 = 65 (1000001)
+21 + 45 = 66 (1000010)
+21 + 46 = 67 (1000011)
+21 + 47 = 68 (1000100)
+21 + 48 = 69 (1000101)
+21 + 49 = 70 (1000110)
+21 + 50 = 71 (1000111)
+21 + 51 = 72 (1001000)
+21 + 52 = 73 (1001001)
+21 + 53 = 74 (1001010)
+21 + 54 = 75 (1001011)
+21 + 55 = 76 (1001100)
+21 + 56 = 77 (1001101)
+21 + 57 = 78 (1001110)
+21 + 58 = 79 (1001111)
+21 + 59 = 80 (1010000)
+21 + 60 = 81 (1010001)
+21 + 61 = 82 (1010010)
+21 + 62 = 83 (1010011)
+21 + 63 = 84 (1010100)
+22 + 0 = 22 (0010110)
+22 + 1 = 23 (0010111)
+22 + 2 = 24 (0011000)
+22 + 3 = 25 (0011001)
+22 + 4 = 26 (0011010)
+22 + 5 = 27 (0011011)
+22 + 6 = 28 (0011100)
+22 + 7 = 29 (0011101)
+22 + 8 = 30 (0011110)
+22 + 9 = 31 (0011111)
+22 + 10 = 32 (0100000)
+22 + 11 = 33 (0100001)
+22 + 12 = 34 (0100010)
+22 + 13 = 35 (0100011)
+22 + 14 = 36 (0100100)
+22 + 15 = 37 (0100101)
+22 + 16 = 38 (0100110)
+22 + 17 = 39 (0100111)
+22 + 18 = 40 (0101000)
+22 + 19 = 41 (0101001)
+22 + 20 = 42 (0101010)
+22 + 21 = 43 (0101011)
+22 + 22 = 44 (0101100)
+22 + 23 = 45 (0101101)
+22 + 24 = 46 (0101110)
+22 + 25 = 47 (0101111)
+22 + 26 = 48 (0110000)
+22 + 27 = 49 (0110001)
+22 + 28 = 50 (0110010)
+22 + 29 = 51 (0110011)
+22 + 30 = 52 (0110100)
+22 + 31 = 53 (0110101)
+22 + 32 = 54 (0110110)
+22 + 33 = 55 (0110111)
+22 + 34 = 56 (0111000)
+22 + 35 = 57 (0111001)
+22 + 36 = 58 (0111010)
+22 + 37 = 59 (0111011)
+22 + 38 = 60 (0111100)
+22 + 39 = 61 (0111101)
+22 + 40 = 62 (0111110)
+22 + 41 = 63 (0111111)
+22 + 42 = 64 (1000000)
+22 + 43 = 65 (1000001)
+22 + 44 = 66 (1000010)
+22 + 45 = 67 (1000011)
+22 + 46 = 68 (1000100)
+22 + 47 = 69 (1000101)
+22 + 48 = 70 (1000110)
+22 + 49 = 71 (1000111)
+22 + 50 = 72 (1001000)
+22 + 51 = 73 (1001001)
+22 + 52 = 74 (1001010)
+22 + 53 = 75 (1001011)
+22 + 54 = 76 (1001100)
+22 + 55 = 77 (1001101)
+22 + 56 = 78 (1001110)
+22 + 57 = 79 (1001111)
+22 + 58 = 80 (1010000)
+22 + 59 = 81 (1010001)
+22 + 60 = 82 (1010010)
+22 + 61 = 83 (1010011)
+22 + 62 = 84 (1010100)
+22 + 63 = 85 (1010101)
+23 + 0 = 23 (0010111)
+23 + 1 = 24 (0011000)
+23 + 2 = 25 (0011001)
+23 + 3 = 26 (0011010)
+23 + 4 = 27 (0011011)
+23 + 5 = 28 (0011100)
+23 + 6 = 29 (0011101)
+23 + 7 = 30 (0011110)
+23 + 8 = 31 (0011111)
+23 + 9 = 32 (0100000)
+23 + 10 = 33 (0100001)
+23 + 11 = 34 (0100010)
+23 + 12 = 35 (0100011)
+23 + 13 = 36 (0100100)
+23 + 14 = 37 (0100101)
+23 + 15 = 38 (0100110)
+23 + 16 = 39 (0100111)
+23 + 17 = 40 (0101000)
+23 + 18 = 41 (0101001)
+23 + 19 = 42 (0101010)
+23 + 20 = 43 (0101011)
+23 + 21 = 44 (0101100)
+23 + 22 = 45 (0101101)
+23 + 23 = 46 (0101110)
+23 + 24 = 47 (0101111)
+23 + 25 = 48 (0110000)
+23 + 26 = 49 (0110001)
+23 + 27 = 50 (0110010)
+23 + 28 = 51 (0110011)
+23 + 29 = 52 (0110100)
+23 + 30 = 53 (0110101)
+23 + 31 = 54 (0110110)
+23 + 32 = 55 (0110111)
+23 + 33 = 56 (0111000)
+23 + 34 = 57 (0111001)
+23 + 35 = 58 (0111010)
+23 + 36 = 59 (0111011)
+23 + 37 = 60 (0111100)
+23 + 38 = 61 (0111101)
+23 + 39 = 62 (0111110)
+23 + 40 = 63 (0111111)
+23 + 41 = 64 (1000000)
+23 + 42 = 65 (1000001)
+23 + 43 = 66 (1000010)
+23 + 44 = 67 (1000011)
+23 + 45 = 68 (1000100)
+23 + 46 = 69 (1000101)
+23 + 47 = 70 (1000110)
+23 + 48 = 71 (1000111)
+23 + 49 = 72 (1001000)
+23 + 50 = 73 (1001001)
+23 + 51 = 74 (1001010)
+23 + 52 = 75 (1001011)
+23 + 53 = 76 (1001100)
+23 + 54 = 77 (1001101)
+23 + 55 = 78 (1001110)
+23 + 56 = 79 (1001111)
+23 + 57 = 80 (1010000)
+23 + 58 = 81 (1010001)
+23 + 59 = 82 (1010010)
+23 + 60 = 83 (1010011)
+23 + 61 = 84 (1010100)
+23 + 62 = 85 (1010101)
+23 + 63 = 86 (1010110)
+24 + 0 = 24 (0011000)
+24 + 1 = 25 (0011001)
+24 + 2 = 26 (0011010)
+24 + 3 = 27 (0011011)
+24 + 4 = 28 (0011100)
+24 + 5 = 29 (0011101)
+24 + 6 = 30 (0011110)
+24 + 7 = 31 (0011111)
+24 + 8 = 32 (0100000)
+24 + 9 = 33 (0100001)
+24 + 10 = 34 (0100010)
+24 + 11 = 35 (0100011)
+24 + 12 = 36 (0100100)
+24 + 13 = 37 (0100101)
+24 + 14 = 38 (0100110)
+24 + 15 = 39 (0100111)
+24 + 16 = 40 (0101000)
+24 + 17 = 41 (0101001)
+24 + 18 = 42 (0101010)
+24 + 19 = 43 (0101011)
+24 + 20 = 44 (0101100)
+24 + 21 = 45 (0101101)
+24 + 22 = 46 (0101110)
+24 + 23 = 47 (0101111)
+24 + 24 = 48 (0110000)
+24 + 25 = 49 (0110001)
+24 + 26 = 50 (0110010)
+24 + 27 = 51 (0110011)
+24 + 28 = 52 (0110100)
+24 + 29 = 53 (0110101)
+24 + 30 = 54 (0110110)
+24 + 31 = 55 (0110111)
+24 + 32 = 56 (0111000)
+24 + 33 = 57 (0111001)
+24 + 34 = 58 (0111010)
+24 + 35 = 59 (0111011)
+24 + 36 = 60 (0111100)
+24 + 37 = 61 (0111101)
+24 + 38 = 62 (0111110)
+24 + 39 = 63 (0111111)
+24 + 40 = 64 (1000000)
+24 + 41 = 65 (1000001)
+24 + 42 = 66 (1000010)
+24 + 43 = 67 (1000011)
+24 + 44 = 68 (1000100)
+24 + 45 = 69 (1000101)
+24 + 46 = 70 (1000110)
+24 + 47 = 71 (1000111)
+24 + 48 = 72 (1001000)
+24 + 49 = 73 (1001001)
+24 + 50 = 74 (1001010)
+24 + 51 = 75 (1001011)
+24 + 52 = 76 (1001100)
+24 + 53 = 77 (1001101)
+24 + 54 = 78 (1001110)
+24 + 55 = 79 (1001111)
+24 + 56 = 80 (1010000)
+24 + 57 = 81 (1010001)
+24 + 58 = 82 (1010010)
+24 + 59 = 83 (1010011)
+24 + 60 = 84 (1010100)
+24 + 61 = 85 (1010101)
+24 + 62 = 86 (1010110)
+24 + 63 = 87 (1010111)
+25 + 0 = 25 (0011001)
+25 + 1 = 26 (0011010)
+25 + 2 = 27 (0011011)
+25 + 3 = 28 (0011100)
+25 + 4 = 29 (0011101)
+25 + 5 = 30 (0011110)
+25 + 6 = 31 (0011111)
+25 + 7 = 32 (0100000)
+25 + 8 = 33 (0100001)
+25 + 9 = 34 (0100010)
+25 + 10 = 35 (0100011)
+25 + 11 = 36 (0100100)
+25 + 12 = 37 (0100101)
+25 + 13 = 38 (0100110)
+25 + 14 = 39 (0100111)
+25 + 15 = 40 (0101000)
+25 + 16 = 41 (0101001)
+25 + 17 = 42 (0101010)
+25 + 18 = 43 (0101011)
+25 + 19 = 44 (0101100)
+25 + 20 = 45 (0101101)
+25 + 21 = 46 (0101110)
+25 + 22 = 47 (0101111)
+25 + 23 = 48 (0110000)
+25 + 24 = 49 (0110001)
+25 + 25 = 50 (0110010)
+25 + 26 = 51 (0110011)
+25 + 27 = 52 (0110100)
+25 + 28 = 53 (0110101)
+25 + 29 = 54 (0110110)
+25 + 30 = 55 (0110111)
+25 + 31 = 56 (0111000)
+25 + 32 = 57 (0111001)
+25 + 33 = 58 (0111010)
+25 + 34 = 59 (0111011)
+25 + 35 = 60 (0111100)
+25 + 36 = 61 (0111101)
+25 + 37 = 62 (0111110)
+25 + 38 = 63 (0111111)
+25 + 39 = 64 (1000000)
+25 + 40 = 65 (1000001)
+25 + 41 = 66 (1000010)
+25 + 42 = 67 (1000011)
+25 + 43 = 68 (1000100)
+25 + 44 = 69 (1000101)
+25 + 45 = 70 (1000110)
+25 + 46 = 71 (1000111)
+25 + 47 = 72 (1001000)
+25 + 48 = 73 (1001001)
+25 + 49 = 74 (1001010)
+25 + 50 = 75 (1001011)
+25 + 51 = 76 (1001100)
+25 + 52 = 77 (1001101)
+25 + 53 = 78 (1001110)
+25 + 54 = 79 (1001111)
+25 + 55 = 80 (1010000)
+25 + 56 = 81 (1010001)
+25 + 57 = 82 (1010010)
+25 + 58 = 83 (1010011)
+25 + 59 = 84 (1010100)
+25 + 60 = 85 (1010101)
+25 + 61 = 86 (1010110)
+25 + 62 = 87 (1010111)
+25 + 63 = 88 (1011000)
+26 + 0 = 26 (0011010)
+26 + 1 = 27 (0011011)
+26 + 2 = 28 (0011100)
+26 + 3 = 29 (0011101)
+26 + 4 = 30 (0011110)
+26 + 5 = 31 (0011111)
+26 + 6 = 32 (0100000)
+26 + 7 = 33 (0100001)
+26 + 8 = 34 (0100010)
+26 + 9 = 35 (0100011)
+26 + 10 = 36 (0100100)
+26 + 11 = 37 (0100101)
+26 + 12 = 38 (0100110)
+26 + 13 = 39 (0100111)
+26 + 14 = 40 (0101000)
+26 + 15 = 41 (0101001)
+26 + 16 = 42 (0101010)
+26 + 17 = 43 (0101011)
+26 + 18 = 44 (0101100)
+26 + 19 = 45 (0101101)
+26 + 20 = 46 (0101110)
+26 + 21 = 47 (0101111)
+26 + 22 = 48 (0110000)
+26 + 23 = 49 (0110001)
+26 + 24 = 50 (0110010)
+26 + 25 = 51 (0110011)
+26 + 26 = 52 (0110100)
+26 + 27 = 53 (0110101)
+26 + 28 = 54 (0110110)
+26 + 29 = 55 (0110111)
+26 + 30 = 56 (0111000)
+26 + 31 = 57 (0111001)
+26 + 32 = 58 (0111010)
+26 + 33 = 59 (0111011)
+26 + 34 = 60 (0111100)
+26 + 35 = 61 (0111101)
+26 + 36 = 62 (0111110)
+26 + 37 = 63 (0111111)
+26 + 38 = 64 (1000000)
+26 + 39 = 65 (1000001)
+26 + 40 = 66 (1000010)
+26 + 41 = 67 (1000011)
+26 + 42 = 68 (1000100)
+26 + 43 = 69 (1000101)
+26 + 44 = 70 (1000110)
+26 + 45 = 71 (1000111)
+26 + 46 = 72 (1001000)
+26 + 47 = 73 (1001001)
+26 + 48 = 74 (1001010)
+26 + 49 = 75 (1001011)
+26 + 50 = 76 (1001100)
+26 + 51 = 77 (1001101)
+26 + 52 = 78 (1001110)
+26 + 53 = 79 (1001111)
+26 + 54 = 80 (1010000)
+26 + 55 = 81 (1010001)
+26 + 56 = 82 (1010010)
+26 + 57 = 83 (1010011)
+26 + 58 = 84 (1010100)
+26 + 59 = 85 (1010101)
+26 + 60 = 86 (1010110)
+26 + 61 = 87 (1010111)
+26 + 62 = 88 (1011000)
+26 + 63 = 89 (1011001)
+27 + 0 = 27 (0011011)
+27 + 1 = 28 (0011100)
+27 + 2 = 29 (0011101)
+27 + 3 = 30 (0011110)
+27 + 4 = 31 (0011111)
+27 + 5 = 32 (0100000)
+27 + 6 = 33 (0100001)
+27 + 7 = 34 (0100010)
+27 + 8 = 35 (0100011)
+27 + 9 = 36 (0100100)
+27 + 10 = 37 (0100101)
+27 + 11 = 38 (0100110)
+27 + 12 = 39 (0100111)
+27 + 13 = 40 (0101000)
+27 + 14 = 41 (0101001)
+27 + 15 = 42 (0101010)
+27 + 16 = 43 (0101011)
+27 + 17 = 44 (0101100)
+27 + 18 = 45 (0101101)
+27 + 19 = 46 (0101110)
+27 + 20 = 47 (0101111)
+27 + 21 = 48 (0110000)
+27 + 22 = 49 (0110001)
+27 + 23 = 50 (0110010)
+27 + 24 = 51 (0110011)
+27 + 25 = 52 (0110100)
+27 + 26 = 53 (0110101)
+27 + 27 = 54 (0110110)
+27 + 28 = 55 (0110111)
+27 + 29 = 56 (0111000)
+27 + 30 = 57 (0111001)
+27 + 31 = 58 (0111010)
+27 + 32 = 59 (0111011)
+27 + 33 = 60 (0111100)
+27 + 34 = 61 (0111101)
+27 + 35 = 62 (0111110)
+27 + 36 = 63 (0111111)
+27 + 37 = 64 (1000000)
+27 + 38 = 65 (1000001)
+27 + 39 = 66 (1000010)
+27 + 40 = 67 (1000011)
+27 + 41 = 68 (1000100)
+27 + 42 = 69 (1000101)
+27 + 43 = 70 (1000110)
+27 + 44 = 71 (1000111)
+27 + 45 = 72 (1001000)
+27 + 46 = 73 (1001001)
+27 + 47 = 74 (1001010)
+27 + 48 = 75 (1001011)
+27 + 49 = 76 (1001100)
+27 + 50 = 77 (1001101)
+27 + 51 = 78 (1001110)
+27 + 52 = 79 (1001111)
+27 + 53 = 80 (1010000)
+27 + 54 = 81 (1010001)
+27 + 55 = 82 (1010010)
+27 + 56 = 83 (1010011)
+27 + 57 = 84 (1010100)
+27 + 58 = 85 (1010101)
+27 + 59 = 86 (1010110)
+27 + 60 = 87 (1010111)
+27 + 61 = 88 (1011000)
+27 + 62 = 89 (1011001)
+27 + 63 = 90 (1011010)
+28 + 0 = 28 (0011100)
+28 + 1 = 29 (0011101)
+28 + 2 = 30 (0011110)
+28 + 3 = 31 (0011111)
+28 + 4 = 32 (0100000)
+28 + 5 = 33 (0100001)
+28 + 6 = 34 (0100010)
+28 + 7 = 35 (0100011)
+28 + 8 = 36 (0100100)
+28 + 9 = 37 (0100101)
+28 + 10 = 38 (0100110)
+28 + 11 = 39 (0100111)
+28 + 12 = 40 (0101000)
+28 + 13 = 41 (0101001)
+28 + 14 = 42 (0101010)
+28 + 15 = 43 (0101011)
+28 + 16 = 44 (0101100)
+28 + 17 = 45 (0101101)
+28 + 18 = 46 (0101110)
+28 + 19 = 47 (0101111)
+28 + 20 = 48 (0110000)
+28 + 21 = 49 (0110001)
+28 + 22 = 50 (0110010)
+28 + 23 = 51 (0110011)
+28 + 24 = 52 (0110100)
+28 + 25 = 53 (0110101)
+28 + 26 = 54 (0110110)
+28 + 27 = 55 (0110111)
+28 + 28 = 56 (0111000)
+28 + 29 = 57 (0111001)
+28 + 30 = 58 (0111010)
+28 + 31 = 59 (0111011)
+28 + 32 = 60 (0111100)
+28 + 33 = 61 (0111101)
+28 + 34 = 62 (0111110)
+28 + 35 = 63 (0111111)
+28 + 36 = 64 (1000000)
+28 + 37 = 65 (1000001)
+28 + 38 = 66 (1000010)
+28 + 39 = 67 (1000011)
+28 + 40 = 68 (1000100)
+28 + 41 = 69 (1000101)
+28 + 42 = 70 (1000110)
+28 + 43 = 71 (1000111)
+28 + 44 = 72 (1001000)
+28 + 45 = 73 (1001001)
+28 + 46 = 74 (1001010)
+28 + 47 = 75 (1001011)
+28 + 48 = 76 (1001100)
+28 + 49 = 77 (1001101)
+28 + 50 = 78 (1001110)
+28 + 51 = 79 (1001111)
+28 + 52 = 80 (1010000)
+28 + 53 = 81 (1010001)
+28 + 54 = 82 (1010010)
+28 + 55 = 83 (1010011)
+28 + 56 = 84 (1010100)
+28 + 57 = 85 (1010101)
+28 + 58 = 86 (1010110)
+28 + 59 = 87 (1010111)
+28 + 60 = 88 (1011000)
+28 + 61 = 89 (1011001)
+28 + 62 = 90 (1011010)
+28 + 63 = 91 (1011011)
+29 + 0 = 29 (0011101)
+29 + 1 = 30 (0011110)
+29 + 2 = 31 (0011111)
+29 + 3 = 32 (0100000)
+29 + 4 = 33 (0100001)
+29 + 5 = 34 (0100010)
+29 + 6 = 35 (0100011)
+29 + 7 = 36 (0100100)
+29 + 8 = 37 (0100101)
+29 + 9 = 38 (0100110)
+29 + 10 = 39 (0100111)
+29 + 11 = 40 (0101000)
+29 + 12 = 41 (0101001)
+29 + 13 = 42 (0101010)
+29 + 14 = 43 (0101011)
+29 + 15 = 44 (0101100)
+29 + 16 = 45 (0101101)
+29 + 17 = 46 (0101110)
+29 + 18 = 47 (0101111)
+29 + 19 = 48 (0110000)
+29 + 20 = 49 (0110001)
+29 + 21 = 50 (0110010)
+29 + 22 = 51 (0110011)
+29 + 23 = 52 (0110100)
+29 + 24 = 53 (0110101)
+29 + 25 = 54 (0110110)
+29 + 26 = 55 (0110111)
+29 + 27 = 56 (0111000)
+29 + 28 = 57 (0111001)
+29 + 29 = 58 (0111010)
+29 + 30 = 59 (0111011)
+29 + 31 = 60 (0111100)
+29 + 32 = 61 (0111101)
+29 + 33 = 62 (0111110)
+29 + 34 = 63 (0111111)
+29 + 35 = 64 (1000000)
+29 + 36 = 65 (1000001)
+29 + 37 = 66 (1000010)
+29 + 38 = 67 (1000011)
+29 + 39 = 68 (1000100)
+29 + 40 = 69 (1000101)
+29 + 41 = 70 (1000110)
+29 + 42 = 71 (1000111)
+29 + 43 = 72 (1001000)
+29 + 44 = 73 (1001001)
+29 + 45 = 74 (1001010)
+29 + 46 = 75 (1001011)
+29 + 47 = 76 (1001100)
+29 + 48 = 77 (1001101)
+29 + 49 = 78 (1001110)
+29 + 50 = 79 (1001111)
+29 + 51 = 80 (1010000)
+29 + 52 = 81 (1010001)
+29 + 53 = 82 (1010010)
+29 + 54 = 83 (1010011)
+29 + 55 = 84 (1010100)
+29 + 56 = 85 (1010101)
+29 + 57 = 86 (1010110)
+29 + 58 = 87 (1010111)
+29 + 59 = 88 (1011000)
+29 + 60 = 89 (1011001)
+29 + 61 = 90 (1011010)
+29 + 62 = 91 (1011011)
+29 + 63 = 92 (1011100)
+30 + 0 = 30 (0011110)
+30 + 1 = 31 (0011111)
+30 + 2 = 32 (0100000)
+30 + 3 = 33 (0100001)
+30 + 4 = 34 (0100010)
+30 + 5 = 35 (0100011)
+30 + 6 = 36 (0100100)
+30 + 7 = 37 (0100101)
+30 + 8 = 38 (0100110)
+30 + 9 = 39 (0100111)
+30 + 10 = 40 (0101000)
+30 + 11 = 41 (0101001)
+30 + 12 = 42 (0101010)
+30 + 13 = 43 (0101011)
+30 + 14 = 44 (0101100)
+30 + 15 = 45 (0101101)
+30 + 16 = 46 (0101110)
+30 + 17 = 47 (0101111)
+30 + 18 = 48 (0110000)
+30 + 19 = 49 (0110001)
+30 + 20 = 50 (0110010)
+30 + 21 = 51 (0110011)
+30 + 22 = 52 (0110100)
+30 + 23 = 53 (0110101)
+30 + 24 = 54 (0110110)
+30 + 25 = 55 (0110111)
+30 + 26 = 56 (0111000)
+30 + 27 = 57 (0111001)
+30 + 28 = 58 (0111010)
+30 + 29 = 59 (0111011)
+30 + 30 = 60 (0111100)
+30 + 31 = 61 (0111101)
+30 + 32 = 62 (0111110)
+30 + 33 = 63 (0111111)
+30 + 34 = 64 (1000000)
+30 + 35 = 65 (1000001)
+30 + 36 = 66 (1000010)
+30 + 37 = 67 (1000011)
+30 + 38 = 68 (1000100)
+30 + 39 = 69 (1000101)
+30 + 40 = 70 (1000110)
+30 + 41 = 71 (1000111)
+30 + 42 = 72 (1001000)
+30 + 43 = 73 (1001001)
+30 + 44 = 74 (1001010)
+30 + 45 = 75 (1001011)
+30 + 46 = 76 (1001100)
+30 + 47 = 77 (1001101)
+30 + 48 = 78 (1001110)
+30 + 49 = 79 (1001111)
+30 + 50 = 80 (1010000)
+30 + 51 = 81 (1010001)
+30 + 52 = 82 (1010010)
+30 + 53 = 83 (1010011)
+30 + 54 = 84 (1010100)
+30 + 55 = 85 (1010101)
+30 + 56 = 86 (1010110)
+30 + 57 = 87 (1010111)
+30 + 58 = 88 (1011000)
+30 + 59 = 89 (1011001)
+30 + 60 = 90 (1011010)
+30 + 61 = 91 (1011011)
+30 + 62 = 92 (1011100)
+30 + 63 = 93 (1011101)
+31 + 0 = 31 (0011111)
+31 + 1 = 32 (0100000)
+31 + 2 = 33 (0100001)
+31 + 3 = 34 (0100010)
+31 + 4 = 35 (0100011)
+31 + 5 = 36 (0100100)
+31 + 6 = 37 (0100101)
+31 + 7 = 38 (0100110)
+31 + 8 = 39 (0100111)
+31 + 9 = 40 (0101000)
+31 + 10 = 41 (0101001)
+31 + 11 = 42 (0101010)
+31 + 12 = 43 (0101011)
+31 + 13 = 44 (0101100)
+31 + 14 = 45 (0101101)
+31 + 15 = 46 (0101110)
+31 + 16 = 47 (0101111)
+31 + 17 = 48 (0110000)
+31 + 18 = 49 (0110001)
+31 + 19 = 50 (0110010)
+31 + 20 = 51 (0110011)
+31 + 21 = 52 (0110100)
+31 + 22 = 53 (0110101)
+31 + 23 = 54 (0110110)
+31 + 24 = 55 (0110111)
+31 + 25 = 56 (0111000)
+31 + 26 = 57 (0111001)
+31 + 27 = 58 (0111010)
+31 + 28 = 59 (0111011)
+31 + 29 = 60 (0111100)
+31 + 30 = 61 (0111101)
+31 + 31 = 62 (0111110)
+31 + 32 = 63 (0111111)
+31 + 33 = 64 (1000000)
+31 + 34 = 65 (1000001)
+31 + 35 = 66 (1000010)
+31 + 36 = 67 (1000011)
+31 + 37 = 68 (1000100)
+31 + 38 = 69 (1000101)
+31 + 39 = 70 (1000110)
+31 + 40 = 71 (1000111)
+31 + 41 = 72 (1001000)
+31 + 42 = 73 (1001001)
+31 + 43 = 74 (1001010)
+31 + 44 = 75 (1001011)
+31 + 45 = 76 (1001100)
+31 + 46 = 77 (1001101)
+31 + 47 = 78 (1001110)
+31 + 48 = 79 (1001111)
+31 + 49 = 80 (1010000)
+31 + 50 = 81 (1010001)
+31 + 51 = 82 (1010010)
+31 + 52 = 83 (1010011)
+31 + 53 = 84 (1010100)
+31 + 54 = 85 (1010101)
+31 + 55 = 86 (1010110)
+31 + 56 = 87 (1010111)
+31 + 57 = 88 (1011000)
+31 + 58 = 89 (1011001)
+31 + 59 = 90 (1011010)
+31 + 60 = 91 (1011011)
+31 + 61 = 92 (1011100)
+31 + 62 = 93 (1011101)
+31 + 63 = 94 (1011110)
+32 + 0 = 32 (0100000)
+32 + 1 = 33 (0100001)
+32 + 2 = 34 (0100010)
+32 + 3 = 35 (0100011)
+32 + 4 = 36 (0100100)
+32 + 5 = 37 (0100101)
+32 + 6 = 38 (0100110)
+32 + 7 = 39 (0100111)
+32 + 8 = 40 (0101000)
+32 + 9 = 41 (0101001)
+32 + 10 = 42 (0101010)
+32 + 11 = 43 (0101011)
+32 + 12 = 44 (0101100)
+32 + 13 = 45 (0101101)
+32 + 14 = 46 (0101110)
+32 + 15 = 47 (0101111)
+32 + 16 = 48 (0110000)
+32 + 17 = 49 (0110001)
+32 + 18 = 50 (0110010)
+32 + 19 = 51 (0110011)
+32 + 20 = 52 (0110100)
+32 + 21 = 53 (0110101)
+32 + 22 = 54 (0110110)
+32 + 23 = 55 (0110111)
+32 + 24 = 56 (0111000)
+32 + 25 = 57 (0111001)
+32 + 26 = 58 (0111010)
+32 + 27 = 59 (0111011)
+32 + 28 = 60 (0111100)
+32 + 29 = 61 (0111101)
+32 + 30 = 62 (0111110)
+32 + 31 = 63 (0111111)
+32 + 32 = 64 (1000000)
+32 + 33 = 65 (1000001)
+32 + 34 = 66 (1000010)
+32 + 35 = 67 (1000011)
+32 + 36 = 68 (1000100)
+32 + 37 = 69 (1000101)
+32 + 38 = 70 (1000110)
+32 + 39 = 71 (1000111)
+32 + 40 = 72 (1001000)
+32 + 41 = 73 (1001001)
+32 + 42 = 74 (1001010)
+32 + 43 = 75 (1001011)
+32 + 44 = 76 (1001100)
+32 + 45 = 77 (1001101)
+32 + 46 = 78 (1001110)
+32 + 47 = 79 (1001111)
+32 + 48 = 80 (1010000)
+32 + 49 = 81 (1010001)
+32 + 50 = 82 (1010010)
+32 + 51 = 83 (1010011)
+32 + 52 = 84 (1010100)
+32 + 53 = 85 (1010101)
+32 + 54 = 86 (1010110)
+32 + 55 = 87 (1010111)
+32 + 56 = 88 (1011000)
+32 + 57 = 89 (1011001)
+32 + 58 = 90 (1011010)
+32 + 59 = 91 (1011011)
+32 + 60 = 92 (1011100)
+32 + 61 = 93 (1011101)
+32 + 62 = 94 (1011110)
+32 + 63 = 95 (1011111)
+33 + 0 = 33 (0100001)
+33 + 1 = 34 (0100010)
+33 + 2 = 35 (0100011)
+33 + 3 = 36 (0100100)
+33 + 4 = 37 (0100101)
+33 + 5 = 38 (0100110)
+33 + 6 = 39 (0100111)
+33 + 7 = 40 (0101000)
+33 + 8 = 41 (0101001)
+33 + 9 = 42 (0101010)
+33 + 10 = 43 (0101011)
+33 + 11 = 44 (0101100)
+33 + 12 = 45 (0101101)
+33 + 13 = 46 (0101110)
+33 + 14 = 47 (0101111)
+33 + 15 = 48 (0110000)
+33 + 16 = 49 (0110001)
+33 + 17 = 50 (0110010)
+33 + 18 = 51 (0110011)
+33 + 19 = 52 (0110100)
+33 + 20 = 53 (0110101)
+33 + 21 = 54 (0110110)
+33 + 22 = 55 (0110111)
+33 + 23 = 56 (0111000)
+33 + 24 = 57 (0111001)
+33 + 25 = 58 (0111010)
+33 + 26 = 59 (0111011)
+33 + 27 = 60 (0111100)
+33 + 28 = 61 (0111101)
+33 + 29 = 62 (0111110)
+33 + 30 = 63 (0111111)
+33 + 31 = 64 (1000000)
+33 + 32 = 65 (1000001)
+33 + 33 = 66 (1000010)
+33 + 34 = 67 (1000011)
+33 + 35 = 68 (1000100)
+33 + 36 = 69 (1000101)
+33 + 37 = 70 (1000110)
+33 + 38 = 71 (1000111)
+33 + 39 = 72 (1001000)
+33 + 40 = 73 (1001001)
+33 + 41 = 74 (1001010)
+33 + 42 = 75 (1001011)
+33 + 43 = 76 (1001100)
+33 + 44 = 77 (1001101)
+33 + 45 = 78 (1001110)
+33 + 46 = 79 (1001111)
+33 + 47 = 80 (1010000)
+33 + 48 = 81 (1010001)
+33 + 49 = 82 (1010010)
+33 + 50 = 83 (1010011)
+33 + 51 = 84 (1010100)
+33 + 52 = 85 (1010101)
+33 + 53 = 86 (1010110)
+33 + 54 = 87 (1010111)
+33 + 55 = 88 (1011000)
+33 + 56 = 89 (1011001)
+33 + 57 = 90 (1011010)
+33 + 58 = 91 (1011011)
+33 + 59 = 92 (1011100)
+33 + 60 = 93 (1011101)
+33 + 61 = 94 (1011110)
+33 + 62 = 95 (1011111)
+33 + 63 = 96 (1100000)
+34 + 0 = 34 (0100010)
+34 + 1 = 35 (0100011)
+34 + 2 = 36 (0100100)
+34 + 3 = 37 (0100101)
+34 + 4 = 38 (0100110)
+34 + 5 = 39 (0100111)
+34 + 6 = 40 (0101000)
+34 + 7 = 41 (0101001)
+34 + 8 = 42 (0101010)
+34 + 9 = 43 (0101011)
+34 + 10 = 44 (0101100)
+34 + 11 = 45 (0101101)
+34 + 12 = 46 (0101110)
+34 + 13 = 47 (0101111)
+34 + 14 = 48 (0110000)
+34 + 15 = 49 (0110001)
+34 + 16 = 50 (0110010)
+34 + 17 = 51 (0110011)
+34 + 18 = 52 (0110100)
+34 + 19 = 53 (0110101)
+34 + 20 = 54 (0110110)
+34 + 21 = 55 (0110111)
+34 + 22 = 56 (0111000)
+34 + 23 = 57 (0111001)
+34 + 24 = 58 (0111010)
+34 + 25 = 59 (0111011)
+34 + 26 = 60 (0111100)
+34 + 27 = 61 (0111101)
+34 + 28 = 62 (0111110)
+34 + 29 = 63 (0111111)
+34 + 30 = 64 (1000000)
+34 + 31 = 65 (1000001)
+34 + 32 = 66 (1000010)
+34 + 33 = 67 (1000011)
+34 + 34 = 68 (1000100)
+34 + 35 = 69 (1000101)
+34 + 36 = 70 (1000110)
+34 + 37 = 71 (1000111)
+34 + 38 = 72 (1001000)
+34 + 39 = 73 (1001001)
+34 + 40 = 74 (1001010)
+34 + 41 = 75 (1001011)
+34 + 42 = 76 (1001100)
+34 + 43 = 77 (1001101)
+34 + 44 = 78 (1001110)
+34 + 45 = 79 (1001111)
+34 + 46 = 80 (1010000)
+34 + 47 = 81 (1010001)
+34 + 48 = 82 (1010010)
+34 + 49 = 83 (1010011)
+34 + 50 = 84 (1010100)
+34 + 51 = 85 (1010101)
+34 + 52 = 86 (1010110)
+34 + 53 = 87 (1010111)
+34 + 54 = 88 (1011000)
+34 + 55 = 89 (1011001)
+34 + 56 = 90 (1011010)
+34 + 57 = 91 (1011011)
+34 + 58 = 92 (1011100)
+34 + 59 = 93 (1011101)
+34 + 60 = 94 (1011110)
+34 + 61 = 95 (1011111)
+34 + 62 = 96 (1100000)
+34 + 63 = 97 (1100001)
+35 + 0 = 35 (0100011)
+35 + 1 = 36 (0100100)
+35 + 2 = 37 (0100101)
+35 + 3 = 38 (0100110)
+35 + 4 = 39 (0100111)
+35 + 5 = 40 (0101000)
+35 + 6 = 41 (0101001)
+35 + 7 = 42 (0101010)
+35 + 8 = 43 (0101011)
+35 + 9 = 44 (0101100)
+35 + 10 = 45 (0101101)
+35 + 11 = 46 (0101110)
+35 + 12 = 47 (0101111)
+35 + 13 = 48 (0110000)
+35 + 14 = 49 (0110001)
+35 + 15 = 50 (0110010)
+35 + 16 = 51 (0110011)
+35 + 17 = 52 (0110100)
+35 + 18 = 53 (0110101)
+35 + 19 = 54 (0110110)
+35 + 20 = 55 (0110111)
+35 + 21 = 56 (0111000)
+35 + 22 = 57 (0111001)
+35 + 23 = 58 (0111010)
+35 + 24 = 59 (0111011)
+35 + 25 = 60 (0111100)
+35 + 26 = 61 (0111101)
+35 + 27 = 62 (0111110)
+35 + 28 = 63 (0111111)
+35 + 29 = 64 (1000000)
+35 + 30 = 65 (1000001)
+35 + 31 = 66 (1000010)
+35 + 32 = 67 (1000011)
+35 + 33 = 68 (1000100)
+35 + 34 = 69 (1000101)
+35 + 35 = 70 (1000110)
+35 + 36 = 71 (1000111)
+35 + 37 = 72 (1001000)
+35 + 38 = 73 (1001001)
+35 + 39 = 74 (1001010)
+35 + 40 = 75 (1001011)
+35 + 41 = 76 (1001100)
+35 + 42 = 77 (1001101)
+35 + 43 = 78 (1001110)
+35 + 44 = 79 (1001111)
+35 + 45 = 80 (1010000)
+35 + 46 = 81 (1010001)
+35 + 47 = 82 (1010010)
+35 + 48 = 83 (1010011)
+35 + 49 = 84 (1010100)
+35 + 50 = 85 (1010101)
+35 + 51 = 86 (1010110)
+35 + 52 = 87 (1010111)
+35 + 53 = 88 (1011000)
+35 + 54 = 89 (1011001)
+35 + 55 = 90 (1011010)
+35 + 56 = 91 (1011011)
+35 + 57 = 92 (1011100)
+35 + 58 = 93 (1011101)
+35 + 59 = 94 (1011110)
+35 + 60 = 95 (1011111)
+35 + 61 = 96 (1100000)
+35 + 62 = 97 (1100001)
+35 + 63 = 98 (1100010)
+36 + 0 = 36 (0100100)
+36 + 1 = 37 (0100101)
+36 + 2 = 38 (0100110)
+36 + 3 = 39 (0100111)
+36 + 4 = 40 (0101000)
+36 + 5 = 41 (0101001)
+36 + 6 = 42 (0101010)
+36 + 7 = 43 (0101011)
+36 + 8 = 44 (0101100)
+36 + 9 = 45 (0101101)
+36 + 10 = 46 (0101110)
+36 + 11 = 47 (0101111)
+36 + 12 = 48 (0110000)
+36 + 13 = 49 (0110001)
+36 + 14 = 50 (0110010)
+36 + 15 = 51 (0110011)
+36 + 16 = 52 (0110100)
+36 + 17 = 53 (0110101)
+36 + 18 = 54 (0110110)
+36 + 19 = 55 (0110111)
+36 + 20 = 56 (0111000)
+36 + 21 = 57 (0111001)
+36 + 22 = 58 (0111010)
+36 + 23 = 59 (0111011)
+36 + 24 = 60 (0111100)
+36 + 25 = 61 (0111101)
+36 + 26 = 62 (0111110)
+36 + 27 = 63 (0111111)
+36 + 28 = 64 (1000000)
+36 + 29 = 65 (1000001)
+36 + 30 = 66 (1000010)
+36 + 31 = 67 (1000011)
+36 + 32 = 68 (1000100)
+36 + 33 = 69 (1000101)
+36 + 34 = 70 (1000110)
+36 + 35 = 71 (1000111)
+36 + 36 = 72 (1001000)
+36 + 37 = 73 (1001001)
+36 + 38 = 74 (1001010)
+36 + 39 = 75 (1001011)
+36 + 40 = 76 (1001100)
+36 + 41 = 77 (1001101)
+36 + 42 = 78 (1001110)
+36 + 43 = 79 (1001111)
+36 + 44 = 80 (1010000)
+36 + 45 = 81 (1010001)
+36 + 46 = 82 (1010010)
+36 + 47 = 83 (1010011)
+36 + 48 = 84 (1010100)
+36 + 49 = 85 (1010101)
+36 + 50 = 86 (1010110)
+36 + 51 = 87 (1010111)
+36 + 52 = 88 (1011000)
+36 + 53 = 89 (1011001)
+36 + 54 = 90 (1011010)
+36 + 55 = 91 (1011011)
+36 + 56 = 92 (1011100)
+36 + 57 = 93 (1011101)
+36 + 58 = 94 (1011110)
+36 + 59 = 95 (1011111)
+36 + 60 = 96 (1100000)
+36 + 61 = 97 (1100001)
+36 + 62 = 98 (1100010)
+36 + 63 = 99 (1100011)
+37 + 0 = 37 (0100101)
+37 + 1 = 38 (0100110)
+37 + 2 = 39 (0100111)
+37 + 3 = 40 (0101000)
+37 + 4 = 41 (0101001)
+37 + 5 = 42 (0101010)
+37 + 6 = 43 (0101011)
+37 + 7 = 44 (0101100)
+37 + 8 = 45 (0101101)
+37 + 9 = 46 (0101110)
+37 + 10 = 47 (0101111)
+37 + 11 = 48 (0110000)
+37 + 12 = 49 (0110001)
+37 + 13 = 50 (0110010)
+37 + 14 = 51 (0110011)
+37 + 15 = 52 (0110100)
+37 + 16 = 53 (0110101)
+37 + 17 = 54 (0110110)
+37 + 18 = 55 (0110111)
+37 + 19 = 56 (0111000)
+37 + 20 = 57 (0111001)
+37 + 21 = 58 (0111010)
+37 + 22 = 59 (0111011)
+37 + 23 = 60 (0111100)
+37 + 24 = 61 (0111101)
+37 + 25 = 62 (0111110)
+37 + 26 = 63 (0111111)
+37 + 27 = 64 (1000000)
+37 + 28 = 65 (1000001)
+37 + 29 = 66 (1000010)
+37 + 30 = 67 (1000011)
+37 + 31 = 68 (1000100)
+37 + 32 = 69 (1000101)
+37 + 33 = 70 (1000110)
+37 + 34 = 71 (1000111)
+37 + 35 = 72 (1001000)
+37 + 36 = 73 (1001001)
+37 + 37 = 74 (1001010)
+37 + 38 = 75 (1001011)
+37 + 39 = 76 (1001100)
+37 + 40 = 77 (1001101)
+37 + 41 = 78 (1001110)
+37 + 42 = 79 (1001111)
+37 + 43 = 80 (1010000)
+37 + 44 = 81 (1010001)
+37 + 45 = 82 (1010010)
+37 + 46 = 83 (1010011)
+37 + 47 = 84 (1010100)
+37 + 48 = 85 (1010101)
+37 + 49 = 86 (1010110)
+37 + 50 = 87 (1010111)
+37 + 51 = 88 (1011000)
+37 + 52 = 89 (1011001)
+37 + 53 = 90 (1011010)
+37 + 54 = 91 (1011011)
+37 + 55 = 92 (1011100)
+37 + 56 = 93 (1011101)
+37 + 57 = 94 (1011110)
+37 + 58 = 95 (1011111)
+37 + 59 = 96 (1100000)
+37 + 60 = 97 (1100001)
+37 + 61 = 98 (1100010)
+37 + 62 = 99 (1100011)
+37 + 63 = 100 (1100100)
+38 + 0 = 38 (0100110)
+38 + 1 = 39 (0100111)
+38 + 2 = 40 (0101000)
+38 + 3 = 41 (0101001)
+38 + 4 = 42 (0101010)
+38 + 5 = 43 (0101011)
+38 + 6 = 44 (0101100)
+38 + 7 = 45 (0101101)
+38 + 8 = 46 (0101110)
+38 + 9 = 47 (0101111)
+38 + 10 = 48 (0110000)
+38 + 11 = 49 (0110001)
+38 + 12 = 50 (0110010)
+38 + 13 = 51 (0110011)
+38 + 14 = 52 (0110100)
+38 + 15 = 53 (0110101)
+38 + 16 = 54 (0110110)
+38 + 17 = 55 (0110111)
+38 + 18 = 56 (0111000)
+38 + 19 = 57 (0111001)
+38 + 20 = 58 (0111010)
+38 + 21 = 59 (0111011)
+38 + 22 = 60 (0111100)
+38 + 23 = 61 (0111101)
+38 + 24 = 62 (0111110)
+38 + 25 = 63 (0111111)
+38 + 26 = 64 (1000000)
+38 + 27 = 65 (1000001)
+38 + 28 = 66 (1000010)
+38 + 29 = 67 (1000011)
+38 + 30 = 68 (1000100)
+38 + 31 = 69 (1000101)
+38 + 32 = 70 (1000110)
+38 + 33 = 71 (1000111)
+38 + 34 = 72 (1001000)
+38 + 35 = 73 (1001001)
+38 + 36 = 74 (1001010)
+38 + 37 = 75 (1001011)
+38 + 38 = 76 (1001100)
+38 + 39 = 77 (1001101)
+38 + 40 = 78 (1001110)
+38 + 41 = 79 (1001111)
+38 + 42 = 80 (1010000)
+38 + 43 = 81 (1010001)
+38 + 44 = 82 (1010010)
+38 + 45 = 83 (1010011)
+38 + 46 = 84 (1010100)
+38 + 47 = 85 (1010101)
+38 + 48 = 86 (1010110)
+38 + 49 = 87 (1010111)
+38 + 50 = 88 (1011000)
+38 + 51 = 89 (1011001)
+38 + 52 = 90 (1011010)
+38 + 53 = 91 (1011011)
+38 + 54 = 92 (1011100)
+38 + 55 = 93 (1011101)
+38 + 56 = 94 (1011110)
+38 + 57 = 95 (1011111)
+38 + 58 = 96 (1100000)
+38 + 59 = 97 (1100001)
+38 + 60 = 98 (1100010)
+38 + 61 = 99 (1100011)
+38 + 62 = 100 (1100100)
+38 + 63 = 101 (1100101)
+39 + 0 = 39 (0100111)
+39 + 1 = 40 (0101000)
+39 + 2 = 41 (0101001)
+39 + 3 = 42 (0101010)
+39 + 4 = 43 (0101011)
+39 + 5 = 44 (0101100)
+39 + 6 = 45 (0101101)
+39 + 7 = 46 (0101110)
+39 + 8 = 47 (0101111)
+39 + 9 = 48 (0110000)
+39 + 10 = 49 (0110001)
+39 + 11 = 50 (0110010)
+39 + 12 = 51 (0110011)
+39 + 13 = 52 (0110100)
+39 + 14 = 53 (0110101)
+39 + 15 = 54 (0110110)
+39 + 16 = 55 (0110111)
+39 + 17 = 56 (0111000)
+39 + 18 = 57 (0111001)
+39 + 19 = 58 (0111010)
+39 + 20 = 59 (0111011)
+39 + 21 = 60 (0111100)
+39 + 22 = 61 (0111101)
+39 + 23 = 62 (0111110)
+39 + 24 = 63 (0111111)
+39 + 25 = 64 (1000000)
+39 + 26 = 65 (1000001)
+39 + 27 = 66 (1000010)
+39 + 28 = 67 (1000011)
+39 + 29 = 68 (1000100)
+39 + 30 = 69 (1000101)
+39 + 31 = 70 (1000110)
+39 + 32 = 71 (1000111)
+39 + 33 = 72 (1001000)
+39 + 34 = 73 (1001001)
+39 + 35 = 74 (1001010)
+39 + 36 = 75 (1001011)
+39 + 37 = 76 (1001100)
+39 + 38 = 77 (1001101)
+39 + 39 = 78 (1001110)
+39 + 40 = 79 (1001111)
+39 + 41 = 80 (1010000)
+39 + 42 = 81 (1010001)
+39 + 43 = 82 (1010010)
+39 + 44 = 83 (1010011)
+39 + 45 = 84 (1010100)
+39 + 46 = 85 (1010101)
+39 + 47 = 86 (1010110)
+39 + 48 = 87 (1010111)
+39 + 49 = 88 (1011000)
+39 + 50 = 89 (1011001)
+39 + 51 = 90 (1011010)
+39 + 52 = 91 (1011011)
+39 + 53 = 92 (1011100)
+39 + 54 = 93 (1011101)
+39 + 55 = 94 (1011110)
+39 + 56 = 95 (1011111)
+39 + 57 = 96 (1100000)
+39 + 58 = 97 (1100001)
+39 + 59 = 98 (1100010)
+39 + 60 = 99 (1100011)
+39 + 61 = 100 (1100100)
+39 + 62 = 101 (1100101)
+39 + 63 = 102 (1100110)
+40 + 0 = 40 (0101000)
+40 + 1 = 41 (0101001)
+40 + 2 = 42 (0101010)
+40 + 3 = 43 (0101011)
+40 + 4 = 44 (0101100)
+40 + 5 = 45 (0101101)
+40 + 6 = 46 (0101110)
+40 + 7 = 47 (0101111)
+40 + 8 = 48 (0110000)
+40 + 9 = 49 (0110001)
+40 + 10 = 50 (0110010)
+40 + 11 = 51 (0110011)
+40 + 12 = 52 (0110100)
+40 + 13 = 53 (0110101)
+40 + 14 = 54 (0110110)
+40 + 15 = 55 (0110111)
+40 + 16 = 56 (0111000)
+40 + 17 = 57 (0111001)
+40 + 18 = 58 (0111010)
+40 + 19 = 59 (0111011)
+40 + 20 = 60 (0111100)
+40 + 21 = 61 (0111101)
+40 + 22 = 62 (0111110)
+40 + 23 = 63 (0111111)
+40 + 24 = 64 (1000000)
+40 + 25 = 65 (1000001)
+40 + 26 = 66 (1000010)
+40 + 27 = 67 (1000011)
+40 + 28 = 68 (1000100)
+40 + 29 = 69 (1000101)
+40 + 30 = 70 (1000110)
+40 + 31 = 71 (1000111)
+40 + 32 = 72 (1001000)
+40 + 33 = 73 (1001001)
+40 + 34 = 74 (1001010)
+40 + 35 = 75 (1001011)
+40 + 36 = 76 (1001100)
+40 + 37 = 77 (1001101)
+40 + 38 = 78 (1001110)
+40 + 39 = 79 (1001111)
+40 + 40 = 80 (1010000)
+40 + 41 = 81 (1010001)
+40 + 42 = 82 (1010010)
+40 + 43 = 83 (1010011)
+40 + 44 = 84 (1010100)
+40 + 45 = 85 (1010101)
+40 + 46 = 86 (1010110)
+40 + 47 = 87 (1010111)
+40 + 48 = 88 (1011000)
+40 + 49 = 89 (1011001)
+40 + 50 = 90 (1011010)
+40 + 51 = 91 (1011011)
+40 + 52 = 92 (1011100)
+40 + 53 = 93 (1011101)
+40 + 54 = 94 (1011110)
+40 + 55 = 95 (1011111)
+40 + 56 = 96 (1100000)
+40 + 57 = 97 (1100001)
+40 + 58 = 98 (1100010)
+40 + 59 = 99 (1100011)
+40 + 60 = 100 (1100100)
+40 + 61 = 101 (1100101)
+40 + 62 = 102 (1100110)
+40 + 63 = 103 (1100111)
+41 + 0 = 41 (0101001)
+41 + 1 = 42 (0101010)
+41 + 2 = 43 (0101011)
+41 + 3 = 44 (0101100)
+41 + 4 = 45 (0101101)
+41 + 5 = 46 (0101110)
+41 + 6 = 47 (0101111)
+41 + 7 = 48 (0110000)
+41 + 8 = 49 (0110001)
+41 + 9 = 50 (0110010)
+41 + 10 = 51 (0110011)
+41 + 11 = 52 (0110100)
+41 + 12 = 53 (0110101)
+41 + 13 = 54 (0110110)
+41 + 14 = 55 (0110111)
+41 + 15 = 56 (0111000)
+41 + 16 = 57 (0111001)
+41 + 17 = 58 (0111010)
+41 + 18 = 59 (0111011)
+41 + 19 = 60 (0111100)
+41 + 20 = 61 (0111101)
+41 + 21 = 62 (0111110)
+41 + 22 = 63 (0111111)
+41 + 23 = 64 (1000000)
+41 + 24 = 65 (1000001)
+41 + 25 = 66 (1000010)
+41 + 26 = 67 (1000011)
+41 + 27 = 68 (1000100)
+41 + 28 = 69 (1000101)
+41 + 29 = 70 (1000110)
+41 + 30 = 71 (1000111)
+41 + 31 = 72 (1001000)
+41 + 32 = 73 (1001001)
+41 + 33 = 74 (1001010)
+41 + 34 = 75 (1001011)
+41 + 35 = 76 (1001100)
+41 + 36 = 77 (1001101)
+41 + 37 = 78 (1001110)
+41 + 38 = 79 (1001111)
+41 + 39 = 80 (1010000)
+41 + 40 = 81 (1010001)
+41 + 41 = 82 (1010010)
+41 + 42 = 83 (1010011)
+41 + 43 = 84 (1010100)
+41 + 44 = 85 (1010101)
+41 + 45 = 86 (1010110)
+41 + 46 = 87 (1010111)
+41 + 47 = 88 (1011000)
+41 + 48 = 89 (1011001)
+41 + 49 = 90 (1011010)
+41 + 50 = 91 (1011011)
+41 + 51 = 92 (1011100)
+41 + 52 = 93 (1011101)
+41 + 53 = 94 (1011110)
+41 + 54 = 95 (1011111)
+41 + 55 = 96 (1100000)
+41 + 56 = 97 (1100001)
+41 + 57 = 98 (1100010)
+41 + 58 = 99 (1100011)
+41 + 59 = 100 (1100100)
+41 + 60 = 101 (1100101)
+41 + 61 = 102 (1100110)
+41 + 62 = 103 (1100111)
+41 + 63 = 104 (1101000)
+42 + 0 = 42 (0101010)
+42 + 1 = 43 (0101011)
+42 + 2 = 44 (0101100)
+42 + 3 = 45 (0101101)
+42 + 4 = 46 (0101110)
+42 + 5 = 47 (0101111)
+42 + 6 = 48 (0110000)
+42 + 7 = 49 (0110001)
+42 + 8 = 50 (0110010)
+42 + 9 = 51 (0110011)
+42 + 10 = 52 (0110100)
+42 + 11 = 53 (0110101)
+42 + 12 = 54 (0110110)
+42 + 13 = 55 (0110111)
+42 + 14 = 56 (0111000)
+42 + 15 = 57 (0111001)
+42 + 16 = 58 (0111010)
+42 + 17 = 59 (0111011)
+42 + 18 = 60 (0111100)
+42 + 19 = 61 (0111101)
+42 + 20 = 62 (0111110)
+42 + 21 = 63 (0111111)
+42 + 22 = 64 (1000000)
+42 + 23 = 65 (1000001)
+42 + 24 = 66 (1000010)
+42 + 25 = 67 (1000011)
+42 + 26 = 68 (1000100)
+42 + 27 = 69 (1000101)
+42 + 28 = 70 (1000110)
+42 + 29 = 71 (1000111)
+42 + 30 = 72 (1001000)
+42 + 31 = 73 (1001001)
+42 + 32 = 74 (1001010)
+42 + 33 = 75 (1001011)
+42 + 34 = 76 (1001100)
+42 + 35 = 77 (1001101)
+42 + 36 = 78 (1001110)
+42 + 37 = 79 (1001111)
+42 + 38 = 80 (1010000)
+42 + 39 = 81 (1010001)
+42 + 40 = 82 (1010010)
+42 + 41 = 83 (1010011)
+42 + 42 = 84 (1010100)
+42 + 43 = 85 (1010101)
+42 + 44 = 86 (1010110)
+42 + 45 = 87 (1010111)
+42 + 46 = 88 (1011000)
+42 + 47 = 89 (1011001)
+42 + 48 = 90 (1011010)
+42 + 49 = 91 (1011011)
+42 + 50 = 92 (1011100)
+42 + 51 = 93 (1011101)
+42 + 52 = 94 (1011110)
+42 + 53 = 95 (1011111)
+42 + 54 = 96 (1100000)
+42 + 55 = 97 (1100001)
+42 + 56 = 98 (1100010)
+42 + 57 = 99 (1100011)
+42 + 58 = 100 (1100100)
+42 + 59 = 101 (1100101)
+42 + 60 = 102 (1100110)
+42 + 61 = 103 (1100111)
+42 + 62 = 104 (1101000)
+42 + 63 = 105 (1101001)
+43 + 0 = 43 (0101011)
+43 + 1 = 44 (0101100)
+43 + 2 = 45 (0101101)
+43 + 3 = 46 (0101110)
+43 + 4 = 47 (0101111)
+43 + 5 = 48 (0110000)
+43 + 6 = 49 (0110001)
+43 + 7 = 50 (0110010)
+43 + 8 = 51 (0110011)
+43 + 9 = 52 (0110100)
+43 + 10 = 53 (0110101)
+43 + 11 = 54 (0110110)
+43 + 12 = 55 (0110111)
+43 + 13 = 56 (0111000)
+43 + 14 = 57 (0111001)
+43 + 15 = 58 (0111010)
+43 + 16 = 59 (0111011)
+43 + 17 = 60 (0111100)
+43 + 18 = 61 (0111101)
+43 + 19 = 62 (0111110)
+43 + 20 = 63 (0111111)
+43 + 21 = 64 (1000000)
+43 + 22 = 65 (1000001)
+43 + 23 = 66 (1000010)
+43 + 24 = 67 (1000011)
+43 + 25 = 68 (1000100)
+43 + 26 = 69 (1000101)
+43 + 27 = 70 (1000110)
+43 + 28 = 71 (1000111)
+43 + 29 = 72 (1001000)
+43 + 30 = 73 (1001001)
+43 + 31 = 74 (1001010)
+43 + 32 = 75 (1001011)
+43 + 33 = 76 (1001100)
+43 + 34 = 77 (1001101)
+43 + 35 = 78 (1001110)
+43 + 36 = 79 (1001111)
+43 + 37 = 80 (1010000)
+43 + 38 = 81 (1010001)
+43 + 39 = 82 (1010010)
+43 + 40 = 83 (1010011)
+43 + 41 = 84 (1010100)
+43 + 42 = 85 (1010101)
+43 + 43 = 86 (1010110)
+43 + 44 = 87 (1010111)
+43 + 45 = 88 (1011000)
+43 + 46 = 89 (1011001)
+43 + 47 = 90 (1011010)
+43 + 48 = 91 (1011011)
+43 + 49 = 92 (1011100)
+43 + 50 = 93 (1011101)
+43 + 51 = 94 (1011110)
+43 + 52 = 95 (1011111)
+43 + 53 = 96 (1100000)
+43 + 54 = 97 (1100001)
+43 + 55 = 98 (1100010)
+43 + 56 = 99 (1100011)
+43 + 57 = 100 (1100100)
+43 + 58 = 101 (1100101)
+43 + 59 = 102 (1100110)
+43 + 60 = 103 (1100111)
+43 + 61 = 104 (1101000)
+43 + 62 = 105 (1101001)
+43 + 63 = 106 (1101010)
+44 + 0 = 44 (0101100)
+44 + 1 = 45 (0101101)
+44 + 2 = 46 (0101110)
+44 + 3 = 47 (0101111)
+44 + 4 = 48 (0110000)
+44 + 5 = 49 (0110001)
+44 + 6 = 50 (0110010)
+44 + 7 = 51 (0110011)
+44 + 8 = 52 (0110100)
+44 + 9 = 53 (0110101)
+44 + 10 = 54 (0110110)
+44 + 11 = 55 (0110111)
+44 + 12 = 56 (0111000)
+44 + 13 = 57 (0111001)
+44 + 14 = 58 (0111010)
+44 + 15 = 59 (0111011)
+44 + 16 = 60 (0111100)
+44 + 17 = 61 (0111101)
+44 + 18 = 62 (0111110)
+44 + 19 = 63 (0111111)
+44 + 20 = 64 (1000000)
+44 + 21 = 65 (1000001)
+44 + 22 = 66 (1000010)
+44 + 23 = 67 (1000011)
+44 + 24 = 68 (1000100)
+44 + 25 = 69 (1000101)
+44 + 26 = 70 (1000110)
+44 + 27 = 71 (1000111)
+44 + 28 = 72 (1001000)
+44 + 29 = 73 (1001001)
+44 + 30 = 74 (1001010)
+44 + 31 = 75 (1001011)
+44 + 32 = 76 (1001100)
+44 + 33 = 77 (1001101)
+44 + 34 = 78 (1001110)
+44 + 35 = 79 (1001111)
+44 + 36 = 80 (1010000)
+44 + 37 = 81 (1010001)
+44 + 38 = 82 (1010010)
+44 + 39 = 83 (1010011)
+44 + 40 = 84 (1010100)
+44 + 41 = 85 (1010101)
+44 + 42 = 86 (1010110)
+44 + 43 = 87 (1010111)
+44 + 44 = 88 (1011000)
+44 + 45 = 89 (1011001)
+44 + 46 = 90 (1011010)
+44 + 47 = 91 (1011011)
+44 + 48 = 92 (1011100)
+44 + 49 = 93 (1011101)
+44 + 50 = 94 (1011110)
+44 + 51 = 95 (1011111)
+44 + 52 = 96 (1100000)
+44 + 53 = 97 (1100001)
+44 + 54 = 98 (1100010)
+44 + 55 = 99 (1100011)
+44 + 56 = 100 (1100100)
+44 + 57 = 101 (1100101)
+44 + 58 = 102 (1100110)
+44 + 59 = 103 (1100111)
+44 + 60 = 104 (1101000)
+44 + 61 = 105 (1101001)
+44 + 62 = 106 (1101010)
+44 + 63 = 107 (1101011)
+45 + 0 = 45 (0101101)
+45 + 1 = 46 (0101110)
+45 + 2 = 47 (0101111)
+45 + 3 = 48 (0110000)
+45 + 4 = 49 (0110001)
+45 + 5 = 50 (0110010)
+45 + 6 = 51 (0110011)
+45 + 7 = 52 (0110100)
+45 + 8 = 53 (0110101)
+45 + 9 = 54 (0110110)
+45 + 10 = 55 (0110111)
+45 + 11 = 56 (0111000)
+45 + 12 = 57 (0111001)
+45 + 13 = 58 (0111010)
+45 + 14 = 59 (0111011)
+45 + 15 = 60 (0111100)
+45 + 16 = 61 (0111101)
+45 + 17 = 62 (0111110)
+45 + 18 = 63 (0111111)
+45 + 19 = 64 (1000000)
+45 + 20 = 65 (1000001)
+45 + 21 = 66 (1000010)
+45 + 22 = 67 (1000011)
+45 + 23 = 68 (1000100)
+45 + 24 = 69 (1000101)
+45 + 25 = 70 (1000110)
+45 + 26 = 71 (1000111)
+45 + 27 = 72 (1001000)
+45 + 28 = 73 (1001001)
+45 + 29 = 74 (1001010)
+45 + 30 = 75 (1001011)
+45 + 31 = 76 (1001100)
+45 + 32 = 77 (1001101)
+45 + 33 = 78 (1001110)
+45 + 34 = 79 (1001111)
+45 + 35 = 80 (1010000)
+45 + 36 = 81 (1010001)
+45 + 37 = 82 (1010010)
+45 + 38 = 83 (1010011)
+45 + 39 = 84 (1010100)
+45 + 40 = 85 (1010101)
+45 + 41 = 86 (1010110)
+45 + 42 = 87 (1010111)
+45 + 43 = 88 (1011000)
+45 + 44 = 89 (1011001)
+45 + 45 = 90 (1011010)
+45 + 46 = 91 (1011011)
+45 + 47 = 92 (1011100)
+45 + 48 = 93 (1011101)
+45 + 49 = 94 (1011110)
+45 + 50 = 95 (1011111)
+45 + 51 = 96 (1100000)
+45 + 52 = 97 (1100001)
+45 + 53 = 98 (1100010)
+45 + 54 = 99 (1100011)
+45 + 55 = 100 (1100100)
+45 + 56 = 101 (1100101)
+45 + 57 = 102 (1100110)
+45 + 58 = 103 (1100111)
+45 + 59 = 104 (1101000)
+45 + 60 = 105 (1101001)
+45 + 61 = 106 (1101010)
+45 + 62 = 107 (1101011)
+45 + 63 = 108 (1101100)
+46 + 0 = 46 (0101110)
+46 + 1 = 47 (0101111)
+46 + 2 = 48 (0110000)
+46 + 3 = 49 (0110001)
+46 + 4 = 50 (0110010)
+46 + 5 = 51 (0110011)
+46 + 6 = 52 (0110100)
+46 + 7 = 53 (0110101)
+46 + 8 = 54 (0110110)
+46 + 9 = 55 (0110111)
+46 + 10 = 56 (0111000)
+46 + 11 = 57 (0111001)
+46 + 12 = 58 (0111010)
+46 + 13 = 59 (0111011)
+46 + 14 = 60 (0111100)
+46 + 15 = 61 (0111101)
+46 + 16 = 62 (0111110)
+46 + 17 = 63 (0111111)
+46 + 18 = 64 (1000000)
+46 + 19 = 65 (1000001)
+46 + 20 = 66 (1000010)
+46 + 21 = 67 (1000011)
+46 + 22 = 68 (1000100)
+46 + 23 = 69 (1000101)
+46 + 24 = 70 (1000110)
+46 + 25 = 71 (1000111)
+46 + 26 = 72 (1001000)
+46 + 27 = 73 (1001001)
+46 + 28 = 74 (1001010)
+46 + 29 = 75 (1001011)
+46 + 30 = 76 (1001100)
+46 + 31 = 77 (1001101)
+46 + 32 = 78 (1001110)
+46 + 33 = 79 (1001111)
+46 + 34 = 80 (1010000)
+46 + 35 = 81 (1010001)
+46 + 36 = 82 (1010010)
+46 + 37 = 83 (1010011)
+46 + 38 = 84 (1010100)
+46 + 39 = 85 (1010101)
+46 + 40 = 86 (1010110)
+46 + 41 = 87 (1010111)
+46 + 42 = 88 (1011000)
+46 + 43 = 89 (1011001)
+46 + 44 = 90 (1011010)
+46 + 45 = 91 (1011011)
+46 + 46 = 92 (1011100)
+46 + 47 = 93 (1011101)
+46 + 48 = 94 (1011110)
+46 + 49 = 95 (1011111)
+46 + 50 = 96 (1100000)
+46 + 51 = 97 (1100001)
+46 + 52 = 98 (1100010)
+46 + 53 = 99 (1100011)
+46 + 54 = 100 (1100100)
+46 + 55 = 101 (1100101)
+46 + 56 = 102 (1100110)
+46 + 57 = 103 (1100111)
+46 + 58 = 104 (1101000)
+46 + 59 = 105 (1101001)
+46 + 60 = 106 (1101010)
+46 + 61 = 107 (1101011)
+46 + 62 = 108 (1101100)
+46 + 63 = 109 (1101101)
+47 + 0 = 47 (0101111)
+47 + 1 = 48 (0110000)
+47 + 2 = 49 (0110001)
+47 + 3 = 50 (0110010)
+47 + 4 = 51 (0110011)
+47 + 5 = 52 (0110100)
+47 + 6 = 53 (0110101)
+47 + 7 = 54 (0110110)
+47 + 8 = 55 (0110111)
+47 + 9 = 56 (0111000)
+47 + 10 = 57 (0111001)
+47 + 11 = 58 (0111010)
+47 + 12 = 59 (0111011)
+47 + 13 = 60 (0111100)
+47 + 14 = 61 (0111101)
+47 + 15 = 62 (0111110)
+47 + 16 = 63 (0111111)
+47 + 17 = 64 (1000000)
+47 + 18 = 65 (1000001)
+47 + 19 = 66 (1000010)
+47 + 20 = 67 (1000011)
+47 + 21 = 68 (1000100)
+47 + 22 = 69 (1000101)
+47 + 23 = 70 (1000110)
+47 + 24 = 71 (1000111)
+47 + 25 = 72 (1001000)
+47 + 26 = 73 (1001001)
+47 + 27 = 74 (1001010)
+47 + 28 = 75 (1001011)
+47 + 29 = 76 (1001100)
+47 + 30 = 77 (1001101)
+47 + 31 = 78 (1001110)
+47 + 32 = 79 (1001111)
+47 + 33 = 80 (1010000)
+47 + 34 = 81 (1010001)
+47 + 35 = 82 (1010010)
+47 + 36 = 83 (1010011)
+47 + 37 = 84 (1010100)
+47 + 38 = 85 (1010101)
+47 + 39 = 86 (1010110)
+47 + 40 = 87 (1010111)
+47 + 41 = 88 (1011000)
+47 + 42 = 89 (1011001)
+47 + 43 = 90 (1011010)
+47 + 44 = 91 (1011011)
+47 + 45 = 92 (1011100)
+47 + 46 = 93 (1011101)
+47 + 47 = 94 (1011110)
+47 + 48 = 95 (1011111)
+47 + 49 = 96 (1100000)
+47 + 50 = 97 (1100001)
+47 + 51 = 98 (1100010)
+47 + 52 = 99 (1100011)
+47 + 53 = 100 (1100100)
+47 + 54 = 101 (1100101)
+47 + 55 = 102 (1100110)
+47 + 56 = 103 (1100111)
+47 + 57 = 104 (1101000)
+47 + 58 = 105 (1101001)
+47 + 59 = 106 (1101010)
+47 + 60 = 107 (1101011)
+47 + 61 = 108 (1101100)
+47 + 62 = 109 (1101101)
+47 + 63 = 110 (1101110)
+48 + 0 = 48 (0110000)
+48 + 1 = 49 (0110001)
+48 + 2 = 50 (0110010)
+48 + 3 = 51 (0110011)
+48 + 4 = 52 (0110100)
+48 + 5 = 53 (0110101)
+48 + 6 = 54 (0110110)
+48 + 7 = 55 (0110111)
+48 + 8 = 56 (0111000)
+48 + 9 = 57 (0111001)
+48 + 10 = 58 (0111010)
+48 + 11 = 59 (0111011)
+48 + 12 = 60 (0111100)
+48 + 13 = 61 (0111101)
+48 + 14 = 62 (0111110)
+48 + 15 = 63 (0111111)
+48 + 16 = 64 (1000000)
+48 + 17 = 65 (1000001)
+48 + 18 = 66 (1000010)
+48 + 19 = 67 (1000011)
+48 + 20 = 68 (1000100)
+48 + 21 = 69 (1000101)
+48 + 22 = 70 (1000110)
+48 + 23 = 71 (1000111)
+48 + 24 = 72 (1001000)
+48 + 25 = 73 (1001001)
+48 + 26 = 74 (1001010)
+48 + 27 = 75 (1001011)
+48 + 28 = 76 (1001100)
+48 + 29 = 77 (1001101)
+48 + 30 = 78 (1001110)
+48 + 31 = 79 (1001111)
+48 + 32 = 80 (1010000)
+48 + 33 = 81 (1010001)
+48 + 34 = 82 (1010010)
+48 + 35 = 83 (1010011)
+48 + 36 = 84 (1010100)
+48 + 37 = 85 (1010101)
+48 + 38 = 86 (1010110)
+48 + 39 = 87 (1010111)
+48 + 40 = 88 (1011000)
+48 + 41 = 89 (1011001)
+48 + 42 = 90 (1011010)
+48 + 43 = 91 (1011011)
+48 + 44 = 92 (1011100)
+48 + 45 = 93 (1011101)
+48 + 46 = 94 (1011110)
+48 + 47 = 95 (1011111)
+48 + 48 = 96 (1100000)
+48 + 49 = 97 (1100001)
+48 + 50 = 98 (1100010)
+48 + 51 = 99 (1100011)
+48 + 52 = 100 (1100100)
+48 + 53 = 101 (1100101)
+48 + 54 = 102 (1100110)
+48 + 55 = 103 (1100111)
+48 + 56 = 104 (1101000)
+48 + 57 = 105 (1101001)
+48 + 58 = 106 (1101010)
+48 + 59 = 107 (1101011)
+48 + 60 = 108 (1101100)
+48 + 61 = 109 (1101101)
+48 + 62 = 110 (1101110)
+48 + 63 = 111 (1101111)
+49 + 0 = 49 (0110001)
+49 + 1 = 50 (0110010)
+49 + 2 = 51 (0110011)
+49 + 3 = 52 (0110100)
+49 + 4 = 53 (0110101)
+49 + 5 = 54 (0110110)
+49 + 6 = 55 (0110111)
+49 + 7 = 56 (0111000)
+49 + 8 = 57 (0111001)
+49 + 9 = 58 (0111010)
+49 + 10 = 59 (0111011)
+49 + 11 = 60 (0111100)
+49 + 12 = 61 (0111101)
+49 + 13 = 62 (0111110)
+49 + 14 = 63 (0111111)
+49 + 15 = 64 (1000000)
+49 + 16 = 65 (1000001)
+49 + 17 = 66 (1000010)
+49 + 18 = 67 (1000011)
+49 + 19 = 68 (1000100)
+49 + 20 = 69 (1000101)
+49 + 21 = 70 (1000110)
+49 + 22 = 71 (1000111)
+49 + 23 = 72 (1001000)
+49 + 24 = 73 (1001001)
+49 + 25 = 74 (1001010)
+49 + 26 = 75 (1001011)
+49 + 27 = 76 (1001100)
+49 + 28 = 77 (1001101)
+49 + 29 = 78 (1001110)
+49 + 30 = 79 (1001111)
+49 + 31 = 80 (1010000)
+49 + 32 = 81 (1010001)
+49 + 33 = 82 (1010010)
+49 + 34 = 83 (1010011)
+49 + 35 = 84 (1010100)
+49 + 36 = 85 (1010101)
+49 + 37 = 86 (1010110)
+49 + 38 = 87 (1010111)
+49 + 39 = 88 (1011000)
+49 + 40 = 89 (1011001)
+49 + 41 = 90 (1011010)
+49 + 42 = 91 (1011011)
+49 + 43 = 92 (1011100)
+49 + 44 = 93 (1011101)
+49 + 45 = 94 (1011110)
+49 + 46 = 95 (1011111)
+49 + 47 = 96 (1100000)
+49 + 48 = 97 (1100001)
+49 + 49 = 98 (1100010)
+49 + 50 = 99 (1100011)
+49 + 51 = 100 (1100100)
+49 + 52 = 101 (1100101)
+49 + 53 = 102 (1100110)
+49 + 54 = 103 (1100111)
+49 + 55 = 104 (1101000)
+49 + 56 = 105 (1101001)
+49 + 57 = 106 (1101010)
+49 + 58 = 107 (1101011)
+49 + 59 = 108 (1101100)
+49 + 60 = 109 (1101101)
+49 + 61 = 110 (1101110)
+49 + 62 = 111 (1101111)
+49 + 63 = 112 (1110000)
+50 + 0 = 50 (0110010)
+50 + 1 = 51 (0110011)
+50 + 2 = 52 (0110100)
+50 + 3 = 53 (0110101)
+50 + 4 = 54 (0110110)
+50 + 5 = 55 (0110111)
+50 + 6 = 56 (0111000)
+50 + 7 = 57 (0111001)
+50 + 8 = 58 (0111010)
+50 + 9 = 59 (0111011)
+50 + 10 = 60 (0111100)
+50 + 11 = 61 (0111101)
+50 + 12 = 62 (0111110)
+50 + 13 = 63 (0111111)
+50 + 14 = 64 (1000000)
+50 + 15 = 65 (1000001)
+50 + 16 = 66 (1000010)
+50 + 17 = 67 (1000011)
+50 + 18 = 68 (1000100)
+50 + 19 = 69 (1000101)
+50 + 20 = 70 (1000110)
+50 + 21 = 71 (1000111)
+50 + 22 = 72 (1001000)
+50 + 23 = 73 (1001001)
+50 + 24 = 74 (1001010)
+50 + 25 = 75 (1001011)
+50 + 26 = 76 (1001100)
+50 + 27 = 77 (1001101)
+50 + 28 = 78 (1001110)
+50 + 29 = 79 (1001111)
+50 + 30 = 80 (1010000)
+50 + 31 = 81 (1010001)
+50 + 32 = 82 (1010010)
+50 + 33 = 83 (1010011)
+50 + 34 = 84 (1010100)
+50 + 35 = 85 (1010101)
+50 + 36 = 86 (1010110)
+50 + 37 = 87 (1010111)
+50 + 38 = 88 (1011000)
+50 + 39 = 89 (1011001)
+50 + 40 = 90 (1011010)
+50 + 41 = 91 (1011011)
+50 + 42 = 92 (1011100)
+50 + 43 = 93 (1011101)
+50 + 44 = 94 (1011110)
+50 + 45 = 95 (1011111)
+50 + 46 = 96 (1100000)
+50 + 47 = 97 (1100001)
+50 + 48 = 98 (1100010)
+50 + 49 = 99 (1100011)
+50 + 50 = 100 (1100100)
+50 + 51 = 101 (1100101)
+50 + 52 = 102 (1100110)
+50 + 53 = 103 (1100111)
+50 + 54 = 104 (1101000)
+50 + 55 = 105 (1101001)
+50 + 56 = 106 (1101010)
+50 + 57 = 107 (1101011)
+50 + 58 = 108 (1101100)
+50 + 59 = 109 (1101101)
+50 + 60 = 110 (1101110)
+50 + 61 = 111 (1101111)
+50 + 62 = 112 (1110000)
+50 + 63 = 113 (1110001)
+51 + 0 = 51 (0110011)
+51 + 1 = 52 (0110100)
+51 + 2 = 53 (0110101)
+51 + 3 = 54 (0110110)
+51 + 4 = 55 (0110111)
+51 + 5 = 56 (0111000)
+51 + 6 = 57 (0111001)
+51 + 7 = 58 (0111010)
+51 + 8 = 59 (0111011)
+51 + 9 = 60 (0111100)
+51 + 10 = 61 (0111101)
+51 + 11 = 62 (0111110)
+51 + 12 = 63 (0111111)
+51 + 13 = 64 (1000000)
+51 + 14 = 65 (1000001)
+51 + 15 = 66 (1000010)
+51 + 16 = 67 (1000011)
+51 + 17 = 68 (1000100)
+51 + 18 = 69 (1000101)
+51 + 19 = 70 (1000110)
+51 + 20 = 71 (1000111)
+51 + 21 = 72 (1001000)
+51 + 22 = 73 (1001001)
+51 + 23 = 74 (1001010)
+51 + 24 = 75 (1001011)
+51 + 25 = 76 (1001100)
+51 + 26 = 77 (1001101)
+51 + 27 = 78 (1001110)
+51 + 28 = 79 (1001111)
+51 + 29 = 80 (1010000)
+51 + 30 = 81 (1010001)
+51 + 31 = 82 (1010010)
+51 + 32 = 83 (1010011)
+51 + 33 = 84 (1010100)
+51 + 34 = 85 (1010101)
+51 + 35 = 86 (1010110)
+51 + 36 = 87 (1010111)
+51 + 37 = 88 (1011000)
+51 + 38 = 89 (1011001)
+51 + 39 = 90 (1011010)
+51 + 40 = 91 (1011011)
+51 + 41 = 92 (1011100)
+51 + 42 = 93 (1011101)
+51 + 43 = 94 (1011110)
+51 + 44 = 95 (1011111)
+51 + 45 = 96 (1100000)
+51 + 46 = 97 (1100001)
+51 + 47 = 98 (1100010)
+51 + 48 = 99 (1100011)
+51 + 49 = 100 (1100100)
+51 + 50 = 101 (1100101)
+51 + 51 = 102 (1100110)
+51 + 52 = 103 (1100111)
+51 + 53 = 104 (1101000)
+51 + 54 = 105 (1101001)
+51 + 55 = 106 (1101010)
+51 + 56 = 107 (1101011)
+51 + 57 = 108 (1101100)
+51 + 58 = 109 (1101101)
+51 + 59 = 110 (1101110)
+51 + 60 = 111 (1101111)
+51 + 61 = 112 (1110000)
+51 + 62 = 113 (1110001)
+51 + 63 = 114 (1110010)
+52 + 0 = 52 (0110100)
+52 + 1 = 53 (0110101)
+52 + 2 = 54 (0110110)
+52 + 3 = 55 (0110111)
+52 + 4 = 56 (0111000)
+52 + 5 = 57 (0111001)
+52 + 6 = 58 (0111010)
+52 + 7 = 59 (0111011)
+52 + 8 = 60 (0111100)
+52 + 9 = 61 (0111101)
+52 + 10 = 62 (0111110)
+52 + 11 = 63 (0111111)
+52 + 12 = 64 (1000000)
+52 + 13 = 65 (1000001)
+52 + 14 = 66 (1000010)
+52 + 15 = 67 (1000011)
+52 + 16 = 68 (1000100)
+52 + 17 = 69 (1000101)
+52 + 18 = 70 (1000110)
+52 + 19 = 71 (1000111)
+52 + 20 = 72 (1001000)
+52 + 21 = 73 (1001001)
+52 + 22 = 74 (1001010)
+52 + 23 = 75 (1001011)
+52 + 24 = 76 (1001100)
+52 + 25 = 77 (1001101)
+52 + 26 = 78 (1001110)
+52 + 27 = 79 (1001111)
+52 + 28 = 80 (1010000)
+52 + 29 = 81 (1010001)
+52 + 30 = 82 (1010010)
+52 + 31 = 83 (1010011)
+52 + 32 = 84 (1010100)
+52 + 33 = 85 (1010101)
+52 + 34 = 86 (1010110)
+52 + 35 = 87 (1010111)
+52 + 36 = 88 (1011000)
+52 + 37 = 89 (1011001)
+52 + 38 = 90 (1011010)
+52 + 39 = 91 (1011011)
+52 + 40 = 92 (1011100)
+52 + 41 = 93 (1011101)
+52 + 42 = 94 (1011110)
+52 + 43 = 95 (1011111)
+52 + 44 = 96 (1100000)
+52 + 45 = 97 (1100001)
+52 + 46 = 98 (1100010)
+52 + 47 = 99 (1100011)
+52 + 48 = 100 (1100100)
+52 + 49 = 101 (1100101)
+52 + 50 = 102 (1100110)
+52 + 51 = 103 (1100111)
+52 + 52 = 104 (1101000)
+52 + 53 = 105 (1101001)
+52 + 54 = 106 (1101010)
+52 + 55 = 107 (1101011)
+52 + 56 = 108 (1101100)
+52 + 57 = 109 (1101101)
+52 + 58 = 110 (1101110)
+52 + 59 = 111 (1101111)
+52 + 60 = 112 (1110000)
+52 + 61 = 113 (1110001)
+52 + 62 = 114 (1110010)
+52 + 63 = 115 (1110011)
+53 + 0 = 53 (0110101)
+53 + 1 = 54 (0110110)
+53 + 2 = 55 (0110111)
+53 + 3 = 56 (0111000)
+53 + 4 = 57 (0111001)
+53 + 5 = 58 (0111010)
+53 + 6 = 59 (0111011)
+53 + 7 = 60 (0111100)
+53 + 8 = 61 (0111101)
+53 + 9 = 62 (0111110)
+53 + 10 = 63 (0111111)
+53 + 11 = 64 (1000000)
+53 + 12 = 65 (1000001)
+53 + 13 = 66 (1000010)
+53 + 14 = 67 (1000011)
+53 + 15 = 68 (1000100)
+53 + 16 = 69 (1000101)
+53 + 17 = 70 (1000110)
+53 + 18 = 71 (1000111)
+53 + 19 = 72 (1001000)
+53 + 20 = 73 (1001001)
+53 + 21 = 74 (1001010)
+53 + 22 = 75 (1001011)
+53 + 23 = 76 (1001100)
+53 + 24 = 77 (1001101)
+53 + 25 = 78 (1001110)
+53 + 26 = 79 (1001111)
+53 + 27 = 80 (1010000)
+53 + 28 = 81 (1010001)
+53 + 29 = 82 (1010010)
+53 + 30 = 83 (1010011)
+53 + 31 = 84 (1010100)
+53 + 32 = 85 (1010101)
+53 + 33 = 86 (1010110)
+53 + 34 = 87 (1010111)
+53 + 35 = 88 (1011000)
+53 + 36 = 89 (1011001)
+53 + 37 = 90 (1011010)
+53 + 38 = 91 (1011011)
+53 + 39 = 92 (1011100)
+53 + 40 = 93 (1011101)
+53 + 41 = 94 (1011110)
+53 + 42 = 95 (1011111)
+53 + 43 = 96 (1100000)
+53 + 44 = 97 (1100001)
+53 + 45 = 98 (1100010)
+53 + 46 = 99 (1100011)
+53 + 47 = 100 (1100100)
+53 + 48 = 101 (1100101)
+53 + 49 = 102 (1100110)
+53 + 50 = 103 (1100111)
+53 + 51 = 104 (1101000)
+53 + 52 = 105 (1101001)
+53 + 53 = 106 (1101010)
+53 + 54 = 107 (1101011)
+53 + 55 = 108 (1101100)
+53 + 56 = 109 (1101101)
+53 + 57 = 110 (1101110)
+53 + 58 = 111 (1101111)
+53 + 59 = 112 (1110000)
+53 + 60 = 113 (1110001)
+53 + 61 = 114 (1110010)
+53 + 62 = 115 (1110011)
+53 + 63 = 116 (1110100)
+54 + 0 = 54 (0110110)
+54 + 1 = 55 (0110111)
+54 + 2 = 56 (0111000)
+54 + 3 = 57 (0111001)
+54 + 4 = 58 (0111010)
+54 + 5 = 59 (0111011)
+54 + 6 = 60 (0111100)
+54 + 7 = 61 (0111101)
+54 + 8 = 62 (0111110)
+54 + 9 = 63 (0111111)
+54 + 10 = 64 (1000000)
+54 + 11 = 65 (1000001)
+54 + 12 = 66 (1000010)
+54 + 13 = 67 (1000011)
+54 + 14 = 68 (1000100)
+54 + 15 = 69 (1000101)
+54 + 16 = 70 (1000110)
+54 + 17 = 71 (1000111)
+54 + 18 = 72 (1001000)
+54 + 19 = 73 (1001001)
+54 + 20 = 74 (1001010)
+54 + 21 = 75 (1001011)
+54 + 22 = 76 (1001100)
+54 + 23 = 77 (1001101)
+54 + 24 = 78 (1001110)
+54 + 25 = 79 (1001111)
+54 + 26 = 80 (1010000)
+54 + 27 = 81 (1010001)
+54 + 28 = 82 (1010010)
+54 + 29 = 83 (1010011)
+54 + 30 = 84 (1010100)
+54 + 31 = 85 (1010101)
+54 + 32 = 86 (1010110)
+54 + 33 = 87 (1010111)
+54 + 34 = 88 (1011000)
+54 + 35 = 89 (1011001)
+54 + 36 = 90 (1011010)
+54 + 37 = 91 (1011011)
+54 + 38 = 92 (1011100)
+54 + 39 = 93 (1011101)
+54 + 40 = 94 (1011110)
+54 + 41 = 95 (1011111)
+54 + 42 = 96 (1100000)
+54 + 43 = 97 (1100001)
+54 + 44 = 98 (1100010)
+54 + 45 = 99 (1100011)
+54 + 46 = 100 (1100100)
+54 + 47 = 101 (1100101)
+54 + 48 = 102 (1100110)
+54 + 49 = 103 (1100111)
+54 + 50 = 104 (1101000)
+54 + 51 = 105 (1101001)
+54 + 52 = 106 (1101010)
+54 + 53 = 107 (1101011)
+54 + 54 = 108 (1101100)
+54 + 55 = 109 (1101101)
+54 + 56 = 110 (1101110)
+54 + 57 = 111 (1101111)
+54 + 58 = 112 (1110000)
+54 + 59 = 113 (1110001)
+54 + 60 = 114 (1110010)
+54 + 61 = 115 (1110011)
+54 + 62 = 116 (1110100)
+54 + 63 = 117 (1110101)
+55 + 0 = 55 (0110111)
+55 + 1 = 56 (0111000)
+55 + 2 = 57 (0111001)
+55 + 3 = 58 (0111010)
+55 + 4 = 59 (0111011)
+55 + 5 = 60 (0111100)
+55 + 6 = 61 (0111101)
+55 + 7 = 62 (0111110)
+55 + 8 = 63 (0111111)
+55 + 9 = 64 (1000000)
+55 + 10 = 65 (1000001)
+55 + 11 = 66 (1000010)
+55 + 12 = 67 (1000011)
+55 + 13 = 68 (1000100)
+55 + 14 = 69 (1000101)
+55 + 15 = 70 (1000110)
+55 + 16 = 71 (1000111)
+55 + 17 = 72 (1001000)
+55 + 18 = 73 (1001001)
+55 + 19 = 74 (1001010)
+55 + 20 = 75 (1001011)
+55 + 21 = 76 (1001100)
+55 + 22 = 77 (1001101)
+55 + 23 = 78 (1001110)
+55 + 24 = 79 (1001111)
+55 + 25 = 80 (1010000)
+55 + 26 = 81 (1010001)
+55 + 27 = 82 (1010010)
+55 + 28 = 83 (1010011)
+55 + 29 = 84 (1010100)
+55 + 30 = 85 (1010101)
+55 + 31 = 86 (1010110)
+55 + 32 = 87 (1010111)
+55 + 33 = 88 (1011000)
+55 + 34 = 89 (1011001)
+55 + 35 = 90 (1011010)
+55 + 36 = 91 (1011011)
+55 + 37 = 92 (1011100)
+55 + 38 = 93 (1011101)
+55 + 39 = 94 (1011110)
+55 + 40 = 95 (1011111)
+55 + 41 = 96 (1100000)
+55 + 42 = 97 (1100001)
+55 + 43 = 98 (1100010)
+55 + 44 = 99 (1100011)
+55 + 45 = 100 (1100100)
+55 + 46 = 101 (1100101)
+55 + 47 = 102 (1100110)
+55 + 48 = 103 (1100111)
+55 + 49 = 104 (1101000)
+55 + 50 = 105 (1101001)
+55 + 51 = 106 (1101010)
+55 + 52 = 107 (1101011)
+55 + 53 = 108 (1101100)
+55 + 54 = 109 (1101101)
+55 + 55 = 110 (1101110)
+55 + 56 = 111 (1101111)
+55 + 57 = 112 (1110000)
+55 + 58 = 113 (1110001)
+55 + 59 = 114 (1110010)
+55 + 60 = 115 (1110011)
+55 + 61 = 116 (1110100)
+55 + 62 = 117 (1110101)
+55 + 63 = 118 (1110110)
+56 + 0 = 56 (0111000)
+56 + 1 = 57 (0111001)
+56 + 2 = 58 (0111010)
+56 + 3 = 59 (0111011)
+56 + 4 = 60 (0111100)
+56 + 5 = 61 (0111101)
+56 + 6 = 62 (0111110)
+56 + 7 = 63 (0111111)
+56 + 8 = 64 (1000000)
+56 + 9 = 65 (1000001)
+56 + 10 = 66 (1000010)
+56 + 11 = 67 (1000011)
+56 + 12 = 68 (1000100)
+56 + 13 = 69 (1000101)
+56 + 14 = 70 (1000110)
+56 + 15 = 71 (1000111)
+56 + 16 = 72 (1001000)
+56 + 17 = 73 (1001001)
+56 + 18 = 74 (1001010)
+56 + 19 = 75 (1001011)
+56 + 20 = 76 (1001100)
+56 + 21 = 77 (1001101)
+56 + 22 = 78 (1001110)
+56 + 23 = 79 (1001111)
+56 + 24 = 80 (1010000)
+56 + 25 = 81 (1010001)
+56 + 26 = 82 (1010010)
+56 + 27 = 83 (1010011)
+56 + 28 = 84 (1010100)
+56 + 29 = 85 (1010101)
+56 + 30 = 86 (1010110)
+56 + 31 = 87 (1010111)
+56 + 32 = 88 (1011000)
+56 + 33 = 89 (1011001)
+56 + 34 = 90 (1011010)
+56 + 35 = 91 (1011011)
+56 + 36 = 92 (1011100)
+56 + 37 = 93 (1011101)
+56 + 38 = 94 (1011110)
+56 + 39 = 95 (1011111)
+56 + 40 = 96 (1100000)
+56 + 41 = 97 (1100001)
+56 + 42 = 98 (1100010)
+56 + 43 = 99 (1100011)
+56 + 44 = 100 (1100100)
+56 + 45 = 101 (1100101)
+56 + 46 = 102 (1100110)
+56 + 47 = 103 (1100111)
+56 + 48 = 104 (1101000)
+56 + 49 = 105 (1101001)
+56 + 50 = 106 (1101010)
+56 + 51 = 107 (1101011)
+56 + 52 = 108 (1101100)
+56 + 53 = 109 (1101101)
+56 + 54 = 110 (1101110)
+56 + 55 = 111 (1101111)
+56 + 56 = 112 (1110000)
+56 + 57 = 113 (1110001)
+56 + 58 = 114 (1110010)
+56 + 59 = 115 (1110011)
+56 + 60 = 116 (1110100)
+56 + 61 = 117 (1110101)
+56 + 62 = 118 (1110110)
+56 + 63 = 119 (1110111)
+57 + 0 = 57 (0111001)
+57 + 1 = 58 (0111010)
+57 + 2 = 59 (0111011)
+57 + 3 = 60 (0111100)
+57 + 4 = 61 (0111101)
+57 + 5 = 62 (0111110)
+57 + 6 = 63 (0111111)
+57 + 7 = 64 (1000000)
+57 + 8 = 65 (1000001)
+57 + 9 = 66 (1000010)
+57 + 10 = 67 (1000011)
+57 + 11 = 68 (1000100)
+57 + 12 = 69 (1000101)
+57 + 13 = 70 (1000110)
+57 + 14 = 71 (1000111)
+57 + 15 = 72 (1001000)
+57 + 16 = 73 (1001001)
+57 + 17 = 74 (1001010)
+57 + 18 = 75 (1001011)
+57 + 19 = 76 (1001100)
+57 + 20 = 77 (1001101)
+57 + 21 = 78 (1001110)
+57 + 22 = 79 (1001111)
+57 + 23 = 80 (1010000)
+57 + 24 = 81 (1010001)
+57 + 25 = 82 (1010010)
+57 + 26 = 83 (1010011)
+57 + 27 = 84 (1010100)
+57 + 28 = 85 (1010101)
+57 + 29 = 86 (1010110)
+57 + 30 = 87 (1010111)
+57 + 31 = 88 (1011000)
+57 + 32 = 89 (1011001)
+57 + 33 = 90 (1011010)
+57 + 34 = 91 (1011011)
+57 + 35 = 92 (1011100)
+57 + 36 = 93 (1011101)
+57 + 37 = 94 (1011110)
+57 + 38 = 95 (1011111)
+57 + 39 = 96 (1100000)
+57 + 40 = 97 (1100001)
+57 + 41 = 98 (1100010)
+57 + 42 = 99 (1100011)
+57 + 43 = 100 (1100100)
+57 + 44 = 101 (1100101)
+57 + 45 = 102 (1100110)
+57 + 46 = 103 (1100111)
+57 + 47 = 104 (1101000)
+57 + 48 = 105 (1101001)
+57 + 49 = 106 (1101010)
+57 + 50 = 107 (1101011)
+57 + 51 = 108 (1101100)
+57 + 52 = 109 (1101101)
+57 + 53 = 110 (1101110)
+57 + 54 = 111 (1101111)
+57 + 55 = 112 (1110000)
+57 + 56 = 113 (1110001)
+57 + 57 = 114 (1110010)
+57 + 58 = 115 (1110011)
+57 + 59 = 116 (1110100)
+57 + 60 = 117 (1110101)
+57 + 61 = 118 (1110110)
+57 + 62 = 119 (1110111)
+57 + 63 = 120 (1111000)
+58 + 0 = 58 (0111010)
+58 + 1 = 59 (0111011)
+58 + 2 = 60 (0111100)
+58 + 3 = 61 (0111101)
+58 + 4 = 62 (0111110)
+58 + 5 = 63 (0111111)
+58 + 6 = 64 (1000000)
+58 + 7 = 65 (1000001)
+58 + 8 = 66 (1000010)
+58 + 9 = 67 (1000011)
+58 + 10 = 68 (1000100)
+58 + 11 = 69 (1000101)
+58 + 12 = 70 (1000110)
+58 + 13 = 71 (1000111)
+58 + 14 = 72 (1001000)
+58 + 15 = 73 (1001001)
+58 + 16 = 74 (1001010)
+58 + 17 = 75 (1001011)
+58 + 18 = 76 (1001100)
+58 + 19 = 77 (1001101)
+58 + 20 = 78 (1001110)
+58 + 21 = 79 (1001111)
+58 + 22 = 80 (1010000)
+58 + 23 = 81 (1010001)
+58 + 24 = 82 (1010010)
+58 + 25 = 83 (1010011)
+58 + 26 = 84 (1010100)
+58 + 27 = 85 (1010101)
+58 + 28 = 86 (1010110)
+58 + 29 = 87 (1010111)
+58 + 30 = 88 (1011000)
+58 + 31 = 89 (1011001)
+58 + 32 = 90 (1011010)
+58 + 33 = 91 (1011011)
+58 + 34 = 92 (1011100)
+58 + 35 = 93 (1011101)
+58 + 36 = 94 (1011110)
+58 + 37 = 95 (1011111)
+58 + 38 = 96 (1100000)
+58 + 39 = 97 (1100001)
+58 + 40 = 98 (1100010)
+58 + 41 = 99 (1100011)
+58 + 42 = 100 (1100100)
+58 + 43 = 101 (1100101)
+58 + 44 = 102 (1100110)
+58 + 45 = 103 (1100111)
+58 + 46 = 104 (1101000)
+58 + 47 = 105 (1101001)
+58 + 48 = 106 (1101010)
+58 + 49 = 107 (1101011)
+58 + 50 = 108 (1101100)
+58 + 51 = 109 (1101101)
+58 + 52 = 110 (1101110)
+58 + 53 = 111 (1101111)
+58 + 54 = 112 (1110000)
+58 + 55 = 113 (1110001)
+58 + 56 = 114 (1110010)
+58 + 57 = 115 (1110011)
+58 + 58 = 116 (1110100)
+58 + 59 = 117 (1110101)
+58 + 60 = 118 (1110110)
+58 + 61 = 119 (1110111)
+58 + 62 = 120 (1111000)
+58 + 63 = 121 (1111001)
+59 + 0 = 59 (0111011)
+59 + 1 = 60 (0111100)
+59 + 2 = 61 (0111101)
+59 + 3 = 62 (0111110)
+59 + 4 = 63 (0111111)
+59 + 5 = 64 (1000000)
+59 + 6 = 65 (1000001)
+59 + 7 = 66 (1000010)
+59 + 8 = 67 (1000011)
+59 + 9 = 68 (1000100)
+59 + 10 = 69 (1000101)
+59 + 11 = 70 (1000110)
+59 + 12 = 71 (1000111)
+59 + 13 = 72 (1001000)
+59 + 14 = 73 (1001001)
+59 + 15 = 74 (1001010)
+59 + 16 = 75 (1001011)
+59 + 17 = 76 (1001100)
+59 + 18 = 77 (1001101)
+59 + 19 = 78 (1001110)
+59 + 20 = 79 (1001111)
+59 + 21 = 80 (1010000)
+59 + 22 = 81 (1010001)
+59 + 23 = 82 (1010010)
+59 + 24 = 83 (1010011)
+59 + 25 = 84 (1010100)
+59 + 26 = 85 (1010101)
+59 + 27 = 86 (1010110)
+59 + 28 = 87 (1010111)
+59 + 29 = 88 (1011000)
+59 + 30 = 89 (1011001)
+59 + 31 = 90 (1011010)
+59 + 32 = 91 (1011011)
+59 + 33 = 92 (1011100)
+59 + 34 = 93 (1011101)
+59 + 35 = 94 (1011110)
+59 + 36 = 95 (1011111)
+59 + 37 = 96 (1100000)
+59 + 38 = 97 (1100001)
+59 + 39 = 98 (1100010)
+59 + 40 = 99 (1100011)
+59 + 41 = 100 (1100100)
+59 + 42 = 101 (1100101)
+59 + 43 = 102 (1100110)
+59 + 44 = 103 (1100111)
+59 + 45 = 104 (1101000)
+59 + 46 = 105 (1101001)
+59 + 47 = 106 (1101010)
+59 + 48 = 107 (1101011)
+59 + 49 = 108 (1101100)
+59 + 50 = 109 (1101101)
+59 + 51 = 110 (1101110)
+59 + 52 = 111 (1101111)
+59 + 53 = 112 (1110000)
+59 + 54 = 113 (1110001)
+59 + 55 = 114 (1110010)
+59 + 56 = 115 (1110011)
+59 + 57 = 116 (1110100)
+59 + 58 = 117 (1110101)
+59 + 59 = 118 (1110110)
+59 + 60 = 119 (1110111)
+59 + 61 = 120 (1111000)
+59 + 62 = 121 (1111001)
+59 + 63 = 122 (1111010)
+60 + 0 = 60 (0111100)
+60 + 1 = 61 (0111101)
+60 + 2 = 62 (0111110)
+60 + 3 = 63 (0111111)
+60 + 4 = 64 (1000000)
+60 + 5 = 65 (1000001)
+60 + 6 = 66 (1000010)
+60 + 7 = 67 (1000011)
+60 + 8 = 68 (1000100)
+60 + 9 = 69 (1000101)
+60 + 10 = 70 (1000110)
+60 + 11 = 71 (1000111)
+60 + 12 = 72 (1001000)
+60 + 13 = 73 (1001001)
+60 + 14 = 74 (1001010)
+60 + 15 = 75 (1001011)
+60 + 16 = 76 (1001100)
+60 + 17 = 77 (1001101)
+60 + 18 = 78 (1001110)
+60 + 19 = 79 (1001111)
+60 + 20 = 80 (1010000)
+60 + 21 = 81 (1010001)
+60 + 22 = 82 (1010010)
+60 + 23 = 83 (1010011)
+60 + 24 = 84 (1010100)
+60 + 25 = 85 (1010101)
+60 + 26 = 86 (1010110)
+60 + 27 = 87 (1010111)
+60 + 28 = 88 (1011000)
+60 + 29 = 89 (1011001)
+60 + 30 = 90 (1011010)
+60 + 31 = 91 (1011011)
+60 + 32 = 92 (1011100)
+60 + 33 = 93 (1011101)
+60 + 34 = 94 (1011110)
+60 + 35 = 95 (1011111)
+60 + 36 = 96 (1100000)
+60 + 37 = 97 (1100001)
+60 + 38 = 98 (1100010)
+60 + 39 = 99 (1100011)
+60 + 40 = 100 (1100100)
+60 + 41 = 101 (1100101)
+60 + 42 = 102 (1100110)
+60 + 43 = 103 (1100111)
+60 + 44 = 104 (1101000)
+60 + 45 = 105 (1101001)
+60 + 46 = 106 (1101010)
+60 + 47 = 107 (1101011)
+60 + 48 = 108 (1101100)
+60 + 49 = 109 (1101101)
+60 + 50 = 110 (1101110)
+60 + 51 = 111 (1101111)
+60 + 52 = 112 (1110000)
+60 + 53 = 113 (1110001)
+60 + 54 = 114 (1110010)
+60 + 55 = 115 (1110011)
+60 + 56 = 116 (1110100)
+60 + 57 = 117 (1110101)
+60 + 58 = 118 (1110110)
+60 + 59 = 119 (1110111)
+60 + 60 = 120 (1111000)
+60 + 61 = 121 (1111001)
+60 + 62 = 122 (1111010)
+60 + 63 = 123 (1111011)
+61 + 0 = 61 (0111101)
+61 + 1 = 62 (0111110)
+61 + 2 = 63 (0111111)
+61 + 3 = 64 (1000000)
+61 + 4 = 65 (1000001)
+61 + 5 = 66 (1000010)
+61 + 6 = 67 (1000011)
+61 + 7 = 68 (1000100)
+61 + 8 = 69 (1000101)
+61 + 9 = 70 (1000110)
+61 + 10 = 71 (1000111)
+61 + 11 = 72 (1001000)
+61 + 12 = 73 (1001001)
+61 + 13 = 74 (1001010)
+61 + 14 = 75 (1001011)
+61 + 15 = 76 (1001100)
+61 + 16 = 77 (1001101)
+61 + 17 = 78 (1001110)
+61 + 18 = 79 (1001111)
+61 + 19 = 80 (1010000)
+61 + 20 = 81 (1010001)
+61 + 21 = 82 (1010010)
+61 + 22 = 83 (1010011)
+61 + 23 = 84 (1010100)
+61 + 24 = 85 (1010101)
+61 + 25 = 86 (1010110)
+61 + 26 = 87 (1010111)
+61 + 27 = 88 (1011000)
+61 + 28 = 89 (1011001)
+61 + 29 = 90 (1011010)
+61 + 30 = 91 (1011011)
+61 + 31 = 92 (1011100)
+61 + 32 = 93 (1011101)
+61 + 33 = 94 (1011110)
+61 + 34 = 95 (1011111)
+61 + 35 = 96 (1100000)
+61 + 36 = 97 (1100001)
+61 + 37 = 98 (1100010)
+61 + 38 = 99 (1100011)
+61 + 39 = 100 (1100100)
+61 + 40 = 101 (1100101)
+61 + 41 = 102 (1100110)
+61 + 42 = 103 (1100111)
+61 + 43 = 104 (1101000)
+61 + 44 = 105 (1101001)
+61 + 45 = 106 (1101010)
+61 + 46 = 107 (1101011)
+61 + 47 = 108 (1101100)
+61 + 48 = 109 (1101101)
+61 + 49 = 110 (1101110)
+61 + 50 = 111 (1101111)
+61 + 51 = 112 (1110000)
+61 + 52 = 113 (1110001)
+61 + 53 = 114 (1110010)
+61 + 54 = 115 (1110011)
+61 + 55 = 116 (1110100)
+61 + 56 = 117 (1110101)
+61 + 57 = 118 (1110110)
+61 + 58 = 119 (1110111)
+61 + 59 = 120 (1111000)
+61 + 60 = 121 (1111001)
+61 + 61 = 122 (1111010)
+61 + 62 = 123 (1111011)
+61 + 63 = 124 (1111100)
+62 + 0 = 62 (0111110)
+62 + 1 = 63 (0111111)
+62 + 2 = 64 (1000000)
+62 + 3 = 65 (1000001)
+62 + 4 = 66 (1000010)
+62 + 5 = 67 (1000011)
+62 + 6 = 68 (1000100)
+62 + 7 = 69 (1000101)
+62 + 8 = 70 (1000110)
+62 + 9 = 71 (1000111)
+62 + 10 = 72 (1001000)
+62 + 11 = 73 (1001001)
+62 + 12 = 74 (1001010)
+62 + 13 = 75 (1001011)
+62 + 14 = 76 (1001100)
+62 + 15 = 77 (1001101)
+62 + 16 = 78 (1001110)
+62 + 17 = 79 (1001111)
+62 + 18 = 80 (1010000)
+62 + 19 = 81 (1010001)
+62 + 20 = 82 (1010010)
+62 + 21 = 83 (1010011)
+62 + 22 = 84 (1010100)
+62 + 23 = 85 (1010101)
+62 + 24 = 86 (1010110)
+62 + 25 = 87 (1010111)
+62 + 26 = 88 (1011000)
+62 + 27 = 89 (1011001)
+62 + 28 = 90 (1011010)
+62 + 29 = 91 (1011011)
+62 + 30 = 92 (1011100)
+62 + 31 = 93 (1011101)
+62 + 32 = 94 (1011110)
+62 + 33 = 95 (1011111)
+62 + 34 = 96 (1100000)
+62 + 35 = 97 (1100001)
+62 + 36 = 98 (1100010)
+62 + 37 = 99 (1100011)
+62 + 38 = 100 (1100100)
+62 + 39 = 101 (1100101)
+62 + 40 = 102 (1100110)
+62 + 41 = 103 (1100111)
+62 + 42 = 104 (1101000)
+62 + 43 = 105 (1101001)
+62 + 44 = 106 (1101010)
+62 + 45 = 107 (1101011)
+62 + 46 = 108 (1101100)
+62 + 47 = 109 (1101101)
+62 + 48 = 110 (1101110)
+62 + 49 = 111 (1101111)
+62 + 50 = 112 (1110000)
+62 + 51 = 113 (1110001)
+62 + 52 = 114 (1110010)
+62 + 53 = 115 (1110011)
+62 + 54 = 116 (1110100)
+62 + 55 = 117 (1110101)
+62 + 56 = 118 (1110110)
+62 + 57 = 119 (1110111)
+62 + 58 = 120 (1111000)
+62 + 59 = 121 (1111001)
+62 + 60 = 122 (1111010)
+62 + 61 = 123 (1111011)
+62 + 62 = 124 (1111100)
+62 + 63 = 125 (1111101)
+63 + 0 = 63 (0111111)
+63 + 1 = 64 (1000000)
+63 + 2 = 65 (1000001)
+63 + 3 = 66 (1000010)
+63 + 4 = 67 (1000011)
+63 + 5 = 68 (1000100)
+63 + 6 = 69 (1000101)
+63 + 7 = 70 (1000110)
+63 + 8 = 71 (1000111)
+63 + 9 = 72 (1001000)
+63 + 10 = 73 (1001001)
+63 + 11 = 74 (1001010)
+63 + 12 = 75 (1001011)
+63 + 13 = 76 (1001100)
+63 + 14 = 77 (1001101)
+63 + 15 = 78 (1001110)
+63 + 16 = 79 (1001111)
+63 + 17 = 80 (1010000)
+63 + 18 = 81 (1010001)
+63 + 19 = 82 (1010010)
+63 + 20 = 83 (1010011)
+63 + 21 = 84 (1010100)
+63 + 22 = 85 (1010101)
+63 + 23 = 86 (1010110)
+63 + 24 = 87 (1010111)
+63 + 25 = 88 (1011000)
+63 + 26 = 89 (1011001)
+63 + 27 = 90 (1011010)
+63 + 28 = 91 (1011011)
+63 + 29 = 92 (1011100)
+63 + 30 = 93 (1011101)
+63 + 31 = 94 (1011110)
+63 + 32 = 95 (1011111)
+63 + 33 = 96 (1100000)
+63 + 34 = 97 (1100001)
+63 + 35 = 98 (1100010)
+63 + 36 = 99 (1100011)
+63 + 37 = 100 (1100100)
+63 + 38 = 101 (1100101)
+63 + 39 = 102 (1100110)
+63 + 40 = 103 (1100111)
+63 + 41 = 104 (1101000)
+63 + 42 = 105 (1101001)
+63 + 43 = 106 (1101010)
+63 + 44 = 107 (1101011)
+63 + 45 = 108 (1101100)
+63 + 46 = 109 (1101101)
+63 + 47 = 110 (1101110)
+63 + 48 = 111 (1101111)
+63 + 49 = 112 (1110000)
+63 + 50 = 113 (1110001)
+63 + 51 = 114 (1110010)
+63 + 52 = 115 (1110011)
+63 + 53 = 116 (1110100)
+63 + 54 = 117 (1110101)
+63 + 55 = 118 (1110110)
+63 + 56 = 119 (1110111)
+63 + 57 = 120 (1111000)
+63 + 58 = 121 (1111001)
+63 + 59 = 122 (1111010)
+63 + 60 = 123 (1111011)
+63 + 61 = 124 (1111100)
+63 + 62 = 125 (1111101)
+63 + 63 = 126 (1111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/main.cpp
new file mode 100644
index 000000000..e5fcda219
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 7-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 7;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/stimgen.h
new file mode 100644
index 000000000..feeda4215
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/bits_to_bits/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector7& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector7& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/common.h
new file mode 100644
index 000000000..4ffc0e670
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+typedef sc_signal<sc_bv<9> > signal_bool_vector9;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/datawidth.h
new file mode 100644
index 000000000..911b72c4f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector9& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector9& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/extension.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/extension.f
new file mode 100644
index 000000000..673123bd2
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/extension.f
@@ -0,0 +1,3 @@
+extension/datawidth.cpp
+extension/stimgen.cpp
+extension/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/golden/extension.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/golden/extension.log
new file mode 100644
index 000000000..529ae2755
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/golden/extension.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+16 + 0 = 16 (000010000)
+16 + 1 = 17 (000010001)
+16 + 2 = 18 (000010010)
+16 + 3 = 19 (000010011)
+16 + 4 = 20 (000010100)
+16 + 5 = 21 (000010101)
+16 + 6 = 22 (000010110)
+16 + 7 = 23 (000010111)
+16 + 8 = 24 (000011000)
+16 + 9 = 25 (000011001)
+16 + 10 = 26 (000011010)
+16 + 11 = 27 (000011011)
+16 + 12 = 28 (000011100)
+16 + 13 = 29 (000011101)
+16 + 14 = 30 (000011110)
+16 + 15 = 31 (000011111)
+16 + 16 = 32 (000100000)
+16 + 17 = 33 (000100001)
+16 + 18 = 34 (000100010)
+16 + 19 = 35 (000100011)
+16 + 20 = 36 (000100100)
+16 + 21 = 37 (000100101)
+16 + 22 = 38 (000100110)
+16 + 23 = 39 (000100111)
+16 + 24 = 40 (000101000)
+16 + 25 = 41 (000101001)
+16 + 26 = 42 (000101010)
+16 + 27 = 43 (000101011)
+16 + 28 = 44 (000101100)
+16 + 29 = 45 (000101101)
+16 + 30 = 46 (000101110)
+16 + 31 = 47 (000101111)
+16 + 32 = 48 (000110000)
+16 + 33 = 49 (000110001)
+16 + 34 = 50 (000110010)
+16 + 35 = 51 (000110011)
+16 + 36 = 52 (000110100)
+16 + 37 = 53 (000110101)
+16 + 38 = 54 (000110110)
+16 + 39 = 55 (000110111)
+16 + 40 = 56 (000111000)
+16 + 41 = 57 (000111001)
+16 + 42 = 58 (000111010)
+16 + 43 = 59 (000111011)
+16 + 44 = 60 (000111100)
+16 + 45 = 61 (000111101)
+16 + 46 = 62 (000111110)
+16 + 47 = 63 (000111111)
+16 + 48 = 64 (001000000)
+16 + 49 = 65 (001000001)
+16 + 50 = 66 (001000010)
+16 + 51 = 67 (001000011)
+16 + 52 = 68 (001000100)
+16 + 53 = 69 (001000101)
+16 + 54 = 70 (001000110)
+16 + 55 = 71 (001000111)
+16 + 56 = 72 (001001000)
+16 + 57 = 73 (001001001)
+16 + 58 = 74 (001001010)
+16 + 59 = 75 (001001011)
+16 + 60 = 76 (001001100)
+16 + 61 = 77 (001001101)
+16 + 62 = 78 (001001110)
+16 + 63 = 79 (001001111)
+17 + 0 = 17 (000010001)
+17 + 1 = 18 (000010010)
+17 + 2 = 19 (000010011)
+17 + 3 = 20 (000010100)
+17 + 4 = 21 (000010101)
+17 + 5 = 22 (000010110)
+17 + 6 = 23 (000010111)
+17 + 7 = 24 (000011000)
+17 + 8 = 25 (000011001)
+17 + 9 = 26 (000011010)
+17 + 10 = 27 (000011011)
+17 + 11 = 28 (000011100)
+17 + 12 = 29 (000011101)
+17 + 13 = 30 (000011110)
+17 + 14 = 31 (000011111)
+17 + 15 = 32 (000100000)
+17 + 16 = 33 (000100001)
+17 + 17 = 34 (000100010)
+17 + 18 = 35 (000100011)
+17 + 19 = 36 (000100100)
+17 + 20 = 37 (000100101)
+17 + 21 = 38 (000100110)
+17 + 22 = 39 (000100111)
+17 + 23 = 40 (000101000)
+17 + 24 = 41 (000101001)
+17 + 25 = 42 (000101010)
+17 + 26 = 43 (000101011)
+17 + 27 = 44 (000101100)
+17 + 28 = 45 (000101101)
+17 + 29 = 46 (000101110)
+17 + 30 = 47 (000101111)
+17 + 31 = 48 (000110000)
+17 + 32 = 49 (000110001)
+17 + 33 = 50 (000110010)
+17 + 34 = 51 (000110011)
+17 + 35 = 52 (000110100)
+17 + 36 = 53 (000110101)
+17 + 37 = 54 (000110110)
+17 + 38 = 55 (000110111)
+17 + 39 = 56 (000111000)
+17 + 40 = 57 (000111001)
+17 + 41 = 58 (000111010)
+17 + 42 = 59 (000111011)
+17 + 43 = 60 (000111100)
+17 + 44 = 61 (000111101)
+17 + 45 = 62 (000111110)
+17 + 46 = 63 (000111111)
+17 + 47 = 64 (001000000)
+17 + 48 = 65 (001000001)
+17 + 49 = 66 (001000010)
+17 + 50 = 67 (001000011)
+17 + 51 = 68 (001000100)
+17 + 52 = 69 (001000101)
+17 + 53 = 70 (001000110)
+17 + 54 = 71 (001000111)
+17 + 55 = 72 (001001000)
+17 + 56 = 73 (001001001)
+17 + 57 = 74 (001001010)
+17 + 58 = 75 (001001011)
+17 + 59 = 76 (001001100)
+17 + 60 = 77 (001001101)
+17 + 61 = 78 (001001110)
+17 + 62 = 79 (001001111)
+17 + 63 = 80 (001010000)
+18 + 0 = 18 (000010010)
+18 + 1 = 19 (000010011)
+18 + 2 = 20 (000010100)
+18 + 3 = 21 (000010101)
+18 + 4 = 22 (000010110)
+18 + 5 = 23 (000010111)
+18 + 6 = 24 (000011000)
+18 + 7 = 25 (000011001)
+18 + 8 = 26 (000011010)
+18 + 9 = 27 (000011011)
+18 + 10 = 28 (000011100)
+18 + 11 = 29 (000011101)
+18 + 12 = 30 (000011110)
+18 + 13 = 31 (000011111)
+18 + 14 = 32 (000100000)
+18 + 15 = 33 (000100001)
+18 + 16 = 34 (000100010)
+18 + 17 = 35 (000100011)
+18 + 18 = 36 (000100100)
+18 + 19 = 37 (000100101)
+18 + 20 = 38 (000100110)
+18 + 21 = 39 (000100111)
+18 + 22 = 40 (000101000)
+18 + 23 = 41 (000101001)
+18 + 24 = 42 (000101010)
+18 + 25 = 43 (000101011)
+18 + 26 = 44 (000101100)
+18 + 27 = 45 (000101101)
+18 + 28 = 46 (000101110)
+18 + 29 = 47 (000101111)
+18 + 30 = 48 (000110000)
+18 + 31 = 49 (000110001)
+18 + 32 = 50 (000110010)
+18 + 33 = 51 (000110011)
+18 + 34 = 52 (000110100)
+18 + 35 = 53 (000110101)
+18 + 36 = 54 (000110110)
+18 + 37 = 55 (000110111)
+18 + 38 = 56 (000111000)
+18 + 39 = 57 (000111001)
+18 + 40 = 58 (000111010)
+18 + 41 = 59 (000111011)
+18 + 42 = 60 (000111100)
+18 + 43 = 61 (000111101)
+18 + 44 = 62 (000111110)
+18 + 45 = 63 (000111111)
+18 + 46 = 64 (001000000)
+18 + 47 = 65 (001000001)
+18 + 48 = 66 (001000010)
+18 + 49 = 67 (001000011)
+18 + 50 = 68 (001000100)
+18 + 51 = 69 (001000101)
+18 + 52 = 70 (001000110)
+18 + 53 = 71 (001000111)
+18 + 54 = 72 (001001000)
+18 + 55 = 73 (001001001)
+18 + 56 = 74 (001001010)
+18 + 57 = 75 (001001011)
+18 + 58 = 76 (001001100)
+18 + 59 = 77 (001001101)
+18 + 60 = 78 (001001110)
+18 + 61 = 79 (001001111)
+18 + 62 = 80 (001010000)
+18 + 63 = 81 (001010001)
+19 + 0 = 19 (000010011)
+19 + 1 = 20 (000010100)
+19 + 2 = 21 (000010101)
+19 + 3 = 22 (000010110)
+19 + 4 = 23 (000010111)
+19 + 5 = 24 (000011000)
+19 + 6 = 25 (000011001)
+19 + 7 = 26 (000011010)
+19 + 8 = 27 (000011011)
+19 + 9 = 28 (000011100)
+19 + 10 = 29 (000011101)
+19 + 11 = 30 (000011110)
+19 + 12 = 31 (000011111)
+19 + 13 = 32 (000100000)
+19 + 14 = 33 (000100001)
+19 + 15 = 34 (000100010)
+19 + 16 = 35 (000100011)
+19 + 17 = 36 (000100100)
+19 + 18 = 37 (000100101)
+19 + 19 = 38 (000100110)
+19 + 20 = 39 (000100111)
+19 + 21 = 40 (000101000)
+19 + 22 = 41 (000101001)
+19 + 23 = 42 (000101010)
+19 + 24 = 43 (000101011)
+19 + 25 = 44 (000101100)
+19 + 26 = 45 (000101101)
+19 + 27 = 46 (000101110)
+19 + 28 = 47 (000101111)
+19 + 29 = 48 (000110000)
+19 + 30 = 49 (000110001)
+19 + 31 = 50 (000110010)
+19 + 32 = 51 (000110011)
+19 + 33 = 52 (000110100)
+19 + 34 = 53 (000110101)
+19 + 35 = 54 (000110110)
+19 + 36 = 55 (000110111)
+19 + 37 = 56 (000111000)
+19 + 38 = 57 (000111001)
+19 + 39 = 58 (000111010)
+19 + 40 = 59 (000111011)
+19 + 41 = 60 (000111100)
+19 + 42 = 61 (000111101)
+19 + 43 = 62 (000111110)
+19 + 44 = 63 (000111111)
+19 + 45 = 64 (001000000)
+19 + 46 = 65 (001000001)
+19 + 47 = 66 (001000010)
+19 + 48 = 67 (001000011)
+19 + 49 = 68 (001000100)
+19 + 50 = 69 (001000101)
+19 + 51 = 70 (001000110)
+19 + 52 = 71 (001000111)
+19 + 53 = 72 (001001000)
+19 + 54 = 73 (001001001)
+19 + 55 = 74 (001001010)
+19 + 56 = 75 (001001011)
+19 + 57 = 76 (001001100)
+19 + 58 = 77 (001001101)
+19 + 59 = 78 (001001110)
+19 + 60 = 79 (001001111)
+19 + 61 = 80 (001010000)
+19 + 62 = 81 (001010001)
+19 + 63 = 82 (001010010)
+20 + 0 = 20 (000010100)
+20 + 1 = 21 (000010101)
+20 + 2 = 22 (000010110)
+20 + 3 = 23 (000010111)
+20 + 4 = 24 (000011000)
+20 + 5 = 25 (000011001)
+20 + 6 = 26 (000011010)
+20 + 7 = 27 (000011011)
+20 + 8 = 28 (000011100)
+20 + 9 = 29 (000011101)
+20 + 10 = 30 (000011110)
+20 + 11 = 31 (000011111)
+20 + 12 = 32 (000100000)
+20 + 13 = 33 (000100001)
+20 + 14 = 34 (000100010)
+20 + 15 = 35 (000100011)
+20 + 16 = 36 (000100100)
+20 + 17 = 37 (000100101)
+20 + 18 = 38 (000100110)
+20 + 19 = 39 (000100111)
+20 + 20 = 40 (000101000)
+20 + 21 = 41 (000101001)
+20 + 22 = 42 (000101010)
+20 + 23 = 43 (000101011)
+20 + 24 = 44 (000101100)
+20 + 25 = 45 (000101101)
+20 + 26 = 46 (000101110)
+20 + 27 = 47 (000101111)
+20 + 28 = 48 (000110000)
+20 + 29 = 49 (000110001)
+20 + 30 = 50 (000110010)
+20 + 31 = 51 (000110011)
+20 + 32 = 52 (000110100)
+20 + 33 = 53 (000110101)
+20 + 34 = 54 (000110110)
+20 + 35 = 55 (000110111)
+20 + 36 = 56 (000111000)
+20 + 37 = 57 (000111001)
+20 + 38 = 58 (000111010)
+20 + 39 = 59 (000111011)
+20 + 40 = 60 (000111100)
+20 + 41 = 61 (000111101)
+20 + 42 = 62 (000111110)
+20 + 43 = 63 (000111111)
+20 + 44 = 64 (001000000)
+20 + 45 = 65 (001000001)
+20 + 46 = 66 (001000010)
+20 + 47 = 67 (001000011)
+20 + 48 = 68 (001000100)
+20 + 49 = 69 (001000101)
+20 + 50 = 70 (001000110)
+20 + 51 = 71 (001000111)
+20 + 52 = 72 (001001000)
+20 + 53 = 73 (001001001)
+20 + 54 = 74 (001001010)
+20 + 55 = 75 (001001011)
+20 + 56 = 76 (001001100)
+20 + 57 = 77 (001001101)
+20 + 58 = 78 (001001110)
+20 + 59 = 79 (001001111)
+20 + 60 = 80 (001010000)
+20 + 61 = 81 (001010001)
+20 + 62 = 82 (001010010)
+20 + 63 = 83 (001010011)
+21 + 0 = 21 (000010101)
+21 + 1 = 22 (000010110)
+21 + 2 = 23 (000010111)
+21 + 3 = 24 (000011000)
+21 + 4 = 25 (000011001)
+21 + 5 = 26 (000011010)
+21 + 6 = 27 (000011011)
+21 + 7 = 28 (000011100)
+21 + 8 = 29 (000011101)
+21 + 9 = 30 (000011110)
+21 + 10 = 31 (000011111)
+21 + 11 = 32 (000100000)
+21 + 12 = 33 (000100001)
+21 + 13 = 34 (000100010)
+21 + 14 = 35 (000100011)
+21 + 15 = 36 (000100100)
+21 + 16 = 37 (000100101)
+21 + 17 = 38 (000100110)
+21 + 18 = 39 (000100111)
+21 + 19 = 40 (000101000)
+21 + 20 = 41 (000101001)
+21 + 21 = 42 (000101010)
+21 + 22 = 43 (000101011)
+21 + 23 = 44 (000101100)
+21 + 24 = 45 (000101101)
+21 + 25 = 46 (000101110)
+21 + 26 = 47 (000101111)
+21 + 27 = 48 (000110000)
+21 + 28 = 49 (000110001)
+21 + 29 = 50 (000110010)
+21 + 30 = 51 (000110011)
+21 + 31 = 52 (000110100)
+21 + 32 = 53 (000110101)
+21 + 33 = 54 (000110110)
+21 + 34 = 55 (000110111)
+21 + 35 = 56 (000111000)
+21 + 36 = 57 (000111001)
+21 + 37 = 58 (000111010)
+21 + 38 = 59 (000111011)
+21 + 39 = 60 (000111100)
+21 + 40 = 61 (000111101)
+21 + 41 = 62 (000111110)
+21 + 42 = 63 (000111111)
+21 + 43 = 64 (001000000)
+21 + 44 = 65 (001000001)
+21 + 45 = 66 (001000010)
+21 + 46 = 67 (001000011)
+21 + 47 = 68 (001000100)
+21 + 48 = 69 (001000101)
+21 + 49 = 70 (001000110)
+21 + 50 = 71 (001000111)
+21 + 51 = 72 (001001000)
+21 + 52 = 73 (001001001)
+21 + 53 = 74 (001001010)
+21 + 54 = 75 (001001011)
+21 + 55 = 76 (001001100)
+21 + 56 = 77 (001001101)
+21 + 57 = 78 (001001110)
+21 + 58 = 79 (001001111)
+21 + 59 = 80 (001010000)
+21 + 60 = 81 (001010001)
+21 + 61 = 82 (001010010)
+21 + 62 = 83 (001010011)
+21 + 63 = 84 (001010100)
+22 + 0 = 22 (000010110)
+22 + 1 = 23 (000010111)
+22 + 2 = 24 (000011000)
+22 + 3 = 25 (000011001)
+22 + 4 = 26 (000011010)
+22 + 5 = 27 (000011011)
+22 + 6 = 28 (000011100)
+22 + 7 = 29 (000011101)
+22 + 8 = 30 (000011110)
+22 + 9 = 31 (000011111)
+22 + 10 = 32 (000100000)
+22 + 11 = 33 (000100001)
+22 + 12 = 34 (000100010)
+22 + 13 = 35 (000100011)
+22 + 14 = 36 (000100100)
+22 + 15 = 37 (000100101)
+22 + 16 = 38 (000100110)
+22 + 17 = 39 (000100111)
+22 + 18 = 40 (000101000)
+22 + 19 = 41 (000101001)
+22 + 20 = 42 (000101010)
+22 + 21 = 43 (000101011)
+22 + 22 = 44 (000101100)
+22 + 23 = 45 (000101101)
+22 + 24 = 46 (000101110)
+22 + 25 = 47 (000101111)
+22 + 26 = 48 (000110000)
+22 + 27 = 49 (000110001)
+22 + 28 = 50 (000110010)
+22 + 29 = 51 (000110011)
+22 + 30 = 52 (000110100)
+22 + 31 = 53 (000110101)
+22 + 32 = 54 (000110110)
+22 + 33 = 55 (000110111)
+22 + 34 = 56 (000111000)
+22 + 35 = 57 (000111001)
+22 + 36 = 58 (000111010)
+22 + 37 = 59 (000111011)
+22 + 38 = 60 (000111100)
+22 + 39 = 61 (000111101)
+22 + 40 = 62 (000111110)
+22 + 41 = 63 (000111111)
+22 + 42 = 64 (001000000)
+22 + 43 = 65 (001000001)
+22 + 44 = 66 (001000010)
+22 + 45 = 67 (001000011)
+22 + 46 = 68 (001000100)
+22 + 47 = 69 (001000101)
+22 + 48 = 70 (001000110)
+22 + 49 = 71 (001000111)
+22 + 50 = 72 (001001000)
+22 + 51 = 73 (001001001)
+22 + 52 = 74 (001001010)
+22 + 53 = 75 (001001011)
+22 + 54 = 76 (001001100)
+22 + 55 = 77 (001001101)
+22 + 56 = 78 (001001110)
+22 + 57 = 79 (001001111)
+22 + 58 = 80 (001010000)
+22 + 59 = 81 (001010001)
+22 + 60 = 82 (001010010)
+22 + 61 = 83 (001010011)
+22 + 62 = 84 (001010100)
+22 + 63 = 85 (001010101)
+23 + 0 = 23 (000010111)
+23 + 1 = 24 (000011000)
+23 + 2 = 25 (000011001)
+23 + 3 = 26 (000011010)
+23 + 4 = 27 (000011011)
+23 + 5 = 28 (000011100)
+23 + 6 = 29 (000011101)
+23 + 7 = 30 (000011110)
+23 + 8 = 31 (000011111)
+23 + 9 = 32 (000100000)
+23 + 10 = 33 (000100001)
+23 + 11 = 34 (000100010)
+23 + 12 = 35 (000100011)
+23 + 13 = 36 (000100100)
+23 + 14 = 37 (000100101)
+23 + 15 = 38 (000100110)
+23 + 16 = 39 (000100111)
+23 + 17 = 40 (000101000)
+23 + 18 = 41 (000101001)
+23 + 19 = 42 (000101010)
+23 + 20 = 43 (000101011)
+23 + 21 = 44 (000101100)
+23 + 22 = 45 (000101101)
+23 + 23 = 46 (000101110)
+23 + 24 = 47 (000101111)
+23 + 25 = 48 (000110000)
+23 + 26 = 49 (000110001)
+23 + 27 = 50 (000110010)
+23 + 28 = 51 (000110011)
+23 + 29 = 52 (000110100)
+23 + 30 = 53 (000110101)
+23 + 31 = 54 (000110110)
+23 + 32 = 55 (000110111)
+23 + 33 = 56 (000111000)
+23 + 34 = 57 (000111001)
+23 + 35 = 58 (000111010)
+23 + 36 = 59 (000111011)
+23 + 37 = 60 (000111100)
+23 + 38 = 61 (000111101)
+23 + 39 = 62 (000111110)
+23 + 40 = 63 (000111111)
+23 + 41 = 64 (001000000)
+23 + 42 = 65 (001000001)
+23 + 43 = 66 (001000010)
+23 + 44 = 67 (001000011)
+23 + 45 = 68 (001000100)
+23 + 46 = 69 (001000101)
+23 + 47 = 70 (001000110)
+23 + 48 = 71 (001000111)
+23 + 49 = 72 (001001000)
+23 + 50 = 73 (001001001)
+23 + 51 = 74 (001001010)
+23 + 52 = 75 (001001011)
+23 + 53 = 76 (001001100)
+23 + 54 = 77 (001001101)
+23 + 55 = 78 (001001110)
+23 + 56 = 79 (001001111)
+23 + 57 = 80 (001010000)
+23 + 58 = 81 (001010001)
+23 + 59 = 82 (001010010)
+23 + 60 = 83 (001010011)
+23 + 61 = 84 (001010100)
+23 + 62 = 85 (001010101)
+23 + 63 = 86 (001010110)
+24 + 0 = 24 (000011000)
+24 + 1 = 25 (000011001)
+24 + 2 = 26 (000011010)
+24 + 3 = 27 (000011011)
+24 + 4 = 28 (000011100)
+24 + 5 = 29 (000011101)
+24 + 6 = 30 (000011110)
+24 + 7 = 31 (000011111)
+24 + 8 = 32 (000100000)
+24 + 9 = 33 (000100001)
+24 + 10 = 34 (000100010)
+24 + 11 = 35 (000100011)
+24 + 12 = 36 (000100100)
+24 + 13 = 37 (000100101)
+24 + 14 = 38 (000100110)
+24 + 15 = 39 (000100111)
+24 + 16 = 40 (000101000)
+24 + 17 = 41 (000101001)
+24 + 18 = 42 (000101010)
+24 + 19 = 43 (000101011)
+24 + 20 = 44 (000101100)
+24 + 21 = 45 (000101101)
+24 + 22 = 46 (000101110)
+24 + 23 = 47 (000101111)
+24 + 24 = 48 (000110000)
+24 + 25 = 49 (000110001)
+24 + 26 = 50 (000110010)
+24 + 27 = 51 (000110011)
+24 + 28 = 52 (000110100)
+24 + 29 = 53 (000110101)
+24 + 30 = 54 (000110110)
+24 + 31 = 55 (000110111)
+24 + 32 = 56 (000111000)
+24 + 33 = 57 (000111001)
+24 + 34 = 58 (000111010)
+24 + 35 = 59 (000111011)
+24 + 36 = 60 (000111100)
+24 + 37 = 61 (000111101)
+24 + 38 = 62 (000111110)
+24 + 39 = 63 (000111111)
+24 + 40 = 64 (001000000)
+24 + 41 = 65 (001000001)
+24 + 42 = 66 (001000010)
+24 + 43 = 67 (001000011)
+24 + 44 = 68 (001000100)
+24 + 45 = 69 (001000101)
+24 + 46 = 70 (001000110)
+24 + 47 = 71 (001000111)
+24 + 48 = 72 (001001000)
+24 + 49 = 73 (001001001)
+24 + 50 = 74 (001001010)
+24 + 51 = 75 (001001011)
+24 + 52 = 76 (001001100)
+24 + 53 = 77 (001001101)
+24 + 54 = 78 (001001110)
+24 + 55 = 79 (001001111)
+24 + 56 = 80 (001010000)
+24 + 57 = 81 (001010001)
+24 + 58 = 82 (001010010)
+24 + 59 = 83 (001010011)
+24 + 60 = 84 (001010100)
+24 + 61 = 85 (001010101)
+24 + 62 = 86 (001010110)
+24 + 63 = 87 (001010111)
+25 + 0 = 25 (000011001)
+25 + 1 = 26 (000011010)
+25 + 2 = 27 (000011011)
+25 + 3 = 28 (000011100)
+25 + 4 = 29 (000011101)
+25 + 5 = 30 (000011110)
+25 + 6 = 31 (000011111)
+25 + 7 = 32 (000100000)
+25 + 8 = 33 (000100001)
+25 + 9 = 34 (000100010)
+25 + 10 = 35 (000100011)
+25 + 11 = 36 (000100100)
+25 + 12 = 37 (000100101)
+25 + 13 = 38 (000100110)
+25 + 14 = 39 (000100111)
+25 + 15 = 40 (000101000)
+25 + 16 = 41 (000101001)
+25 + 17 = 42 (000101010)
+25 + 18 = 43 (000101011)
+25 + 19 = 44 (000101100)
+25 + 20 = 45 (000101101)
+25 + 21 = 46 (000101110)
+25 + 22 = 47 (000101111)
+25 + 23 = 48 (000110000)
+25 + 24 = 49 (000110001)
+25 + 25 = 50 (000110010)
+25 + 26 = 51 (000110011)
+25 + 27 = 52 (000110100)
+25 + 28 = 53 (000110101)
+25 + 29 = 54 (000110110)
+25 + 30 = 55 (000110111)
+25 + 31 = 56 (000111000)
+25 + 32 = 57 (000111001)
+25 + 33 = 58 (000111010)
+25 + 34 = 59 (000111011)
+25 + 35 = 60 (000111100)
+25 + 36 = 61 (000111101)
+25 + 37 = 62 (000111110)
+25 + 38 = 63 (000111111)
+25 + 39 = 64 (001000000)
+25 + 40 = 65 (001000001)
+25 + 41 = 66 (001000010)
+25 + 42 = 67 (001000011)
+25 + 43 = 68 (001000100)
+25 + 44 = 69 (001000101)
+25 + 45 = 70 (001000110)
+25 + 46 = 71 (001000111)
+25 + 47 = 72 (001001000)
+25 + 48 = 73 (001001001)
+25 + 49 = 74 (001001010)
+25 + 50 = 75 (001001011)
+25 + 51 = 76 (001001100)
+25 + 52 = 77 (001001101)
+25 + 53 = 78 (001001110)
+25 + 54 = 79 (001001111)
+25 + 55 = 80 (001010000)
+25 + 56 = 81 (001010001)
+25 + 57 = 82 (001010010)
+25 + 58 = 83 (001010011)
+25 + 59 = 84 (001010100)
+25 + 60 = 85 (001010101)
+25 + 61 = 86 (001010110)
+25 + 62 = 87 (001010111)
+25 + 63 = 88 (001011000)
+26 + 0 = 26 (000011010)
+26 + 1 = 27 (000011011)
+26 + 2 = 28 (000011100)
+26 + 3 = 29 (000011101)
+26 + 4 = 30 (000011110)
+26 + 5 = 31 (000011111)
+26 + 6 = 32 (000100000)
+26 + 7 = 33 (000100001)
+26 + 8 = 34 (000100010)
+26 + 9 = 35 (000100011)
+26 + 10 = 36 (000100100)
+26 + 11 = 37 (000100101)
+26 + 12 = 38 (000100110)
+26 + 13 = 39 (000100111)
+26 + 14 = 40 (000101000)
+26 + 15 = 41 (000101001)
+26 + 16 = 42 (000101010)
+26 + 17 = 43 (000101011)
+26 + 18 = 44 (000101100)
+26 + 19 = 45 (000101101)
+26 + 20 = 46 (000101110)
+26 + 21 = 47 (000101111)
+26 + 22 = 48 (000110000)
+26 + 23 = 49 (000110001)
+26 + 24 = 50 (000110010)
+26 + 25 = 51 (000110011)
+26 + 26 = 52 (000110100)
+26 + 27 = 53 (000110101)
+26 + 28 = 54 (000110110)
+26 + 29 = 55 (000110111)
+26 + 30 = 56 (000111000)
+26 + 31 = 57 (000111001)
+26 + 32 = 58 (000111010)
+26 + 33 = 59 (000111011)
+26 + 34 = 60 (000111100)
+26 + 35 = 61 (000111101)
+26 + 36 = 62 (000111110)
+26 + 37 = 63 (000111111)
+26 + 38 = 64 (001000000)
+26 + 39 = 65 (001000001)
+26 + 40 = 66 (001000010)
+26 + 41 = 67 (001000011)
+26 + 42 = 68 (001000100)
+26 + 43 = 69 (001000101)
+26 + 44 = 70 (001000110)
+26 + 45 = 71 (001000111)
+26 + 46 = 72 (001001000)
+26 + 47 = 73 (001001001)
+26 + 48 = 74 (001001010)
+26 + 49 = 75 (001001011)
+26 + 50 = 76 (001001100)
+26 + 51 = 77 (001001101)
+26 + 52 = 78 (001001110)
+26 + 53 = 79 (001001111)
+26 + 54 = 80 (001010000)
+26 + 55 = 81 (001010001)
+26 + 56 = 82 (001010010)
+26 + 57 = 83 (001010011)
+26 + 58 = 84 (001010100)
+26 + 59 = 85 (001010101)
+26 + 60 = 86 (001010110)
+26 + 61 = 87 (001010111)
+26 + 62 = 88 (001011000)
+26 + 63 = 89 (001011001)
+27 + 0 = 27 (000011011)
+27 + 1 = 28 (000011100)
+27 + 2 = 29 (000011101)
+27 + 3 = 30 (000011110)
+27 + 4 = 31 (000011111)
+27 + 5 = 32 (000100000)
+27 + 6 = 33 (000100001)
+27 + 7 = 34 (000100010)
+27 + 8 = 35 (000100011)
+27 + 9 = 36 (000100100)
+27 + 10 = 37 (000100101)
+27 + 11 = 38 (000100110)
+27 + 12 = 39 (000100111)
+27 + 13 = 40 (000101000)
+27 + 14 = 41 (000101001)
+27 + 15 = 42 (000101010)
+27 + 16 = 43 (000101011)
+27 + 17 = 44 (000101100)
+27 + 18 = 45 (000101101)
+27 + 19 = 46 (000101110)
+27 + 20 = 47 (000101111)
+27 + 21 = 48 (000110000)
+27 + 22 = 49 (000110001)
+27 + 23 = 50 (000110010)
+27 + 24 = 51 (000110011)
+27 + 25 = 52 (000110100)
+27 + 26 = 53 (000110101)
+27 + 27 = 54 (000110110)
+27 + 28 = 55 (000110111)
+27 + 29 = 56 (000111000)
+27 + 30 = 57 (000111001)
+27 + 31 = 58 (000111010)
+27 + 32 = 59 (000111011)
+27 + 33 = 60 (000111100)
+27 + 34 = 61 (000111101)
+27 + 35 = 62 (000111110)
+27 + 36 = 63 (000111111)
+27 + 37 = 64 (001000000)
+27 + 38 = 65 (001000001)
+27 + 39 = 66 (001000010)
+27 + 40 = 67 (001000011)
+27 + 41 = 68 (001000100)
+27 + 42 = 69 (001000101)
+27 + 43 = 70 (001000110)
+27 + 44 = 71 (001000111)
+27 + 45 = 72 (001001000)
+27 + 46 = 73 (001001001)
+27 + 47 = 74 (001001010)
+27 + 48 = 75 (001001011)
+27 + 49 = 76 (001001100)
+27 + 50 = 77 (001001101)
+27 + 51 = 78 (001001110)
+27 + 52 = 79 (001001111)
+27 + 53 = 80 (001010000)
+27 + 54 = 81 (001010001)
+27 + 55 = 82 (001010010)
+27 + 56 = 83 (001010011)
+27 + 57 = 84 (001010100)
+27 + 58 = 85 (001010101)
+27 + 59 = 86 (001010110)
+27 + 60 = 87 (001010111)
+27 + 61 = 88 (001011000)
+27 + 62 = 89 (001011001)
+27 + 63 = 90 (001011010)
+28 + 0 = 28 (000011100)
+28 + 1 = 29 (000011101)
+28 + 2 = 30 (000011110)
+28 + 3 = 31 (000011111)
+28 + 4 = 32 (000100000)
+28 + 5 = 33 (000100001)
+28 + 6 = 34 (000100010)
+28 + 7 = 35 (000100011)
+28 + 8 = 36 (000100100)
+28 + 9 = 37 (000100101)
+28 + 10 = 38 (000100110)
+28 + 11 = 39 (000100111)
+28 + 12 = 40 (000101000)
+28 + 13 = 41 (000101001)
+28 + 14 = 42 (000101010)
+28 + 15 = 43 (000101011)
+28 + 16 = 44 (000101100)
+28 + 17 = 45 (000101101)
+28 + 18 = 46 (000101110)
+28 + 19 = 47 (000101111)
+28 + 20 = 48 (000110000)
+28 + 21 = 49 (000110001)
+28 + 22 = 50 (000110010)
+28 + 23 = 51 (000110011)
+28 + 24 = 52 (000110100)
+28 + 25 = 53 (000110101)
+28 + 26 = 54 (000110110)
+28 + 27 = 55 (000110111)
+28 + 28 = 56 (000111000)
+28 + 29 = 57 (000111001)
+28 + 30 = 58 (000111010)
+28 + 31 = 59 (000111011)
+28 + 32 = 60 (000111100)
+28 + 33 = 61 (000111101)
+28 + 34 = 62 (000111110)
+28 + 35 = 63 (000111111)
+28 + 36 = 64 (001000000)
+28 + 37 = 65 (001000001)
+28 + 38 = 66 (001000010)
+28 + 39 = 67 (001000011)
+28 + 40 = 68 (001000100)
+28 + 41 = 69 (001000101)
+28 + 42 = 70 (001000110)
+28 + 43 = 71 (001000111)
+28 + 44 = 72 (001001000)
+28 + 45 = 73 (001001001)
+28 + 46 = 74 (001001010)
+28 + 47 = 75 (001001011)
+28 + 48 = 76 (001001100)
+28 + 49 = 77 (001001101)
+28 + 50 = 78 (001001110)
+28 + 51 = 79 (001001111)
+28 + 52 = 80 (001010000)
+28 + 53 = 81 (001010001)
+28 + 54 = 82 (001010010)
+28 + 55 = 83 (001010011)
+28 + 56 = 84 (001010100)
+28 + 57 = 85 (001010101)
+28 + 58 = 86 (001010110)
+28 + 59 = 87 (001010111)
+28 + 60 = 88 (001011000)
+28 + 61 = 89 (001011001)
+28 + 62 = 90 (001011010)
+28 + 63 = 91 (001011011)
+29 + 0 = 29 (000011101)
+29 + 1 = 30 (000011110)
+29 + 2 = 31 (000011111)
+29 + 3 = 32 (000100000)
+29 + 4 = 33 (000100001)
+29 + 5 = 34 (000100010)
+29 + 6 = 35 (000100011)
+29 + 7 = 36 (000100100)
+29 + 8 = 37 (000100101)
+29 + 9 = 38 (000100110)
+29 + 10 = 39 (000100111)
+29 + 11 = 40 (000101000)
+29 + 12 = 41 (000101001)
+29 + 13 = 42 (000101010)
+29 + 14 = 43 (000101011)
+29 + 15 = 44 (000101100)
+29 + 16 = 45 (000101101)
+29 + 17 = 46 (000101110)
+29 + 18 = 47 (000101111)
+29 + 19 = 48 (000110000)
+29 + 20 = 49 (000110001)
+29 + 21 = 50 (000110010)
+29 + 22 = 51 (000110011)
+29 + 23 = 52 (000110100)
+29 + 24 = 53 (000110101)
+29 + 25 = 54 (000110110)
+29 + 26 = 55 (000110111)
+29 + 27 = 56 (000111000)
+29 + 28 = 57 (000111001)
+29 + 29 = 58 (000111010)
+29 + 30 = 59 (000111011)
+29 + 31 = 60 (000111100)
+29 + 32 = 61 (000111101)
+29 + 33 = 62 (000111110)
+29 + 34 = 63 (000111111)
+29 + 35 = 64 (001000000)
+29 + 36 = 65 (001000001)
+29 + 37 = 66 (001000010)
+29 + 38 = 67 (001000011)
+29 + 39 = 68 (001000100)
+29 + 40 = 69 (001000101)
+29 + 41 = 70 (001000110)
+29 + 42 = 71 (001000111)
+29 + 43 = 72 (001001000)
+29 + 44 = 73 (001001001)
+29 + 45 = 74 (001001010)
+29 + 46 = 75 (001001011)
+29 + 47 = 76 (001001100)
+29 + 48 = 77 (001001101)
+29 + 49 = 78 (001001110)
+29 + 50 = 79 (001001111)
+29 + 51 = 80 (001010000)
+29 + 52 = 81 (001010001)
+29 + 53 = 82 (001010010)
+29 + 54 = 83 (001010011)
+29 + 55 = 84 (001010100)
+29 + 56 = 85 (001010101)
+29 + 57 = 86 (001010110)
+29 + 58 = 87 (001010111)
+29 + 59 = 88 (001011000)
+29 + 60 = 89 (001011001)
+29 + 61 = 90 (001011010)
+29 + 62 = 91 (001011011)
+29 + 63 = 92 (001011100)
+30 + 0 = 30 (000011110)
+30 + 1 = 31 (000011111)
+30 + 2 = 32 (000100000)
+30 + 3 = 33 (000100001)
+30 + 4 = 34 (000100010)
+30 + 5 = 35 (000100011)
+30 + 6 = 36 (000100100)
+30 + 7 = 37 (000100101)
+30 + 8 = 38 (000100110)
+30 + 9 = 39 (000100111)
+30 + 10 = 40 (000101000)
+30 + 11 = 41 (000101001)
+30 + 12 = 42 (000101010)
+30 + 13 = 43 (000101011)
+30 + 14 = 44 (000101100)
+30 + 15 = 45 (000101101)
+30 + 16 = 46 (000101110)
+30 + 17 = 47 (000101111)
+30 + 18 = 48 (000110000)
+30 + 19 = 49 (000110001)
+30 + 20 = 50 (000110010)
+30 + 21 = 51 (000110011)
+30 + 22 = 52 (000110100)
+30 + 23 = 53 (000110101)
+30 + 24 = 54 (000110110)
+30 + 25 = 55 (000110111)
+30 + 26 = 56 (000111000)
+30 + 27 = 57 (000111001)
+30 + 28 = 58 (000111010)
+30 + 29 = 59 (000111011)
+30 + 30 = 60 (000111100)
+30 + 31 = 61 (000111101)
+30 + 32 = 62 (000111110)
+30 + 33 = 63 (000111111)
+30 + 34 = 64 (001000000)
+30 + 35 = 65 (001000001)
+30 + 36 = 66 (001000010)
+30 + 37 = 67 (001000011)
+30 + 38 = 68 (001000100)
+30 + 39 = 69 (001000101)
+30 + 40 = 70 (001000110)
+30 + 41 = 71 (001000111)
+30 + 42 = 72 (001001000)
+30 + 43 = 73 (001001001)
+30 + 44 = 74 (001001010)
+30 + 45 = 75 (001001011)
+30 + 46 = 76 (001001100)
+30 + 47 = 77 (001001101)
+30 + 48 = 78 (001001110)
+30 + 49 = 79 (001001111)
+30 + 50 = 80 (001010000)
+30 + 51 = 81 (001010001)
+30 + 52 = 82 (001010010)
+30 + 53 = 83 (001010011)
+30 + 54 = 84 (001010100)
+30 + 55 = 85 (001010101)
+30 + 56 = 86 (001010110)
+30 + 57 = 87 (001010111)
+30 + 58 = 88 (001011000)
+30 + 59 = 89 (001011001)
+30 + 60 = 90 (001011010)
+30 + 61 = 91 (001011011)
+30 + 62 = 92 (001011100)
+30 + 63 = 93 (001011101)
+31 + 0 = 31 (000011111)
+31 + 1 = 32 (000100000)
+31 + 2 = 33 (000100001)
+31 + 3 = 34 (000100010)
+31 + 4 = 35 (000100011)
+31 + 5 = 36 (000100100)
+31 + 6 = 37 (000100101)
+31 + 7 = 38 (000100110)
+31 + 8 = 39 (000100111)
+31 + 9 = 40 (000101000)
+31 + 10 = 41 (000101001)
+31 + 11 = 42 (000101010)
+31 + 12 = 43 (000101011)
+31 + 13 = 44 (000101100)
+31 + 14 = 45 (000101101)
+31 + 15 = 46 (000101110)
+31 + 16 = 47 (000101111)
+31 + 17 = 48 (000110000)
+31 + 18 = 49 (000110001)
+31 + 19 = 50 (000110010)
+31 + 20 = 51 (000110011)
+31 + 21 = 52 (000110100)
+31 + 22 = 53 (000110101)
+31 + 23 = 54 (000110110)
+31 + 24 = 55 (000110111)
+31 + 25 = 56 (000111000)
+31 + 26 = 57 (000111001)
+31 + 27 = 58 (000111010)
+31 + 28 = 59 (000111011)
+31 + 29 = 60 (000111100)
+31 + 30 = 61 (000111101)
+31 + 31 = 62 (000111110)
+31 + 32 = 63 (000111111)
+31 + 33 = 64 (001000000)
+31 + 34 = 65 (001000001)
+31 + 35 = 66 (001000010)
+31 + 36 = 67 (001000011)
+31 + 37 = 68 (001000100)
+31 + 38 = 69 (001000101)
+31 + 39 = 70 (001000110)
+31 + 40 = 71 (001000111)
+31 + 41 = 72 (001001000)
+31 + 42 = 73 (001001001)
+31 + 43 = 74 (001001010)
+31 + 44 = 75 (001001011)
+31 + 45 = 76 (001001100)
+31 + 46 = 77 (001001101)
+31 + 47 = 78 (001001110)
+31 + 48 = 79 (001001111)
+31 + 49 = 80 (001010000)
+31 + 50 = 81 (001010001)
+31 + 51 = 82 (001010010)
+31 + 52 = 83 (001010011)
+31 + 53 = 84 (001010100)
+31 + 54 = 85 (001010101)
+31 + 55 = 86 (001010110)
+31 + 56 = 87 (001010111)
+31 + 57 = 88 (001011000)
+31 + 58 = 89 (001011001)
+31 + 59 = 90 (001011010)
+31 + 60 = 91 (001011011)
+31 + 61 = 92 (001011100)
+31 + 62 = 93 (001011101)
+31 + 63 = 94 (001011110)
+32 + 0 = 32 (000100000)
+32 + 1 = 33 (000100001)
+32 + 2 = 34 (000100010)
+32 + 3 = 35 (000100011)
+32 + 4 = 36 (000100100)
+32 + 5 = 37 (000100101)
+32 + 6 = 38 (000100110)
+32 + 7 = 39 (000100111)
+32 + 8 = 40 (000101000)
+32 + 9 = 41 (000101001)
+32 + 10 = 42 (000101010)
+32 + 11 = 43 (000101011)
+32 + 12 = 44 (000101100)
+32 + 13 = 45 (000101101)
+32 + 14 = 46 (000101110)
+32 + 15 = 47 (000101111)
+32 + 16 = 48 (000110000)
+32 + 17 = 49 (000110001)
+32 + 18 = 50 (000110010)
+32 + 19 = 51 (000110011)
+32 + 20 = 52 (000110100)
+32 + 21 = 53 (000110101)
+32 + 22 = 54 (000110110)
+32 + 23 = 55 (000110111)
+32 + 24 = 56 (000111000)
+32 + 25 = 57 (000111001)
+32 + 26 = 58 (000111010)
+32 + 27 = 59 (000111011)
+32 + 28 = 60 (000111100)
+32 + 29 = 61 (000111101)
+32 + 30 = 62 (000111110)
+32 + 31 = 63 (000111111)
+32 + 32 = 64 (001000000)
+32 + 33 = 65 (001000001)
+32 + 34 = 66 (001000010)
+32 + 35 = 67 (001000011)
+32 + 36 = 68 (001000100)
+32 + 37 = 69 (001000101)
+32 + 38 = 70 (001000110)
+32 + 39 = 71 (001000111)
+32 + 40 = 72 (001001000)
+32 + 41 = 73 (001001001)
+32 + 42 = 74 (001001010)
+32 + 43 = 75 (001001011)
+32 + 44 = 76 (001001100)
+32 + 45 = 77 (001001101)
+32 + 46 = 78 (001001110)
+32 + 47 = 79 (001001111)
+32 + 48 = 80 (001010000)
+32 + 49 = 81 (001010001)
+32 + 50 = 82 (001010010)
+32 + 51 = 83 (001010011)
+32 + 52 = 84 (001010100)
+32 + 53 = 85 (001010101)
+32 + 54 = 86 (001010110)
+32 + 55 = 87 (001010111)
+32 + 56 = 88 (001011000)
+32 + 57 = 89 (001011001)
+32 + 58 = 90 (001011010)
+32 + 59 = 91 (001011011)
+32 + 60 = 92 (001011100)
+32 + 61 = 93 (001011101)
+32 + 62 = 94 (001011110)
+32 + 63 = 95 (001011111)
+33 + 0 = 33 (000100001)
+33 + 1 = 34 (000100010)
+33 + 2 = 35 (000100011)
+33 + 3 = 36 (000100100)
+33 + 4 = 37 (000100101)
+33 + 5 = 38 (000100110)
+33 + 6 = 39 (000100111)
+33 + 7 = 40 (000101000)
+33 + 8 = 41 (000101001)
+33 + 9 = 42 (000101010)
+33 + 10 = 43 (000101011)
+33 + 11 = 44 (000101100)
+33 + 12 = 45 (000101101)
+33 + 13 = 46 (000101110)
+33 + 14 = 47 (000101111)
+33 + 15 = 48 (000110000)
+33 + 16 = 49 (000110001)
+33 + 17 = 50 (000110010)
+33 + 18 = 51 (000110011)
+33 + 19 = 52 (000110100)
+33 + 20 = 53 (000110101)
+33 + 21 = 54 (000110110)
+33 + 22 = 55 (000110111)
+33 + 23 = 56 (000111000)
+33 + 24 = 57 (000111001)
+33 + 25 = 58 (000111010)
+33 + 26 = 59 (000111011)
+33 + 27 = 60 (000111100)
+33 + 28 = 61 (000111101)
+33 + 29 = 62 (000111110)
+33 + 30 = 63 (000111111)
+33 + 31 = 64 (001000000)
+33 + 32 = 65 (001000001)
+33 + 33 = 66 (001000010)
+33 + 34 = 67 (001000011)
+33 + 35 = 68 (001000100)
+33 + 36 = 69 (001000101)
+33 + 37 = 70 (001000110)
+33 + 38 = 71 (001000111)
+33 + 39 = 72 (001001000)
+33 + 40 = 73 (001001001)
+33 + 41 = 74 (001001010)
+33 + 42 = 75 (001001011)
+33 + 43 = 76 (001001100)
+33 + 44 = 77 (001001101)
+33 + 45 = 78 (001001110)
+33 + 46 = 79 (001001111)
+33 + 47 = 80 (001010000)
+33 + 48 = 81 (001010001)
+33 + 49 = 82 (001010010)
+33 + 50 = 83 (001010011)
+33 + 51 = 84 (001010100)
+33 + 52 = 85 (001010101)
+33 + 53 = 86 (001010110)
+33 + 54 = 87 (001010111)
+33 + 55 = 88 (001011000)
+33 + 56 = 89 (001011001)
+33 + 57 = 90 (001011010)
+33 + 58 = 91 (001011011)
+33 + 59 = 92 (001011100)
+33 + 60 = 93 (001011101)
+33 + 61 = 94 (001011110)
+33 + 62 = 95 (001011111)
+33 + 63 = 96 (001100000)
+34 + 0 = 34 (000100010)
+34 + 1 = 35 (000100011)
+34 + 2 = 36 (000100100)
+34 + 3 = 37 (000100101)
+34 + 4 = 38 (000100110)
+34 + 5 = 39 (000100111)
+34 + 6 = 40 (000101000)
+34 + 7 = 41 (000101001)
+34 + 8 = 42 (000101010)
+34 + 9 = 43 (000101011)
+34 + 10 = 44 (000101100)
+34 + 11 = 45 (000101101)
+34 + 12 = 46 (000101110)
+34 + 13 = 47 (000101111)
+34 + 14 = 48 (000110000)
+34 + 15 = 49 (000110001)
+34 + 16 = 50 (000110010)
+34 + 17 = 51 (000110011)
+34 + 18 = 52 (000110100)
+34 + 19 = 53 (000110101)
+34 + 20 = 54 (000110110)
+34 + 21 = 55 (000110111)
+34 + 22 = 56 (000111000)
+34 + 23 = 57 (000111001)
+34 + 24 = 58 (000111010)
+34 + 25 = 59 (000111011)
+34 + 26 = 60 (000111100)
+34 + 27 = 61 (000111101)
+34 + 28 = 62 (000111110)
+34 + 29 = 63 (000111111)
+34 + 30 = 64 (001000000)
+34 + 31 = 65 (001000001)
+34 + 32 = 66 (001000010)
+34 + 33 = 67 (001000011)
+34 + 34 = 68 (001000100)
+34 + 35 = 69 (001000101)
+34 + 36 = 70 (001000110)
+34 + 37 = 71 (001000111)
+34 + 38 = 72 (001001000)
+34 + 39 = 73 (001001001)
+34 + 40 = 74 (001001010)
+34 + 41 = 75 (001001011)
+34 + 42 = 76 (001001100)
+34 + 43 = 77 (001001101)
+34 + 44 = 78 (001001110)
+34 + 45 = 79 (001001111)
+34 + 46 = 80 (001010000)
+34 + 47 = 81 (001010001)
+34 + 48 = 82 (001010010)
+34 + 49 = 83 (001010011)
+34 + 50 = 84 (001010100)
+34 + 51 = 85 (001010101)
+34 + 52 = 86 (001010110)
+34 + 53 = 87 (001010111)
+34 + 54 = 88 (001011000)
+34 + 55 = 89 (001011001)
+34 + 56 = 90 (001011010)
+34 + 57 = 91 (001011011)
+34 + 58 = 92 (001011100)
+34 + 59 = 93 (001011101)
+34 + 60 = 94 (001011110)
+34 + 61 = 95 (001011111)
+34 + 62 = 96 (001100000)
+34 + 63 = 97 (001100001)
+35 + 0 = 35 (000100011)
+35 + 1 = 36 (000100100)
+35 + 2 = 37 (000100101)
+35 + 3 = 38 (000100110)
+35 + 4 = 39 (000100111)
+35 + 5 = 40 (000101000)
+35 + 6 = 41 (000101001)
+35 + 7 = 42 (000101010)
+35 + 8 = 43 (000101011)
+35 + 9 = 44 (000101100)
+35 + 10 = 45 (000101101)
+35 + 11 = 46 (000101110)
+35 + 12 = 47 (000101111)
+35 + 13 = 48 (000110000)
+35 + 14 = 49 (000110001)
+35 + 15 = 50 (000110010)
+35 + 16 = 51 (000110011)
+35 + 17 = 52 (000110100)
+35 + 18 = 53 (000110101)
+35 + 19 = 54 (000110110)
+35 + 20 = 55 (000110111)
+35 + 21 = 56 (000111000)
+35 + 22 = 57 (000111001)
+35 + 23 = 58 (000111010)
+35 + 24 = 59 (000111011)
+35 + 25 = 60 (000111100)
+35 + 26 = 61 (000111101)
+35 + 27 = 62 (000111110)
+35 + 28 = 63 (000111111)
+35 + 29 = 64 (001000000)
+35 + 30 = 65 (001000001)
+35 + 31 = 66 (001000010)
+35 + 32 = 67 (001000011)
+35 + 33 = 68 (001000100)
+35 + 34 = 69 (001000101)
+35 + 35 = 70 (001000110)
+35 + 36 = 71 (001000111)
+35 + 37 = 72 (001001000)
+35 + 38 = 73 (001001001)
+35 + 39 = 74 (001001010)
+35 + 40 = 75 (001001011)
+35 + 41 = 76 (001001100)
+35 + 42 = 77 (001001101)
+35 + 43 = 78 (001001110)
+35 + 44 = 79 (001001111)
+35 + 45 = 80 (001010000)
+35 + 46 = 81 (001010001)
+35 + 47 = 82 (001010010)
+35 + 48 = 83 (001010011)
+35 + 49 = 84 (001010100)
+35 + 50 = 85 (001010101)
+35 + 51 = 86 (001010110)
+35 + 52 = 87 (001010111)
+35 + 53 = 88 (001011000)
+35 + 54 = 89 (001011001)
+35 + 55 = 90 (001011010)
+35 + 56 = 91 (001011011)
+35 + 57 = 92 (001011100)
+35 + 58 = 93 (001011101)
+35 + 59 = 94 (001011110)
+35 + 60 = 95 (001011111)
+35 + 61 = 96 (001100000)
+35 + 62 = 97 (001100001)
+35 + 63 = 98 (001100010)
+36 + 0 = 36 (000100100)
+36 + 1 = 37 (000100101)
+36 + 2 = 38 (000100110)
+36 + 3 = 39 (000100111)
+36 + 4 = 40 (000101000)
+36 + 5 = 41 (000101001)
+36 + 6 = 42 (000101010)
+36 + 7 = 43 (000101011)
+36 + 8 = 44 (000101100)
+36 + 9 = 45 (000101101)
+36 + 10 = 46 (000101110)
+36 + 11 = 47 (000101111)
+36 + 12 = 48 (000110000)
+36 + 13 = 49 (000110001)
+36 + 14 = 50 (000110010)
+36 + 15 = 51 (000110011)
+36 + 16 = 52 (000110100)
+36 + 17 = 53 (000110101)
+36 + 18 = 54 (000110110)
+36 + 19 = 55 (000110111)
+36 + 20 = 56 (000111000)
+36 + 21 = 57 (000111001)
+36 + 22 = 58 (000111010)
+36 + 23 = 59 (000111011)
+36 + 24 = 60 (000111100)
+36 + 25 = 61 (000111101)
+36 + 26 = 62 (000111110)
+36 + 27 = 63 (000111111)
+36 + 28 = 64 (001000000)
+36 + 29 = 65 (001000001)
+36 + 30 = 66 (001000010)
+36 + 31 = 67 (001000011)
+36 + 32 = 68 (001000100)
+36 + 33 = 69 (001000101)
+36 + 34 = 70 (001000110)
+36 + 35 = 71 (001000111)
+36 + 36 = 72 (001001000)
+36 + 37 = 73 (001001001)
+36 + 38 = 74 (001001010)
+36 + 39 = 75 (001001011)
+36 + 40 = 76 (001001100)
+36 + 41 = 77 (001001101)
+36 + 42 = 78 (001001110)
+36 + 43 = 79 (001001111)
+36 + 44 = 80 (001010000)
+36 + 45 = 81 (001010001)
+36 + 46 = 82 (001010010)
+36 + 47 = 83 (001010011)
+36 + 48 = 84 (001010100)
+36 + 49 = 85 (001010101)
+36 + 50 = 86 (001010110)
+36 + 51 = 87 (001010111)
+36 + 52 = 88 (001011000)
+36 + 53 = 89 (001011001)
+36 + 54 = 90 (001011010)
+36 + 55 = 91 (001011011)
+36 + 56 = 92 (001011100)
+36 + 57 = 93 (001011101)
+36 + 58 = 94 (001011110)
+36 + 59 = 95 (001011111)
+36 + 60 = 96 (001100000)
+36 + 61 = 97 (001100001)
+36 + 62 = 98 (001100010)
+36 + 63 = 99 (001100011)
+37 + 0 = 37 (000100101)
+37 + 1 = 38 (000100110)
+37 + 2 = 39 (000100111)
+37 + 3 = 40 (000101000)
+37 + 4 = 41 (000101001)
+37 + 5 = 42 (000101010)
+37 + 6 = 43 (000101011)
+37 + 7 = 44 (000101100)
+37 + 8 = 45 (000101101)
+37 + 9 = 46 (000101110)
+37 + 10 = 47 (000101111)
+37 + 11 = 48 (000110000)
+37 + 12 = 49 (000110001)
+37 + 13 = 50 (000110010)
+37 + 14 = 51 (000110011)
+37 + 15 = 52 (000110100)
+37 + 16 = 53 (000110101)
+37 + 17 = 54 (000110110)
+37 + 18 = 55 (000110111)
+37 + 19 = 56 (000111000)
+37 + 20 = 57 (000111001)
+37 + 21 = 58 (000111010)
+37 + 22 = 59 (000111011)
+37 + 23 = 60 (000111100)
+37 + 24 = 61 (000111101)
+37 + 25 = 62 (000111110)
+37 + 26 = 63 (000111111)
+37 + 27 = 64 (001000000)
+37 + 28 = 65 (001000001)
+37 + 29 = 66 (001000010)
+37 + 30 = 67 (001000011)
+37 + 31 = 68 (001000100)
+37 + 32 = 69 (001000101)
+37 + 33 = 70 (001000110)
+37 + 34 = 71 (001000111)
+37 + 35 = 72 (001001000)
+37 + 36 = 73 (001001001)
+37 + 37 = 74 (001001010)
+37 + 38 = 75 (001001011)
+37 + 39 = 76 (001001100)
+37 + 40 = 77 (001001101)
+37 + 41 = 78 (001001110)
+37 + 42 = 79 (001001111)
+37 + 43 = 80 (001010000)
+37 + 44 = 81 (001010001)
+37 + 45 = 82 (001010010)
+37 + 46 = 83 (001010011)
+37 + 47 = 84 (001010100)
+37 + 48 = 85 (001010101)
+37 + 49 = 86 (001010110)
+37 + 50 = 87 (001010111)
+37 + 51 = 88 (001011000)
+37 + 52 = 89 (001011001)
+37 + 53 = 90 (001011010)
+37 + 54 = 91 (001011011)
+37 + 55 = 92 (001011100)
+37 + 56 = 93 (001011101)
+37 + 57 = 94 (001011110)
+37 + 58 = 95 (001011111)
+37 + 59 = 96 (001100000)
+37 + 60 = 97 (001100001)
+37 + 61 = 98 (001100010)
+37 + 62 = 99 (001100011)
+37 + 63 = 100 (001100100)
+38 + 0 = 38 (000100110)
+38 + 1 = 39 (000100111)
+38 + 2 = 40 (000101000)
+38 + 3 = 41 (000101001)
+38 + 4 = 42 (000101010)
+38 + 5 = 43 (000101011)
+38 + 6 = 44 (000101100)
+38 + 7 = 45 (000101101)
+38 + 8 = 46 (000101110)
+38 + 9 = 47 (000101111)
+38 + 10 = 48 (000110000)
+38 + 11 = 49 (000110001)
+38 + 12 = 50 (000110010)
+38 + 13 = 51 (000110011)
+38 + 14 = 52 (000110100)
+38 + 15 = 53 (000110101)
+38 + 16 = 54 (000110110)
+38 + 17 = 55 (000110111)
+38 + 18 = 56 (000111000)
+38 + 19 = 57 (000111001)
+38 + 20 = 58 (000111010)
+38 + 21 = 59 (000111011)
+38 + 22 = 60 (000111100)
+38 + 23 = 61 (000111101)
+38 + 24 = 62 (000111110)
+38 + 25 = 63 (000111111)
+38 + 26 = 64 (001000000)
+38 + 27 = 65 (001000001)
+38 + 28 = 66 (001000010)
+38 + 29 = 67 (001000011)
+38 + 30 = 68 (001000100)
+38 + 31 = 69 (001000101)
+38 + 32 = 70 (001000110)
+38 + 33 = 71 (001000111)
+38 + 34 = 72 (001001000)
+38 + 35 = 73 (001001001)
+38 + 36 = 74 (001001010)
+38 + 37 = 75 (001001011)
+38 + 38 = 76 (001001100)
+38 + 39 = 77 (001001101)
+38 + 40 = 78 (001001110)
+38 + 41 = 79 (001001111)
+38 + 42 = 80 (001010000)
+38 + 43 = 81 (001010001)
+38 + 44 = 82 (001010010)
+38 + 45 = 83 (001010011)
+38 + 46 = 84 (001010100)
+38 + 47 = 85 (001010101)
+38 + 48 = 86 (001010110)
+38 + 49 = 87 (001010111)
+38 + 50 = 88 (001011000)
+38 + 51 = 89 (001011001)
+38 + 52 = 90 (001011010)
+38 + 53 = 91 (001011011)
+38 + 54 = 92 (001011100)
+38 + 55 = 93 (001011101)
+38 + 56 = 94 (001011110)
+38 + 57 = 95 (001011111)
+38 + 58 = 96 (001100000)
+38 + 59 = 97 (001100001)
+38 + 60 = 98 (001100010)
+38 + 61 = 99 (001100011)
+38 + 62 = 100 (001100100)
+38 + 63 = 101 (001100101)
+39 + 0 = 39 (000100111)
+39 + 1 = 40 (000101000)
+39 + 2 = 41 (000101001)
+39 + 3 = 42 (000101010)
+39 + 4 = 43 (000101011)
+39 + 5 = 44 (000101100)
+39 + 6 = 45 (000101101)
+39 + 7 = 46 (000101110)
+39 + 8 = 47 (000101111)
+39 + 9 = 48 (000110000)
+39 + 10 = 49 (000110001)
+39 + 11 = 50 (000110010)
+39 + 12 = 51 (000110011)
+39 + 13 = 52 (000110100)
+39 + 14 = 53 (000110101)
+39 + 15 = 54 (000110110)
+39 + 16 = 55 (000110111)
+39 + 17 = 56 (000111000)
+39 + 18 = 57 (000111001)
+39 + 19 = 58 (000111010)
+39 + 20 = 59 (000111011)
+39 + 21 = 60 (000111100)
+39 + 22 = 61 (000111101)
+39 + 23 = 62 (000111110)
+39 + 24 = 63 (000111111)
+39 + 25 = 64 (001000000)
+39 + 26 = 65 (001000001)
+39 + 27 = 66 (001000010)
+39 + 28 = 67 (001000011)
+39 + 29 = 68 (001000100)
+39 + 30 = 69 (001000101)
+39 + 31 = 70 (001000110)
+39 + 32 = 71 (001000111)
+39 + 33 = 72 (001001000)
+39 + 34 = 73 (001001001)
+39 + 35 = 74 (001001010)
+39 + 36 = 75 (001001011)
+39 + 37 = 76 (001001100)
+39 + 38 = 77 (001001101)
+39 + 39 = 78 (001001110)
+39 + 40 = 79 (001001111)
+39 + 41 = 80 (001010000)
+39 + 42 = 81 (001010001)
+39 + 43 = 82 (001010010)
+39 + 44 = 83 (001010011)
+39 + 45 = 84 (001010100)
+39 + 46 = 85 (001010101)
+39 + 47 = 86 (001010110)
+39 + 48 = 87 (001010111)
+39 + 49 = 88 (001011000)
+39 + 50 = 89 (001011001)
+39 + 51 = 90 (001011010)
+39 + 52 = 91 (001011011)
+39 + 53 = 92 (001011100)
+39 + 54 = 93 (001011101)
+39 + 55 = 94 (001011110)
+39 + 56 = 95 (001011111)
+39 + 57 = 96 (001100000)
+39 + 58 = 97 (001100001)
+39 + 59 = 98 (001100010)
+39 + 60 = 99 (001100011)
+39 + 61 = 100 (001100100)
+39 + 62 = 101 (001100101)
+39 + 63 = 102 (001100110)
+40 + 0 = 40 (000101000)
+40 + 1 = 41 (000101001)
+40 + 2 = 42 (000101010)
+40 + 3 = 43 (000101011)
+40 + 4 = 44 (000101100)
+40 + 5 = 45 (000101101)
+40 + 6 = 46 (000101110)
+40 + 7 = 47 (000101111)
+40 + 8 = 48 (000110000)
+40 + 9 = 49 (000110001)
+40 + 10 = 50 (000110010)
+40 + 11 = 51 (000110011)
+40 + 12 = 52 (000110100)
+40 + 13 = 53 (000110101)
+40 + 14 = 54 (000110110)
+40 + 15 = 55 (000110111)
+40 + 16 = 56 (000111000)
+40 + 17 = 57 (000111001)
+40 + 18 = 58 (000111010)
+40 + 19 = 59 (000111011)
+40 + 20 = 60 (000111100)
+40 + 21 = 61 (000111101)
+40 + 22 = 62 (000111110)
+40 + 23 = 63 (000111111)
+40 + 24 = 64 (001000000)
+40 + 25 = 65 (001000001)
+40 + 26 = 66 (001000010)
+40 + 27 = 67 (001000011)
+40 + 28 = 68 (001000100)
+40 + 29 = 69 (001000101)
+40 + 30 = 70 (001000110)
+40 + 31 = 71 (001000111)
+40 + 32 = 72 (001001000)
+40 + 33 = 73 (001001001)
+40 + 34 = 74 (001001010)
+40 + 35 = 75 (001001011)
+40 + 36 = 76 (001001100)
+40 + 37 = 77 (001001101)
+40 + 38 = 78 (001001110)
+40 + 39 = 79 (001001111)
+40 + 40 = 80 (001010000)
+40 + 41 = 81 (001010001)
+40 + 42 = 82 (001010010)
+40 + 43 = 83 (001010011)
+40 + 44 = 84 (001010100)
+40 + 45 = 85 (001010101)
+40 + 46 = 86 (001010110)
+40 + 47 = 87 (001010111)
+40 + 48 = 88 (001011000)
+40 + 49 = 89 (001011001)
+40 + 50 = 90 (001011010)
+40 + 51 = 91 (001011011)
+40 + 52 = 92 (001011100)
+40 + 53 = 93 (001011101)
+40 + 54 = 94 (001011110)
+40 + 55 = 95 (001011111)
+40 + 56 = 96 (001100000)
+40 + 57 = 97 (001100001)
+40 + 58 = 98 (001100010)
+40 + 59 = 99 (001100011)
+40 + 60 = 100 (001100100)
+40 + 61 = 101 (001100101)
+40 + 62 = 102 (001100110)
+40 + 63 = 103 (001100111)
+41 + 0 = 41 (000101001)
+41 + 1 = 42 (000101010)
+41 + 2 = 43 (000101011)
+41 + 3 = 44 (000101100)
+41 + 4 = 45 (000101101)
+41 + 5 = 46 (000101110)
+41 + 6 = 47 (000101111)
+41 + 7 = 48 (000110000)
+41 + 8 = 49 (000110001)
+41 + 9 = 50 (000110010)
+41 + 10 = 51 (000110011)
+41 + 11 = 52 (000110100)
+41 + 12 = 53 (000110101)
+41 + 13 = 54 (000110110)
+41 + 14 = 55 (000110111)
+41 + 15 = 56 (000111000)
+41 + 16 = 57 (000111001)
+41 + 17 = 58 (000111010)
+41 + 18 = 59 (000111011)
+41 + 19 = 60 (000111100)
+41 + 20 = 61 (000111101)
+41 + 21 = 62 (000111110)
+41 + 22 = 63 (000111111)
+41 + 23 = 64 (001000000)
+41 + 24 = 65 (001000001)
+41 + 25 = 66 (001000010)
+41 + 26 = 67 (001000011)
+41 + 27 = 68 (001000100)
+41 + 28 = 69 (001000101)
+41 + 29 = 70 (001000110)
+41 + 30 = 71 (001000111)
+41 + 31 = 72 (001001000)
+41 + 32 = 73 (001001001)
+41 + 33 = 74 (001001010)
+41 + 34 = 75 (001001011)
+41 + 35 = 76 (001001100)
+41 + 36 = 77 (001001101)
+41 + 37 = 78 (001001110)
+41 + 38 = 79 (001001111)
+41 + 39 = 80 (001010000)
+41 + 40 = 81 (001010001)
+41 + 41 = 82 (001010010)
+41 + 42 = 83 (001010011)
+41 + 43 = 84 (001010100)
+41 + 44 = 85 (001010101)
+41 + 45 = 86 (001010110)
+41 + 46 = 87 (001010111)
+41 + 47 = 88 (001011000)
+41 + 48 = 89 (001011001)
+41 + 49 = 90 (001011010)
+41 + 50 = 91 (001011011)
+41 + 51 = 92 (001011100)
+41 + 52 = 93 (001011101)
+41 + 53 = 94 (001011110)
+41 + 54 = 95 (001011111)
+41 + 55 = 96 (001100000)
+41 + 56 = 97 (001100001)
+41 + 57 = 98 (001100010)
+41 + 58 = 99 (001100011)
+41 + 59 = 100 (001100100)
+41 + 60 = 101 (001100101)
+41 + 61 = 102 (001100110)
+41 + 62 = 103 (001100111)
+41 + 63 = 104 (001101000)
+42 + 0 = 42 (000101010)
+42 + 1 = 43 (000101011)
+42 + 2 = 44 (000101100)
+42 + 3 = 45 (000101101)
+42 + 4 = 46 (000101110)
+42 + 5 = 47 (000101111)
+42 + 6 = 48 (000110000)
+42 + 7 = 49 (000110001)
+42 + 8 = 50 (000110010)
+42 + 9 = 51 (000110011)
+42 + 10 = 52 (000110100)
+42 + 11 = 53 (000110101)
+42 + 12 = 54 (000110110)
+42 + 13 = 55 (000110111)
+42 + 14 = 56 (000111000)
+42 + 15 = 57 (000111001)
+42 + 16 = 58 (000111010)
+42 + 17 = 59 (000111011)
+42 + 18 = 60 (000111100)
+42 + 19 = 61 (000111101)
+42 + 20 = 62 (000111110)
+42 + 21 = 63 (000111111)
+42 + 22 = 64 (001000000)
+42 + 23 = 65 (001000001)
+42 + 24 = 66 (001000010)
+42 + 25 = 67 (001000011)
+42 + 26 = 68 (001000100)
+42 + 27 = 69 (001000101)
+42 + 28 = 70 (001000110)
+42 + 29 = 71 (001000111)
+42 + 30 = 72 (001001000)
+42 + 31 = 73 (001001001)
+42 + 32 = 74 (001001010)
+42 + 33 = 75 (001001011)
+42 + 34 = 76 (001001100)
+42 + 35 = 77 (001001101)
+42 + 36 = 78 (001001110)
+42 + 37 = 79 (001001111)
+42 + 38 = 80 (001010000)
+42 + 39 = 81 (001010001)
+42 + 40 = 82 (001010010)
+42 + 41 = 83 (001010011)
+42 + 42 = 84 (001010100)
+42 + 43 = 85 (001010101)
+42 + 44 = 86 (001010110)
+42 + 45 = 87 (001010111)
+42 + 46 = 88 (001011000)
+42 + 47 = 89 (001011001)
+42 + 48 = 90 (001011010)
+42 + 49 = 91 (001011011)
+42 + 50 = 92 (001011100)
+42 + 51 = 93 (001011101)
+42 + 52 = 94 (001011110)
+42 + 53 = 95 (001011111)
+42 + 54 = 96 (001100000)
+42 + 55 = 97 (001100001)
+42 + 56 = 98 (001100010)
+42 + 57 = 99 (001100011)
+42 + 58 = 100 (001100100)
+42 + 59 = 101 (001100101)
+42 + 60 = 102 (001100110)
+42 + 61 = 103 (001100111)
+42 + 62 = 104 (001101000)
+42 + 63 = 105 (001101001)
+43 + 0 = 43 (000101011)
+43 + 1 = 44 (000101100)
+43 + 2 = 45 (000101101)
+43 + 3 = 46 (000101110)
+43 + 4 = 47 (000101111)
+43 + 5 = 48 (000110000)
+43 + 6 = 49 (000110001)
+43 + 7 = 50 (000110010)
+43 + 8 = 51 (000110011)
+43 + 9 = 52 (000110100)
+43 + 10 = 53 (000110101)
+43 + 11 = 54 (000110110)
+43 + 12 = 55 (000110111)
+43 + 13 = 56 (000111000)
+43 + 14 = 57 (000111001)
+43 + 15 = 58 (000111010)
+43 + 16 = 59 (000111011)
+43 + 17 = 60 (000111100)
+43 + 18 = 61 (000111101)
+43 + 19 = 62 (000111110)
+43 + 20 = 63 (000111111)
+43 + 21 = 64 (001000000)
+43 + 22 = 65 (001000001)
+43 + 23 = 66 (001000010)
+43 + 24 = 67 (001000011)
+43 + 25 = 68 (001000100)
+43 + 26 = 69 (001000101)
+43 + 27 = 70 (001000110)
+43 + 28 = 71 (001000111)
+43 + 29 = 72 (001001000)
+43 + 30 = 73 (001001001)
+43 + 31 = 74 (001001010)
+43 + 32 = 75 (001001011)
+43 + 33 = 76 (001001100)
+43 + 34 = 77 (001001101)
+43 + 35 = 78 (001001110)
+43 + 36 = 79 (001001111)
+43 + 37 = 80 (001010000)
+43 + 38 = 81 (001010001)
+43 + 39 = 82 (001010010)
+43 + 40 = 83 (001010011)
+43 + 41 = 84 (001010100)
+43 + 42 = 85 (001010101)
+43 + 43 = 86 (001010110)
+43 + 44 = 87 (001010111)
+43 + 45 = 88 (001011000)
+43 + 46 = 89 (001011001)
+43 + 47 = 90 (001011010)
+43 + 48 = 91 (001011011)
+43 + 49 = 92 (001011100)
+43 + 50 = 93 (001011101)
+43 + 51 = 94 (001011110)
+43 + 52 = 95 (001011111)
+43 + 53 = 96 (001100000)
+43 + 54 = 97 (001100001)
+43 + 55 = 98 (001100010)
+43 + 56 = 99 (001100011)
+43 + 57 = 100 (001100100)
+43 + 58 = 101 (001100101)
+43 + 59 = 102 (001100110)
+43 + 60 = 103 (001100111)
+43 + 61 = 104 (001101000)
+43 + 62 = 105 (001101001)
+43 + 63 = 106 (001101010)
+44 + 0 = 44 (000101100)
+44 + 1 = 45 (000101101)
+44 + 2 = 46 (000101110)
+44 + 3 = 47 (000101111)
+44 + 4 = 48 (000110000)
+44 + 5 = 49 (000110001)
+44 + 6 = 50 (000110010)
+44 + 7 = 51 (000110011)
+44 + 8 = 52 (000110100)
+44 + 9 = 53 (000110101)
+44 + 10 = 54 (000110110)
+44 + 11 = 55 (000110111)
+44 + 12 = 56 (000111000)
+44 + 13 = 57 (000111001)
+44 + 14 = 58 (000111010)
+44 + 15 = 59 (000111011)
+44 + 16 = 60 (000111100)
+44 + 17 = 61 (000111101)
+44 + 18 = 62 (000111110)
+44 + 19 = 63 (000111111)
+44 + 20 = 64 (001000000)
+44 + 21 = 65 (001000001)
+44 + 22 = 66 (001000010)
+44 + 23 = 67 (001000011)
+44 + 24 = 68 (001000100)
+44 + 25 = 69 (001000101)
+44 + 26 = 70 (001000110)
+44 + 27 = 71 (001000111)
+44 + 28 = 72 (001001000)
+44 + 29 = 73 (001001001)
+44 + 30 = 74 (001001010)
+44 + 31 = 75 (001001011)
+44 + 32 = 76 (001001100)
+44 + 33 = 77 (001001101)
+44 + 34 = 78 (001001110)
+44 + 35 = 79 (001001111)
+44 + 36 = 80 (001010000)
+44 + 37 = 81 (001010001)
+44 + 38 = 82 (001010010)
+44 + 39 = 83 (001010011)
+44 + 40 = 84 (001010100)
+44 + 41 = 85 (001010101)
+44 + 42 = 86 (001010110)
+44 + 43 = 87 (001010111)
+44 + 44 = 88 (001011000)
+44 + 45 = 89 (001011001)
+44 + 46 = 90 (001011010)
+44 + 47 = 91 (001011011)
+44 + 48 = 92 (001011100)
+44 + 49 = 93 (001011101)
+44 + 50 = 94 (001011110)
+44 + 51 = 95 (001011111)
+44 + 52 = 96 (001100000)
+44 + 53 = 97 (001100001)
+44 + 54 = 98 (001100010)
+44 + 55 = 99 (001100011)
+44 + 56 = 100 (001100100)
+44 + 57 = 101 (001100101)
+44 + 58 = 102 (001100110)
+44 + 59 = 103 (001100111)
+44 + 60 = 104 (001101000)
+44 + 61 = 105 (001101001)
+44 + 62 = 106 (001101010)
+44 + 63 = 107 (001101011)
+45 + 0 = 45 (000101101)
+45 + 1 = 46 (000101110)
+45 + 2 = 47 (000101111)
+45 + 3 = 48 (000110000)
+45 + 4 = 49 (000110001)
+45 + 5 = 50 (000110010)
+45 + 6 = 51 (000110011)
+45 + 7 = 52 (000110100)
+45 + 8 = 53 (000110101)
+45 + 9 = 54 (000110110)
+45 + 10 = 55 (000110111)
+45 + 11 = 56 (000111000)
+45 + 12 = 57 (000111001)
+45 + 13 = 58 (000111010)
+45 + 14 = 59 (000111011)
+45 + 15 = 60 (000111100)
+45 + 16 = 61 (000111101)
+45 + 17 = 62 (000111110)
+45 + 18 = 63 (000111111)
+45 + 19 = 64 (001000000)
+45 + 20 = 65 (001000001)
+45 + 21 = 66 (001000010)
+45 + 22 = 67 (001000011)
+45 + 23 = 68 (001000100)
+45 + 24 = 69 (001000101)
+45 + 25 = 70 (001000110)
+45 + 26 = 71 (001000111)
+45 + 27 = 72 (001001000)
+45 + 28 = 73 (001001001)
+45 + 29 = 74 (001001010)
+45 + 30 = 75 (001001011)
+45 + 31 = 76 (001001100)
+45 + 32 = 77 (001001101)
+45 + 33 = 78 (001001110)
+45 + 34 = 79 (001001111)
+45 + 35 = 80 (001010000)
+45 + 36 = 81 (001010001)
+45 + 37 = 82 (001010010)
+45 + 38 = 83 (001010011)
+45 + 39 = 84 (001010100)
+45 + 40 = 85 (001010101)
+45 + 41 = 86 (001010110)
+45 + 42 = 87 (001010111)
+45 + 43 = 88 (001011000)
+45 + 44 = 89 (001011001)
+45 + 45 = 90 (001011010)
+45 + 46 = 91 (001011011)
+45 + 47 = 92 (001011100)
+45 + 48 = 93 (001011101)
+45 + 49 = 94 (001011110)
+45 + 50 = 95 (001011111)
+45 + 51 = 96 (001100000)
+45 + 52 = 97 (001100001)
+45 + 53 = 98 (001100010)
+45 + 54 = 99 (001100011)
+45 + 55 = 100 (001100100)
+45 + 56 = 101 (001100101)
+45 + 57 = 102 (001100110)
+45 + 58 = 103 (001100111)
+45 + 59 = 104 (001101000)
+45 + 60 = 105 (001101001)
+45 + 61 = 106 (001101010)
+45 + 62 = 107 (001101011)
+45 + 63 = 108 (001101100)
+46 + 0 = 46 (000101110)
+46 + 1 = 47 (000101111)
+46 + 2 = 48 (000110000)
+46 + 3 = 49 (000110001)
+46 + 4 = 50 (000110010)
+46 + 5 = 51 (000110011)
+46 + 6 = 52 (000110100)
+46 + 7 = 53 (000110101)
+46 + 8 = 54 (000110110)
+46 + 9 = 55 (000110111)
+46 + 10 = 56 (000111000)
+46 + 11 = 57 (000111001)
+46 + 12 = 58 (000111010)
+46 + 13 = 59 (000111011)
+46 + 14 = 60 (000111100)
+46 + 15 = 61 (000111101)
+46 + 16 = 62 (000111110)
+46 + 17 = 63 (000111111)
+46 + 18 = 64 (001000000)
+46 + 19 = 65 (001000001)
+46 + 20 = 66 (001000010)
+46 + 21 = 67 (001000011)
+46 + 22 = 68 (001000100)
+46 + 23 = 69 (001000101)
+46 + 24 = 70 (001000110)
+46 + 25 = 71 (001000111)
+46 + 26 = 72 (001001000)
+46 + 27 = 73 (001001001)
+46 + 28 = 74 (001001010)
+46 + 29 = 75 (001001011)
+46 + 30 = 76 (001001100)
+46 + 31 = 77 (001001101)
+46 + 32 = 78 (001001110)
+46 + 33 = 79 (001001111)
+46 + 34 = 80 (001010000)
+46 + 35 = 81 (001010001)
+46 + 36 = 82 (001010010)
+46 + 37 = 83 (001010011)
+46 + 38 = 84 (001010100)
+46 + 39 = 85 (001010101)
+46 + 40 = 86 (001010110)
+46 + 41 = 87 (001010111)
+46 + 42 = 88 (001011000)
+46 + 43 = 89 (001011001)
+46 + 44 = 90 (001011010)
+46 + 45 = 91 (001011011)
+46 + 46 = 92 (001011100)
+46 + 47 = 93 (001011101)
+46 + 48 = 94 (001011110)
+46 + 49 = 95 (001011111)
+46 + 50 = 96 (001100000)
+46 + 51 = 97 (001100001)
+46 + 52 = 98 (001100010)
+46 + 53 = 99 (001100011)
+46 + 54 = 100 (001100100)
+46 + 55 = 101 (001100101)
+46 + 56 = 102 (001100110)
+46 + 57 = 103 (001100111)
+46 + 58 = 104 (001101000)
+46 + 59 = 105 (001101001)
+46 + 60 = 106 (001101010)
+46 + 61 = 107 (001101011)
+46 + 62 = 108 (001101100)
+46 + 63 = 109 (001101101)
+47 + 0 = 47 (000101111)
+47 + 1 = 48 (000110000)
+47 + 2 = 49 (000110001)
+47 + 3 = 50 (000110010)
+47 + 4 = 51 (000110011)
+47 + 5 = 52 (000110100)
+47 + 6 = 53 (000110101)
+47 + 7 = 54 (000110110)
+47 + 8 = 55 (000110111)
+47 + 9 = 56 (000111000)
+47 + 10 = 57 (000111001)
+47 + 11 = 58 (000111010)
+47 + 12 = 59 (000111011)
+47 + 13 = 60 (000111100)
+47 + 14 = 61 (000111101)
+47 + 15 = 62 (000111110)
+47 + 16 = 63 (000111111)
+47 + 17 = 64 (001000000)
+47 + 18 = 65 (001000001)
+47 + 19 = 66 (001000010)
+47 + 20 = 67 (001000011)
+47 + 21 = 68 (001000100)
+47 + 22 = 69 (001000101)
+47 + 23 = 70 (001000110)
+47 + 24 = 71 (001000111)
+47 + 25 = 72 (001001000)
+47 + 26 = 73 (001001001)
+47 + 27 = 74 (001001010)
+47 + 28 = 75 (001001011)
+47 + 29 = 76 (001001100)
+47 + 30 = 77 (001001101)
+47 + 31 = 78 (001001110)
+47 + 32 = 79 (001001111)
+47 + 33 = 80 (001010000)
+47 + 34 = 81 (001010001)
+47 + 35 = 82 (001010010)
+47 + 36 = 83 (001010011)
+47 + 37 = 84 (001010100)
+47 + 38 = 85 (001010101)
+47 + 39 = 86 (001010110)
+47 + 40 = 87 (001010111)
+47 + 41 = 88 (001011000)
+47 + 42 = 89 (001011001)
+47 + 43 = 90 (001011010)
+47 + 44 = 91 (001011011)
+47 + 45 = 92 (001011100)
+47 + 46 = 93 (001011101)
+47 + 47 = 94 (001011110)
+47 + 48 = 95 (001011111)
+47 + 49 = 96 (001100000)
+47 + 50 = 97 (001100001)
+47 + 51 = 98 (001100010)
+47 + 52 = 99 (001100011)
+47 + 53 = 100 (001100100)
+47 + 54 = 101 (001100101)
+47 + 55 = 102 (001100110)
+47 + 56 = 103 (001100111)
+47 + 57 = 104 (001101000)
+47 + 58 = 105 (001101001)
+47 + 59 = 106 (001101010)
+47 + 60 = 107 (001101011)
+47 + 61 = 108 (001101100)
+47 + 62 = 109 (001101101)
+47 + 63 = 110 (001101110)
+48 + 0 = 48 (000110000)
+48 + 1 = 49 (000110001)
+48 + 2 = 50 (000110010)
+48 + 3 = 51 (000110011)
+48 + 4 = 52 (000110100)
+48 + 5 = 53 (000110101)
+48 + 6 = 54 (000110110)
+48 + 7 = 55 (000110111)
+48 + 8 = 56 (000111000)
+48 + 9 = 57 (000111001)
+48 + 10 = 58 (000111010)
+48 + 11 = 59 (000111011)
+48 + 12 = 60 (000111100)
+48 + 13 = 61 (000111101)
+48 + 14 = 62 (000111110)
+48 + 15 = 63 (000111111)
+48 + 16 = 64 (001000000)
+48 + 17 = 65 (001000001)
+48 + 18 = 66 (001000010)
+48 + 19 = 67 (001000011)
+48 + 20 = 68 (001000100)
+48 + 21 = 69 (001000101)
+48 + 22 = 70 (001000110)
+48 + 23 = 71 (001000111)
+48 + 24 = 72 (001001000)
+48 + 25 = 73 (001001001)
+48 + 26 = 74 (001001010)
+48 + 27 = 75 (001001011)
+48 + 28 = 76 (001001100)
+48 + 29 = 77 (001001101)
+48 + 30 = 78 (001001110)
+48 + 31 = 79 (001001111)
+48 + 32 = 80 (001010000)
+48 + 33 = 81 (001010001)
+48 + 34 = 82 (001010010)
+48 + 35 = 83 (001010011)
+48 + 36 = 84 (001010100)
+48 + 37 = 85 (001010101)
+48 + 38 = 86 (001010110)
+48 + 39 = 87 (001010111)
+48 + 40 = 88 (001011000)
+48 + 41 = 89 (001011001)
+48 + 42 = 90 (001011010)
+48 + 43 = 91 (001011011)
+48 + 44 = 92 (001011100)
+48 + 45 = 93 (001011101)
+48 + 46 = 94 (001011110)
+48 + 47 = 95 (001011111)
+48 + 48 = 96 (001100000)
+48 + 49 = 97 (001100001)
+48 + 50 = 98 (001100010)
+48 + 51 = 99 (001100011)
+48 + 52 = 100 (001100100)
+48 + 53 = 101 (001100101)
+48 + 54 = 102 (001100110)
+48 + 55 = 103 (001100111)
+48 + 56 = 104 (001101000)
+48 + 57 = 105 (001101001)
+48 + 58 = 106 (001101010)
+48 + 59 = 107 (001101011)
+48 + 60 = 108 (001101100)
+48 + 61 = 109 (001101101)
+48 + 62 = 110 (001101110)
+48 + 63 = 111 (001101111)
+49 + 0 = 49 (000110001)
+49 + 1 = 50 (000110010)
+49 + 2 = 51 (000110011)
+49 + 3 = 52 (000110100)
+49 + 4 = 53 (000110101)
+49 + 5 = 54 (000110110)
+49 + 6 = 55 (000110111)
+49 + 7 = 56 (000111000)
+49 + 8 = 57 (000111001)
+49 + 9 = 58 (000111010)
+49 + 10 = 59 (000111011)
+49 + 11 = 60 (000111100)
+49 + 12 = 61 (000111101)
+49 + 13 = 62 (000111110)
+49 + 14 = 63 (000111111)
+49 + 15 = 64 (001000000)
+49 + 16 = 65 (001000001)
+49 + 17 = 66 (001000010)
+49 + 18 = 67 (001000011)
+49 + 19 = 68 (001000100)
+49 + 20 = 69 (001000101)
+49 + 21 = 70 (001000110)
+49 + 22 = 71 (001000111)
+49 + 23 = 72 (001001000)
+49 + 24 = 73 (001001001)
+49 + 25 = 74 (001001010)
+49 + 26 = 75 (001001011)
+49 + 27 = 76 (001001100)
+49 + 28 = 77 (001001101)
+49 + 29 = 78 (001001110)
+49 + 30 = 79 (001001111)
+49 + 31 = 80 (001010000)
+49 + 32 = 81 (001010001)
+49 + 33 = 82 (001010010)
+49 + 34 = 83 (001010011)
+49 + 35 = 84 (001010100)
+49 + 36 = 85 (001010101)
+49 + 37 = 86 (001010110)
+49 + 38 = 87 (001010111)
+49 + 39 = 88 (001011000)
+49 + 40 = 89 (001011001)
+49 + 41 = 90 (001011010)
+49 + 42 = 91 (001011011)
+49 + 43 = 92 (001011100)
+49 + 44 = 93 (001011101)
+49 + 45 = 94 (001011110)
+49 + 46 = 95 (001011111)
+49 + 47 = 96 (001100000)
+49 + 48 = 97 (001100001)
+49 + 49 = 98 (001100010)
+49 + 50 = 99 (001100011)
+49 + 51 = 100 (001100100)
+49 + 52 = 101 (001100101)
+49 + 53 = 102 (001100110)
+49 + 54 = 103 (001100111)
+49 + 55 = 104 (001101000)
+49 + 56 = 105 (001101001)
+49 + 57 = 106 (001101010)
+49 + 58 = 107 (001101011)
+49 + 59 = 108 (001101100)
+49 + 60 = 109 (001101101)
+49 + 61 = 110 (001101110)
+49 + 62 = 111 (001101111)
+49 + 63 = 112 (001110000)
+50 + 0 = 50 (000110010)
+50 + 1 = 51 (000110011)
+50 + 2 = 52 (000110100)
+50 + 3 = 53 (000110101)
+50 + 4 = 54 (000110110)
+50 + 5 = 55 (000110111)
+50 + 6 = 56 (000111000)
+50 + 7 = 57 (000111001)
+50 + 8 = 58 (000111010)
+50 + 9 = 59 (000111011)
+50 + 10 = 60 (000111100)
+50 + 11 = 61 (000111101)
+50 + 12 = 62 (000111110)
+50 + 13 = 63 (000111111)
+50 + 14 = 64 (001000000)
+50 + 15 = 65 (001000001)
+50 + 16 = 66 (001000010)
+50 + 17 = 67 (001000011)
+50 + 18 = 68 (001000100)
+50 + 19 = 69 (001000101)
+50 + 20 = 70 (001000110)
+50 + 21 = 71 (001000111)
+50 + 22 = 72 (001001000)
+50 + 23 = 73 (001001001)
+50 + 24 = 74 (001001010)
+50 + 25 = 75 (001001011)
+50 + 26 = 76 (001001100)
+50 + 27 = 77 (001001101)
+50 + 28 = 78 (001001110)
+50 + 29 = 79 (001001111)
+50 + 30 = 80 (001010000)
+50 + 31 = 81 (001010001)
+50 + 32 = 82 (001010010)
+50 + 33 = 83 (001010011)
+50 + 34 = 84 (001010100)
+50 + 35 = 85 (001010101)
+50 + 36 = 86 (001010110)
+50 + 37 = 87 (001010111)
+50 + 38 = 88 (001011000)
+50 + 39 = 89 (001011001)
+50 + 40 = 90 (001011010)
+50 + 41 = 91 (001011011)
+50 + 42 = 92 (001011100)
+50 + 43 = 93 (001011101)
+50 + 44 = 94 (001011110)
+50 + 45 = 95 (001011111)
+50 + 46 = 96 (001100000)
+50 + 47 = 97 (001100001)
+50 + 48 = 98 (001100010)
+50 + 49 = 99 (001100011)
+50 + 50 = 100 (001100100)
+50 + 51 = 101 (001100101)
+50 + 52 = 102 (001100110)
+50 + 53 = 103 (001100111)
+50 + 54 = 104 (001101000)
+50 + 55 = 105 (001101001)
+50 + 56 = 106 (001101010)
+50 + 57 = 107 (001101011)
+50 + 58 = 108 (001101100)
+50 + 59 = 109 (001101101)
+50 + 60 = 110 (001101110)
+50 + 61 = 111 (001101111)
+50 + 62 = 112 (001110000)
+50 + 63 = 113 (001110001)
+51 + 0 = 51 (000110011)
+51 + 1 = 52 (000110100)
+51 + 2 = 53 (000110101)
+51 + 3 = 54 (000110110)
+51 + 4 = 55 (000110111)
+51 + 5 = 56 (000111000)
+51 + 6 = 57 (000111001)
+51 + 7 = 58 (000111010)
+51 + 8 = 59 (000111011)
+51 + 9 = 60 (000111100)
+51 + 10 = 61 (000111101)
+51 + 11 = 62 (000111110)
+51 + 12 = 63 (000111111)
+51 + 13 = 64 (001000000)
+51 + 14 = 65 (001000001)
+51 + 15 = 66 (001000010)
+51 + 16 = 67 (001000011)
+51 + 17 = 68 (001000100)
+51 + 18 = 69 (001000101)
+51 + 19 = 70 (001000110)
+51 + 20 = 71 (001000111)
+51 + 21 = 72 (001001000)
+51 + 22 = 73 (001001001)
+51 + 23 = 74 (001001010)
+51 + 24 = 75 (001001011)
+51 + 25 = 76 (001001100)
+51 + 26 = 77 (001001101)
+51 + 27 = 78 (001001110)
+51 + 28 = 79 (001001111)
+51 + 29 = 80 (001010000)
+51 + 30 = 81 (001010001)
+51 + 31 = 82 (001010010)
+51 + 32 = 83 (001010011)
+51 + 33 = 84 (001010100)
+51 + 34 = 85 (001010101)
+51 + 35 = 86 (001010110)
+51 + 36 = 87 (001010111)
+51 + 37 = 88 (001011000)
+51 + 38 = 89 (001011001)
+51 + 39 = 90 (001011010)
+51 + 40 = 91 (001011011)
+51 + 41 = 92 (001011100)
+51 + 42 = 93 (001011101)
+51 + 43 = 94 (001011110)
+51 + 44 = 95 (001011111)
+51 + 45 = 96 (001100000)
+51 + 46 = 97 (001100001)
+51 + 47 = 98 (001100010)
+51 + 48 = 99 (001100011)
+51 + 49 = 100 (001100100)
+51 + 50 = 101 (001100101)
+51 + 51 = 102 (001100110)
+51 + 52 = 103 (001100111)
+51 + 53 = 104 (001101000)
+51 + 54 = 105 (001101001)
+51 + 55 = 106 (001101010)
+51 + 56 = 107 (001101011)
+51 + 57 = 108 (001101100)
+51 + 58 = 109 (001101101)
+51 + 59 = 110 (001101110)
+51 + 60 = 111 (001101111)
+51 + 61 = 112 (001110000)
+51 + 62 = 113 (001110001)
+51 + 63 = 114 (001110010)
+52 + 0 = 52 (000110100)
+52 + 1 = 53 (000110101)
+52 + 2 = 54 (000110110)
+52 + 3 = 55 (000110111)
+52 + 4 = 56 (000111000)
+52 + 5 = 57 (000111001)
+52 + 6 = 58 (000111010)
+52 + 7 = 59 (000111011)
+52 + 8 = 60 (000111100)
+52 + 9 = 61 (000111101)
+52 + 10 = 62 (000111110)
+52 + 11 = 63 (000111111)
+52 + 12 = 64 (001000000)
+52 + 13 = 65 (001000001)
+52 + 14 = 66 (001000010)
+52 + 15 = 67 (001000011)
+52 + 16 = 68 (001000100)
+52 + 17 = 69 (001000101)
+52 + 18 = 70 (001000110)
+52 + 19 = 71 (001000111)
+52 + 20 = 72 (001001000)
+52 + 21 = 73 (001001001)
+52 + 22 = 74 (001001010)
+52 + 23 = 75 (001001011)
+52 + 24 = 76 (001001100)
+52 + 25 = 77 (001001101)
+52 + 26 = 78 (001001110)
+52 + 27 = 79 (001001111)
+52 + 28 = 80 (001010000)
+52 + 29 = 81 (001010001)
+52 + 30 = 82 (001010010)
+52 + 31 = 83 (001010011)
+52 + 32 = 84 (001010100)
+52 + 33 = 85 (001010101)
+52 + 34 = 86 (001010110)
+52 + 35 = 87 (001010111)
+52 + 36 = 88 (001011000)
+52 + 37 = 89 (001011001)
+52 + 38 = 90 (001011010)
+52 + 39 = 91 (001011011)
+52 + 40 = 92 (001011100)
+52 + 41 = 93 (001011101)
+52 + 42 = 94 (001011110)
+52 + 43 = 95 (001011111)
+52 + 44 = 96 (001100000)
+52 + 45 = 97 (001100001)
+52 + 46 = 98 (001100010)
+52 + 47 = 99 (001100011)
+52 + 48 = 100 (001100100)
+52 + 49 = 101 (001100101)
+52 + 50 = 102 (001100110)
+52 + 51 = 103 (001100111)
+52 + 52 = 104 (001101000)
+52 + 53 = 105 (001101001)
+52 + 54 = 106 (001101010)
+52 + 55 = 107 (001101011)
+52 + 56 = 108 (001101100)
+52 + 57 = 109 (001101101)
+52 + 58 = 110 (001101110)
+52 + 59 = 111 (001101111)
+52 + 60 = 112 (001110000)
+52 + 61 = 113 (001110001)
+52 + 62 = 114 (001110010)
+52 + 63 = 115 (001110011)
+53 + 0 = 53 (000110101)
+53 + 1 = 54 (000110110)
+53 + 2 = 55 (000110111)
+53 + 3 = 56 (000111000)
+53 + 4 = 57 (000111001)
+53 + 5 = 58 (000111010)
+53 + 6 = 59 (000111011)
+53 + 7 = 60 (000111100)
+53 + 8 = 61 (000111101)
+53 + 9 = 62 (000111110)
+53 + 10 = 63 (000111111)
+53 + 11 = 64 (001000000)
+53 + 12 = 65 (001000001)
+53 + 13 = 66 (001000010)
+53 + 14 = 67 (001000011)
+53 + 15 = 68 (001000100)
+53 + 16 = 69 (001000101)
+53 + 17 = 70 (001000110)
+53 + 18 = 71 (001000111)
+53 + 19 = 72 (001001000)
+53 + 20 = 73 (001001001)
+53 + 21 = 74 (001001010)
+53 + 22 = 75 (001001011)
+53 + 23 = 76 (001001100)
+53 + 24 = 77 (001001101)
+53 + 25 = 78 (001001110)
+53 + 26 = 79 (001001111)
+53 + 27 = 80 (001010000)
+53 + 28 = 81 (001010001)
+53 + 29 = 82 (001010010)
+53 + 30 = 83 (001010011)
+53 + 31 = 84 (001010100)
+53 + 32 = 85 (001010101)
+53 + 33 = 86 (001010110)
+53 + 34 = 87 (001010111)
+53 + 35 = 88 (001011000)
+53 + 36 = 89 (001011001)
+53 + 37 = 90 (001011010)
+53 + 38 = 91 (001011011)
+53 + 39 = 92 (001011100)
+53 + 40 = 93 (001011101)
+53 + 41 = 94 (001011110)
+53 + 42 = 95 (001011111)
+53 + 43 = 96 (001100000)
+53 + 44 = 97 (001100001)
+53 + 45 = 98 (001100010)
+53 + 46 = 99 (001100011)
+53 + 47 = 100 (001100100)
+53 + 48 = 101 (001100101)
+53 + 49 = 102 (001100110)
+53 + 50 = 103 (001100111)
+53 + 51 = 104 (001101000)
+53 + 52 = 105 (001101001)
+53 + 53 = 106 (001101010)
+53 + 54 = 107 (001101011)
+53 + 55 = 108 (001101100)
+53 + 56 = 109 (001101101)
+53 + 57 = 110 (001101110)
+53 + 58 = 111 (001101111)
+53 + 59 = 112 (001110000)
+53 + 60 = 113 (001110001)
+53 + 61 = 114 (001110010)
+53 + 62 = 115 (001110011)
+53 + 63 = 116 (001110100)
+54 + 0 = 54 (000110110)
+54 + 1 = 55 (000110111)
+54 + 2 = 56 (000111000)
+54 + 3 = 57 (000111001)
+54 + 4 = 58 (000111010)
+54 + 5 = 59 (000111011)
+54 + 6 = 60 (000111100)
+54 + 7 = 61 (000111101)
+54 + 8 = 62 (000111110)
+54 + 9 = 63 (000111111)
+54 + 10 = 64 (001000000)
+54 + 11 = 65 (001000001)
+54 + 12 = 66 (001000010)
+54 + 13 = 67 (001000011)
+54 + 14 = 68 (001000100)
+54 + 15 = 69 (001000101)
+54 + 16 = 70 (001000110)
+54 + 17 = 71 (001000111)
+54 + 18 = 72 (001001000)
+54 + 19 = 73 (001001001)
+54 + 20 = 74 (001001010)
+54 + 21 = 75 (001001011)
+54 + 22 = 76 (001001100)
+54 + 23 = 77 (001001101)
+54 + 24 = 78 (001001110)
+54 + 25 = 79 (001001111)
+54 + 26 = 80 (001010000)
+54 + 27 = 81 (001010001)
+54 + 28 = 82 (001010010)
+54 + 29 = 83 (001010011)
+54 + 30 = 84 (001010100)
+54 + 31 = 85 (001010101)
+54 + 32 = 86 (001010110)
+54 + 33 = 87 (001010111)
+54 + 34 = 88 (001011000)
+54 + 35 = 89 (001011001)
+54 + 36 = 90 (001011010)
+54 + 37 = 91 (001011011)
+54 + 38 = 92 (001011100)
+54 + 39 = 93 (001011101)
+54 + 40 = 94 (001011110)
+54 + 41 = 95 (001011111)
+54 + 42 = 96 (001100000)
+54 + 43 = 97 (001100001)
+54 + 44 = 98 (001100010)
+54 + 45 = 99 (001100011)
+54 + 46 = 100 (001100100)
+54 + 47 = 101 (001100101)
+54 + 48 = 102 (001100110)
+54 + 49 = 103 (001100111)
+54 + 50 = 104 (001101000)
+54 + 51 = 105 (001101001)
+54 + 52 = 106 (001101010)
+54 + 53 = 107 (001101011)
+54 + 54 = 108 (001101100)
+54 + 55 = 109 (001101101)
+54 + 56 = 110 (001101110)
+54 + 57 = 111 (001101111)
+54 + 58 = 112 (001110000)
+54 + 59 = 113 (001110001)
+54 + 60 = 114 (001110010)
+54 + 61 = 115 (001110011)
+54 + 62 = 116 (001110100)
+54 + 63 = 117 (001110101)
+55 + 0 = 55 (000110111)
+55 + 1 = 56 (000111000)
+55 + 2 = 57 (000111001)
+55 + 3 = 58 (000111010)
+55 + 4 = 59 (000111011)
+55 + 5 = 60 (000111100)
+55 + 6 = 61 (000111101)
+55 + 7 = 62 (000111110)
+55 + 8 = 63 (000111111)
+55 + 9 = 64 (001000000)
+55 + 10 = 65 (001000001)
+55 + 11 = 66 (001000010)
+55 + 12 = 67 (001000011)
+55 + 13 = 68 (001000100)
+55 + 14 = 69 (001000101)
+55 + 15 = 70 (001000110)
+55 + 16 = 71 (001000111)
+55 + 17 = 72 (001001000)
+55 + 18 = 73 (001001001)
+55 + 19 = 74 (001001010)
+55 + 20 = 75 (001001011)
+55 + 21 = 76 (001001100)
+55 + 22 = 77 (001001101)
+55 + 23 = 78 (001001110)
+55 + 24 = 79 (001001111)
+55 + 25 = 80 (001010000)
+55 + 26 = 81 (001010001)
+55 + 27 = 82 (001010010)
+55 + 28 = 83 (001010011)
+55 + 29 = 84 (001010100)
+55 + 30 = 85 (001010101)
+55 + 31 = 86 (001010110)
+55 + 32 = 87 (001010111)
+55 + 33 = 88 (001011000)
+55 + 34 = 89 (001011001)
+55 + 35 = 90 (001011010)
+55 + 36 = 91 (001011011)
+55 + 37 = 92 (001011100)
+55 + 38 = 93 (001011101)
+55 + 39 = 94 (001011110)
+55 + 40 = 95 (001011111)
+55 + 41 = 96 (001100000)
+55 + 42 = 97 (001100001)
+55 + 43 = 98 (001100010)
+55 + 44 = 99 (001100011)
+55 + 45 = 100 (001100100)
+55 + 46 = 101 (001100101)
+55 + 47 = 102 (001100110)
+55 + 48 = 103 (001100111)
+55 + 49 = 104 (001101000)
+55 + 50 = 105 (001101001)
+55 + 51 = 106 (001101010)
+55 + 52 = 107 (001101011)
+55 + 53 = 108 (001101100)
+55 + 54 = 109 (001101101)
+55 + 55 = 110 (001101110)
+55 + 56 = 111 (001101111)
+55 + 57 = 112 (001110000)
+55 + 58 = 113 (001110001)
+55 + 59 = 114 (001110010)
+55 + 60 = 115 (001110011)
+55 + 61 = 116 (001110100)
+55 + 62 = 117 (001110101)
+55 + 63 = 118 (001110110)
+56 + 0 = 56 (000111000)
+56 + 1 = 57 (000111001)
+56 + 2 = 58 (000111010)
+56 + 3 = 59 (000111011)
+56 + 4 = 60 (000111100)
+56 + 5 = 61 (000111101)
+56 + 6 = 62 (000111110)
+56 + 7 = 63 (000111111)
+56 + 8 = 64 (001000000)
+56 + 9 = 65 (001000001)
+56 + 10 = 66 (001000010)
+56 + 11 = 67 (001000011)
+56 + 12 = 68 (001000100)
+56 + 13 = 69 (001000101)
+56 + 14 = 70 (001000110)
+56 + 15 = 71 (001000111)
+56 + 16 = 72 (001001000)
+56 + 17 = 73 (001001001)
+56 + 18 = 74 (001001010)
+56 + 19 = 75 (001001011)
+56 + 20 = 76 (001001100)
+56 + 21 = 77 (001001101)
+56 + 22 = 78 (001001110)
+56 + 23 = 79 (001001111)
+56 + 24 = 80 (001010000)
+56 + 25 = 81 (001010001)
+56 + 26 = 82 (001010010)
+56 + 27 = 83 (001010011)
+56 + 28 = 84 (001010100)
+56 + 29 = 85 (001010101)
+56 + 30 = 86 (001010110)
+56 + 31 = 87 (001010111)
+56 + 32 = 88 (001011000)
+56 + 33 = 89 (001011001)
+56 + 34 = 90 (001011010)
+56 + 35 = 91 (001011011)
+56 + 36 = 92 (001011100)
+56 + 37 = 93 (001011101)
+56 + 38 = 94 (001011110)
+56 + 39 = 95 (001011111)
+56 + 40 = 96 (001100000)
+56 + 41 = 97 (001100001)
+56 + 42 = 98 (001100010)
+56 + 43 = 99 (001100011)
+56 + 44 = 100 (001100100)
+56 + 45 = 101 (001100101)
+56 + 46 = 102 (001100110)
+56 + 47 = 103 (001100111)
+56 + 48 = 104 (001101000)
+56 + 49 = 105 (001101001)
+56 + 50 = 106 (001101010)
+56 + 51 = 107 (001101011)
+56 + 52 = 108 (001101100)
+56 + 53 = 109 (001101101)
+56 + 54 = 110 (001101110)
+56 + 55 = 111 (001101111)
+56 + 56 = 112 (001110000)
+56 + 57 = 113 (001110001)
+56 + 58 = 114 (001110010)
+56 + 59 = 115 (001110011)
+56 + 60 = 116 (001110100)
+56 + 61 = 117 (001110101)
+56 + 62 = 118 (001110110)
+56 + 63 = 119 (001110111)
+57 + 0 = 57 (000111001)
+57 + 1 = 58 (000111010)
+57 + 2 = 59 (000111011)
+57 + 3 = 60 (000111100)
+57 + 4 = 61 (000111101)
+57 + 5 = 62 (000111110)
+57 + 6 = 63 (000111111)
+57 + 7 = 64 (001000000)
+57 + 8 = 65 (001000001)
+57 + 9 = 66 (001000010)
+57 + 10 = 67 (001000011)
+57 + 11 = 68 (001000100)
+57 + 12 = 69 (001000101)
+57 + 13 = 70 (001000110)
+57 + 14 = 71 (001000111)
+57 + 15 = 72 (001001000)
+57 + 16 = 73 (001001001)
+57 + 17 = 74 (001001010)
+57 + 18 = 75 (001001011)
+57 + 19 = 76 (001001100)
+57 + 20 = 77 (001001101)
+57 + 21 = 78 (001001110)
+57 + 22 = 79 (001001111)
+57 + 23 = 80 (001010000)
+57 + 24 = 81 (001010001)
+57 + 25 = 82 (001010010)
+57 + 26 = 83 (001010011)
+57 + 27 = 84 (001010100)
+57 + 28 = 85 (001010101)
+57 + 29 = 86 (001010110)
+57 + 30 = 87 (001010111)
+57 + 31 = 88 (001011000)
+57 + 32 = 89 (001011001)
+57 + 33 = 90 (001011010)
+57 + 34 = 91 (001011011)
+57 + 35 = 92 (001011100)
+57 + 36 = 93 (001011101)
+57 + 37 = 94 (001011110)
+57 + 38 = 95 (001011111)
+57 + 39 = 96 (001100000)
+57 + 40 = 97 (001100001)
+57 + 41 = 98 (001100010)
+57 + 42 = 99 (001100011)
+57 + 43 = 100 (001100100)
+57 + 44 = 101 (001100101)
+57 + 45 = 102 (001100110)
+57 + 46 = 103 (001100111)
+57 + 47 = 104 (001101000)
+57 + 48 = 105 (001101001)
+57 + 49 = 106 (001101010)
+57 + 50 = 107 (001101011)
+57 + 51 = 108 (001101100)
+57 + 52 = 109 (001101101)
+57 + 53 = 110 (001101110)
+57 + 54 = 111 (001101111)
+57 + 55 = 112 (001110000)
+57 + 56 = 113 (001110001)
+57 + 57 = 114 (001110010)
+57 + 58 = 115 (001110011)
+57 + 59 = 116 (001110100)
+57 + 60 = 117 (001110101)
+57 + 61 = 118 (001110110)
+57 + 62 = 119 (001110111)
+57 + 63 = 120 (001111000)
+58 + 0 = 58 (000111010)
+58 + 1 = 59 (000111011)
+58 + 2 = 60 (000111100)
+58 + 3 = 61 (000111101)
+58 + 4 = 62 (000111110)
+58 + 5 = 63 (000111111)
+58 + 6 = 64 (001000000)
+58 + 7 = 65 (001000001)
+58 + 8 = 66 (001000010)
+58 + 9 = 67 (001000011)
+58 + 10 = 68 (001000100)
+58 + 11 = 69 (001000101)
+58 + 12 = 70 (001000110)
+58 + 13 = 71 (001000111)
+58 + 14 = 72 (001001000)
+58 + 15 = 73 (001001001)
+58 + 16 = 74 (001001010)
+58 + 17 = 75 (001001011)
+58 + 18 = 76 (001001100)
+58 + 19 = 77 (001001101)
+58 + 20 = 78 (001001110)
+58 + 21 = 79 (001001111)
+58 + 22 = 80 (001010000)
+58 + 23 = 81 (001010001)
+58 + 24 = 82 (001010010)
+58 + 25 = 83 (001010011)
+58 + 26 = 84 (001010100)
+58 + 27 = 85 (001010101)
+58 + 28 = 86 (001010110)
+58 + 29 = 87 (001010111)
+58 + 30 = 88 (001011000)
+58 + 31 = 89 (001011001)
+58 + 32 = 90 (001011010)
+58 + 33 = 91 (001011011)
+58 + 34 = 92 (001011100)
+58 + 35 = 93 (001011101)
+58 + 36 = 94 (001011110)
+58 + 37 = 95 (001011111)
+58 + 38 = 96 (001100000)
+58 + 39 = 97 (001100001)
+58 + 40 = 98 (001100010)
+58 + 41 = 99 (001100011)
+58 + 42 = 100 (001100100)
+58 + 43 = 101 (001100101)
+58 + 44 = 102 (001100110)
+58 + 45 = 103 (001100111)
+58 + 46 = 104 (001101000)
+58 + 47 = 105 (001101001)
+58 + 48 = 106 (001101010)
+58 + 49 = 107 (001101011)
+58 + 50 = 108 (001101100)
+58 + 51 = 109 (001101101)
+58 + 52 = 110 (001101110)
+58 + 53 = 111 (001101111)
+58 + 54 = 112 (001110000)
+58 + 55 = 113 (001110001)
+58 + 56 = 114 (001110010)
+58 + 57 = 115 (001110011)
+58 + 58 = 116 (001110100)
+58 + 59 = 117 (001110101)
+58 + 60 = 118 (001110110)
+58 + 61 = 119 (001110111)
+58 + 62 = 120 (001111000)
+58 + 63 = 121 (001111001)
+59 + 0 = 59 (000111011)
+59 + 1 = 60 (000111100)
+59 + 2 = 61 (000111101)
+59 + 3 = 62 (000111110)
+59 + 4 = 63 (000111111)
+59 + 5 = 64 (001000000)
+59 + 6 = 65 (001000001)
+59 + 7 = 66 (001000010)
+59 + 8 = 67 (001000011)
+59 + 9 = 68 (001000100)
+59 + 10 = 69 (001000101)
+59 + 11 = 70 (001000110)
+59 + 12 = 71 (001000111)
+59 + 13 = 72 (001001000)
+59 + 14 = 73 (001001001)
+59 + 15 = 74 (001001010)
+59 + 16 = 75 (001001011)
+59 + 17 = 76 (001001100)
+59 + 18 = 77 (001001101)
+59 + 19 = 78 (001001110)
+59 + 20 = 79 (001001111)
+59 + 21 = 80 (001010000)
+59 + 22 = 81 (001010001)
+59 + 23 = 82 (001010010)
+59 + 24 = 83 (001010011)
+59 + 25 = 84 (001010100)
+59 + 26 = 85 (001010101)
+59 + 27 = 86 (001010110)
+59 + 28 = 87 (001010111)
+59 + 29 = 88 (001011000)
+59 + 30 = 89 (001011001)
+59 + 31 = 90 (001011010)
+59 + 32 = 91 (001011011)
+59 + 33 = 92 (001011100)
+59 + 34 = 93 (001011101)
+59 + 35 = 94 (001011110)
+59 + 36 = 95 (001011111)
+59 + 37 = 96 (001100000)
+59 + 38 = 97 (001100001)
+59 + 39 = 98 (001100010)
+59 + 40 = 99 (001100011)
+59 + 41 = 100 (001100100)
+59 + 42 = 101 (001100101)
+59 + 43 = 102 (001100110)
+59 + 44 = 103 (001100111)
+59 + 45 = 104 (001101000)
+59 + 46 = 105 (001101001)
+59 + 47 = 106 (001101010)
+59 + 48 = 107 (001101011)
+59 + 49 = 108 (001101100)
+59 + 50 = 109 (001101101)
+59 + 51 = 110 (001101110)
+59 + 52 = 111 (001101111)
+59 + 53 = 112 (001110000)
+59 + 54 = 113 (001110001)
+59 + 55 = 114 (001110010)
+59 + 56 = 115 (001110011)
+59 + 57 = 116 (001110100)
+59 + 58 = 117 (001110101)
+59 + 59 = 118 (001110110)
+59 + 60 = 119 (001110111)
+59 + 61 = 120 (001111000)
+59 + 62 = 121 (001111001)
+59 + 63 = 122 (001111010)
+60 + 0 = 60 (000111100)
+60 + 1 = 61 (000111101)
+60 + 2 = 62 (000111110)
+60 + 3 = 63 (000111111)
+60 + 4 = 64 (001000000)
+60 + 5 = 65 (001000001)
+60 + 6 = 66 (001000010)
+60 + 7 = 67 (001000011)
+60 + 8 = 68 (001000100)
+60 + 9 = 69 (001000101)
+60 + 10 = 70 (001000110)
+60 + 11 = 71 (001000111)
+60 + 12 = 72 (001001000)
+60 + 13 = 73 (001001001)
+60 + 14 = 74 (001001010)
+60 + 15 = 75 (001001011)
+60 + 16 = 76 (001001100)
+60 + 17 = 77 (001001101)
+60 + 18 = 78 (001001110)
+60 + 19 = 79 (001001111)
+60 + 20 = 80 (001010000)
+60 + 21 = 81 (001010001)
+60 + 22 = 82 (001010010)
+60 + 23 = 83 (001010011)
+60 + 24 = 84 (001010100)
+60 + 25 = 85 (001010101)
+60 + 26 = 86 (001010110)
+60 + 27 = 87 (001010111)
+60 + 28 = 88 (001011000)
+60 + 29 = 89 (001011001)
+60 + 30 = 90 (001011010)
+60 + 31 = 91 (001011011)
+60 + 32 = 92 (001011100)
+60 + 33 = 93 (001011101)
+60 + 34 = 94 (001011110)
+60 + 35 = 95 (001011111)
+60 + 36 = 96 (001100000)
+60 + 37 = 97 (001100001)
+60 + 38 = 98 (001100010)
+60 + 39 = 99 (001100011)
+60 + 40 = 100 (001100100)
+60 + 41 = 101 (001100101)
+60 + 42 = 102 (001100110)
+60 + 43 = 103 (001100111)
+60 + 44 = 104 (001101000)
+60 + 45 = 105 (001101001)
+60 + 46 = 106 (001101010)
+60 + 47 = 107 (001101011)
+60 + 48 = 108 (001101100)
+60 + 49 = 109 (001101101)
+60 + 50 = 110 (001101110)
+60 + 51 = 111 (001101111)
+60 + 52 = 112 (001110000)
+60 + 53 = 113 (001110001)
+60 + 54 = 114 (001110010)
+60 + 55 = 115 (001110011)
+60 + 56 = 116 (001110100)
+60 + 57 = 117 (001110101)
+60 + 58 = 118 (001110110)
+60 + 59 = 119 (001110111)
+60 + 60 = 120 (001111000)
+60 + 61 = 121 (001111001)
+60 + 62 = 122 (001111010)
+60 + 63 = 123 (001111011)
+61 + 0 = 61 (000111101)
+61 + 1 = 62 (000111110)
+61 + 2 = 63 (000111111)
+61 + 3 = 64 (001000000)
+61 + 4 = 65 (001000001)
+61 + 5 = 66 (001000010)
+61 + 6 = 67 (001000011)
+61 + 7 = 68 (001000100)
+61 + 8 = 69 (001000101)
+61 + 9 = 70 (001000110)
+61 + 10 = 71 (001000111)
+61 + 11 = 72 (001001000)
+61 + 12 = 73 (001001001)
+61 + 13 = 74 (001001010)
+61 + 14 = 75 (001001011)
+61 + 15 = 76 (001001100)
+61 + 16 = 77 (001001101)
+61 + 17 = 78 (001001110)
+61 + 18 = 79 (001001111)
+61 + 19 = 80 (001010000)
+61 + 20 = 81 (001010001)
+61 + 21 = 82 (001010010)
+61 + 22 = 83 (001010011)
+61 + 23 = 84 (001010100)
+61 + 24 = 85 (001010101)
+61 + 25 = 86 (001010110)
+61 + 26 = 87 (001010111)
+61 + 27 = 88 (001011000)
+61 + 28 = 89 (001011001)
+61 + 29 = 90 (001011010)
+61 + 30 = 91 (001011011)
+61 + 31 = 92 (001011100)
+61 + 32 = 93 (001011101)
+61 + 33 = 94 (001011110)
+61 + 34 = 95 (001011111)
+61 + 35 = 96 (001100000)
+61 + 36 = 97 (001100001)
+61 + 37 = 98 (001100010)
+61 + 38 = 99 (001100011)
+61 + 39 = 100 (001100100)
+61 + 40 = 101 (001100101)
+61 + 41 = 102 (001100110)
+61 + 42 = 103 (001100111)
+61 + 43 = 104 (001101000)
+61 + 44 = 105 (001101001)
+61 + 45 = 106 (001101010)
+61 + 46 = 107 (001101011)
+61 + 47 = 108 (001101100)
+61 + 48 = 109 (001101101)
+61 + 49 = 110 (001101110)
+61 + 50 = 111 (001101111)
+61 + 51 = 112 (001110000)
+61 + 52 = 113 (001110001)
+61 + 53 = 114 (001110010)
+61 + 54 = 115 (001110011)
+61 + 55 = 116 (001110100)
+61 + 56 = 117 (001110101)
+61 + 57 = 118 (001110110)
+61 + 58 = 119 (001110111)
+61 + 59 = 120 (001111000)
+61 + 60 = 121 (001111001)
+61 + 61 = 122 (001111010)
+61 + 62 = 123 (001111011)
+61 + 63 = 124 (001111100)
+62 + 0 = 62 (000111110)
+62 + 1 = 63 (000111111)
+62 + 2 = 64 (001000000)
+62 + 3 = 65 (001000001)
+62 + 4 = 66 (001000010)
+62 + 5 = 67 (001000011)
+62 + 6 = 68 (001000100)
+62 + 7 = 69 (001000101)
+62 + 8 = 70 (001000110)
+62 + 9 = 71 (001000111)
+62 + 10 = 72 (001001000)
+62 + 11 = 73 (001001001)
+62 + 12 = 74 (001001010)
+62 + 13 = 75 (001001011)
+62 + 14 = 76 (001001100)
+62 + 15 = 77 (001001101)
+62 + 16 = 78 (001001110)
+62 + 17 = 79 (001001111)
+62 + 18 = 80 (001010000)
+62 + 19 = 81 (001010001)
+62 + 20 = 82 (001010010)
+62 + 21 = 83 (001010011)
+62 + 22 = 84 (001010100)
+62 + 23 = 85 (001010101)
+62 + 24 = 86 (001010110)
+62 + 25 = 87 (001010111)
+62 + 26 = 88 (001011000)
+62 + 27 = 89 (001011001)
+62 + 28 = 90 (001011010)
+62 + 29 = 91 (001011011)
+62 + 30 = 92 (001011100)
+62 + 31 = 93 (001011101)
+62 + 32 = 94 (001011110)
+62 + 33 = 95 (001011111)
+62 + 34 = 96 (001100000)
+62 + 35 = 97 (001100001)
+62 + 36 = 98 (001100010)
+62 + 37 = 99 (001100011)
+62 + 38 = 100 (001100100)
+62 + 39 = 101 (001100101)
+62 + 40 = 102 (001100110)
+62 + 41 = 103 (001100111)
+62 + 42 = 104 (001101000)
+62 + 43 = 105 (001101001)
+62 + 44 = 106 (001101010)
+62 + 45 = 107 (001101011)
+62 + 46 = 108 (001101100)
+62 + 47 = 109 (001101101)
+62 + 48 = 110 (001101110)
+62 + 49 = 111 (001101111)
+62 + 50 = 112 (001110000)
+62 + 51 = 113 (001110001)
+62 + 52 = 114 (001110010)
+62 + 53 = 115 (001110011)
+62 + 54 = 116 (001110100)
+62 + 55 = 117 (001110101)
+62 + 56 = 118 (001110110)
+62 + 57 = 119 (001110111)
+62 + 58 = 120 (001111000)
+62 + 59 = 121 (001111001)
+62 + 60 = 122 (001111010)
+62 + 61 = 123 (001111011)
+62 + 62 = 124 (001111100)
+62 + 63 = 125 (001111101)
+63 + 0 = 63 (000111111)
+63 + 1 = 64 (001000000)
+63 + 2 = 65 (001000001)
+63 + 3 = 66 (001000010)
+63 + 4 = 67 (001000011)
+63 + 5 = 68 (001000100)
+63 + 6 = 69 (001000101)
+63 + 7 = 70 (001000110)
+63 + 8 = 71 (001000111)
+63 + 9 = 72 (001001000)
+63 + 10 = 73 (001001001)
+63 + 11 = 74 (001001010)
+63 + 12 = 75 (001001011)
+63 + 13 = 76 (001001100)
+63 + 14 = 77 (001001101)
+63 + 15 = 78 (001001110)
+63 + 16 = 79 (001001111)
+63 + 17 = 80 (001010000)
+63 + 18 = 81 (001010001)
+63 + 19 = 82 (001010010)
+63 + 20 = 83 (001010011)
+63 + 21 = 84 (001010100)
+63 + 22 = 85 (001010101)
+63 + 23 = 86 (001010110)
+63 + 24 = 87 (001010111)
+63 + 25 = 88 (001011000)
+63 + 26 = 89 (001011001)
+63 + 27 = 90 (001011010)
+63 + 28 = 91 (001011011)
+63 + 29 = 92 (001011100)
+63 + 30 = 93 (001011101)
+63 + 31 = 94 (001011110)
+63 + 32 = 95 (001011111)
+63 + 33 = 96 (001100000)
+63 + 34 = 97 (001100001)
+63 + 35 = 98 (001100010)
+63 + 36 = 99 (001100011)
+63 + 37 = 100 (001100100)
+63 + 38 = 101 (001100101)
+63 + 39 = 102 (001100110)
+63 + 40 = 103 (001100111)
+63 + 41 = 104 (001101000)
+63 + 42 = 105 (001101001)
+63 + 43 = 106 (001101010)
+63 + 44 = 107 (001101011)
+63 + 45 = 108 (001101100)
+63 + 46 = 109 (001101101)
+63 + 47 = 110 (001101110)
+63 + 48 = 111 (001101111)
+63 + 49 = 112 (001110000)
+63 + 50 = 113 (001110001)
+63 + 51 = 114 (001110010)
+63 + 52 = 115 (001110011)
+63 + 53 = 116 (001110100)
+63 + 54 = 117 (001110101)
+63 + 55 = 118 (001110110)
+63 + 56 = 119 (001110111)
+63 + 57 = 120 (001111000)
+63 + 58 = 121 (001111001)
+63 + 59 = 122 (001111010)
+63 + 60 = 123 (001111011)
+63 + 61 = 124 (001111100)
+63 + 62 = 125 (001111101)
+63 + 63 = 126 (001111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/main.cpp
new file mode 100644
index 000000000..a11cb268c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 9-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 9;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector9 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/stimgen.h
new file mode 100644
index 000000000..3988984dd
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/extension/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector9& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector9& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/common.h
new file mode 100644
index 000000000..64a0e627c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/common.h
@@ -0,0 +1,45 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<6> > signal_bool_vector;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/datawidth.h
new file mode 100644
index 000000000..a8aaf9061
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector& in1;
+ const signal_bool_vector& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector& IN1,
+ const signal_bool_vector& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/golden/lost_carry.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/golden/lost_carry.log
new file mode 100644
index 000000000..32a6933bf
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/golden/lost_carry.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+16 + 0 = 16 (010000)
+16 + 1 = 17 (010001)
+16 + 2 = 18 (010010)
+16 + 3 = 19 (010011)
+16 + 4 = 20 (010100)
+16 + 5 = 21 (010101)
+16 + 6 = 22 (010110)
+16 + 7 = 23 (010111)
+16 + 8 = 24 (011000)
+16 + 9 = 25 (011001)
+16 + 10 = 26 (011010)
+16 + 11 = 27 (011011)
+16 + 12 = 28 (011100)
+16 + 13 = 29 (011101)
+16 + 14 = 30 (011110)
+16 + 15 = 31 (011111)
+16 + 16 = 32 (100000)
+16 + 17 = 33 (100001)
+16 + 18 = 34 (100010)
+16 + 19 = 35 (100011)
+16 + 20 = 36 (100100)
+16 + 21 = 37 (100101)
+16 + 22 = 38 (100110)
+16 + 23 = 39 (100111)
+16 + 24 = 40 (101000)
+16 + 25 = 41 (101001)
+16 + 26 = 42 (101010)
+16 + 27 = 43 (101011)
+16 + 28 = 44 (101100)
+16 + 29 = 45 (101101)
+16 + 30 = 46 (101110)
+16 + 31 = 47 (101111)
+16 + 32 = 48 (110000)
+16 + 33 = 49 (110001)
+16 + 34 = 50 (110010)
+16 + 35 = 51 (110011)
+16 + 36 = 52 (110100)
+16 + 37 = 53 (110101)
+16 + 38 = 54 (110110)
+16 + 39 = 55 (110111)
+16 + 40 = 56 (111000)
+16 + 41 = 57 (111001)
+16 + 42 = 58 (111010)
+16 + 43 = 59 (111011)
+16 + 44 = 60 (111100)
+16 + 45 = 61 (111101)
+16 + 46 = 62 (111110)
+16 + 47 = 63 (111111)
+16 + 48 = 0 (000000)
+16 + 49 = 1 (000001)
+16 + 50 = 2 (000010)
+16 + 51 = 3 (000011)
+16 + 52 = 4 (000100)
+16 + 53 = 5 (000101)
+16 + 54 = 6 (000110)
+16 + 55 = 7 (000111)
+16 + 56 = 8 (001000)
+16 + 57 = 9 (001001)
+16 + 58 = 10 (001010)
+16 + 59 = 11 (001011)
+16 + 60 = 12 (001100)
+16 + 61 = 13 (001101)
+16 + 62 = 14 (001110)
+16 + 63 = 15 (001111)
+17 + 0 = 17 (010001)
+17 + 1 = 18 (010010)
+17 + 2 = 19 (010011)
+17 + 3 = 20 (010100)
+17 + 4 = 21 (010101)
+17 + 5 = 22 (010110)
+17 + 6 = 23 (010111)
+17 + 7 = 24 (011000)
+17 + 8 = 25 (011001)
+17 + 9 = 26 (011010)
+17 + 10 = 27 (011011)
+17 + 11 = 28 (011100)
+17 + 12 = 29 (011101)
+17 + 13 = 30 (011110)
+17 + 14 = 31 (011111)
+17 + 15 = 32 (100000)
+17 + 16 = 33 (100001)
+17 + 17 = 34 (100010)
+17 + 18 = 35 (100011)
+17 + 19 = 36 (100100)
+17 + 20 = 37 (100101)
+17 + 21 = 38 (100110)
+17 + 22 = 39 (100111)
+17 + 23 = 40 (101000)
+17 + 24 = 41 (101001)
+17 + 25 = 42 (101010)
+17 + 26 = 43 (101011)
+17 + 27 = 44 (101100)
+17 + 28 = 45 (101101)
+17 + 29 = 46 (101110)
+17 + 30 = 47 (101111)
+17 + 31 = 48 (110000)
+17 + 32 = 49 (110001)
+17 + 33 = 50 (110010)
+17 + 34 = 51 (110011)
+17 + 35 = 52 (110100)
+17 + 36 = 53 (110101)
+17 + 37 = 54 (110110)
+17 + 38 = 55 (110111)
+17 + 39 = 56 (111000)
+17 + 40 = 57 (111001)
+17 + 41 = 58 (111010)
+17 + 42 = 59 (111011)
+17 + 43 = 60 (111100)
+17 + 44 = 61 (111101)
+17 + 45 = 62 (111110)
+17 + 46 = 63 (111111)
+17 + 47 = 0 (000000)
+17 + 48 = 1 (000001)
+17 + 49 = 2 (000010)
+17 + 50 = 3 (000011)
+17 + 51 = 4 (000100)
+17 + 52 = 5 (000101)
+17 + 53 = 6 (000110)
+17 + 54 = 7 (000111)
+17 + 55 = 8 (001000)
+17 + 56 = 9 (001001)
+17 + 57 = 10 (001010)
+17 + 58 = 11 (001011)
+17 + 59 = 12 (001100)
+17 + 60 = 13 (001101)
+17 + 61 = 14 (001110)
+17 + 62 = 15 (001111)
+17 + 63 = 16 (010000)
+18 + 0 = 18 (010010)
+18 + 1 = 19 (010011)
+18 + 2 = 20 (010100)
+18 + 3 = 21 (010101)
+18 + 4 = 22 (010110)
+18 + 5 = 23 (010111)
+18 + 6 = 24 (011000)
+18 + 7 = 25 (011001)
+18 + 8 = 26 (011010)
+18 + 9 = 27 (011011)
+18 + 10 = 28 (011100)
+18 + 11 = 29 (011101)
+18 + 12 = 30 (011110)
+18 + 13 = 31 (011111)
+18 + 14 = 32 (100000)
+18 + 15 = 33 (100001)
+18 + 16 = 34 (100010)
+18 + 17 = 35 (100011)
+18 + 18 = 36 (100100)
+18 + 19 = 37 (100101)
+18 + 20 = 38 (100110)
+18 + 21 = 39 (100111)
+18 + 22 = 40 (101000)
+18 + 23 = 41 (101001)
+18 + 24 = 42 (101010)
+18 + 25 = 43 (101011)
+18 + 26 = 44 (101100)
+18 + 27 = 45 (101101)
+18 + 28 = 46 (101110)
+18 + 29 = 47 (101111)
+18 + 30 = 48 (110000)
+18 + 31 = 49 (110001)
+18 + 32 = 50 (110010)
+18 + 33 = 51 (110011)
+18 + 34 = 52 (110100)
+18 + 35 = 53 (110101)
+18 + 36 = 54 (110110)
+18 + 37 = 55 (110111)
+18 + 38 = 56 (111000)
+18 + 39 = 57 (111001)
+18 + 40 = 58 (111010)
+18 + 41 = 59 (111011)
+18 + 42 = 60 (111100)
+18 + 43 = 61 (111101)
+18 + 44 = 62 (111110)
+18 + 45 = 63 (111111)
+18 + 46 = 0 (000000)
+18 + 47 = 1 (000001)
+18 + 48 = 2 (000010)
+18 + 49 = 3 (000011)
+18 + 50 = 4 (000100)
+18 + 51 = 5 (000101)
+18 + 52 = 6 (000110)
+18 + 53 = 7 (000111)
+18 + 54 = 8 (001000)
+18 + 55 = 9 (001001)
+18 + 56 = 10 (001010)
+18 + 57 = 11 (001011)
+18 + 58 = 12 (001100)
+18 + 59 = 13 (001101)
+18 + 60 = 14 (001110)
+18 + 61 = 15 (001111)
+18 + 62 = 16 (010000)
+18 + 63 = 17 (010001)
+19 + 0 = 19 (010011)
+19 + 1 = 20 (010100)
+19 + 2 = 21 (010101)
+19 + 3 = 22 (010110)
+19 + 4 = 23 (010111)
+19 + 5 = 24 (011000)
+19 + 6 = 25 (011001)
+19 + 7 = 26 (011010)
+19 + 8 = 27 (011011)
+19 + 9 = 28 (011100)
+19 + 10 = 29 (011101)
+19 + 11 = 30 (011110)
+19 + 12 = 31 (011111)
+19 + 13 = 32 (100000)
+19 + 14 = 33 (100001)
+19 + 15 = 34 (100010)
+19 + 16 = 35 (100011)
+19 + 17 = 36 (100100)
+19 + 18 = 37 (100101)
+19 + 19 = 38 (100110)
+19 + 20 = 39 (100111)
+19 + 21 = 40 (101000)
+19 + 22 = 41 (101001)
+19 + 23 = 42 (101010)
+19 + 24 = 43 (101011)
+19 + 25 = 44 (101100)
+19 + 26 = 45 (101101)
+19 + 27 = 46 (101110)
+19 + 28 = 47 (101111)
+19 + 29 = 48 (110000)
+19 + 30 = 49 (110001)
+19 + 31 = 50 (110010)
+19 + 32 = 51 (110011)
+19 + 33 = 52 (110100)
+19 + 34 = 53 (110101)
+19 + 35 = 54 (110110)
+19 + 36 = 55 (110111)
+19 + 37 = 56 (111000)
+19 + 38 = 57 (111001)
+19 + 39 = 58 (111010)
+19 + 40 = 59 (111011)
+19 + 41 = 60 (111100)
+19 + 42 = 61 (111101)
+19 + 43 = 62 (111110)
+19 + 44 = 63 (111111)
+19 + 45 = 0 (000000)
+19 + 46 = 1 (000001)
+19 + 47 = 2 (000010)
+19 + 48 = 3 (000011)
+19 + 49 = 4 (000100)
+19 + 50 = 5 (000101)
+19 + 51 = 6 (000110)
+19 + 52 = 7 (000111)
+19 + 53 = 8 (001000)
+19 + 54 = 9 (001001)
+19 + 55 = 10 (001010)
+19 + 56 = 11 (001011)
+19 + 57 = 12 (001100)
+19 + 58 = 13 (001101)
+19 + 59 = 14 (001110)
+19 + 60 = 15 (001111)
+19 + 61 = 16 (010000)
+19 + 62 = 17 (010001)
+19 + 63 = 18 (010010)
+20 + 0 = 20 (010100)
+20 + 1 = 21 (010101)
+20 + 2 = 22 (010110)
+20 + 3 = 23 (010111)
+20 + 4 = 24 (011000)
+20 + 5 = 25 (011001)
+20 + 6 = 26 (011010)
+20 + 7 = 27 (011011)
+20 + 8 = 28 (011100)
+20 + 9 = 29 (011101)
+20 + 10 = 30 (011110)
+20 + 11 = 31 (011111)
+20 + 12 = 32 (100000)
+20 + 13 = 33 (100001)
+20 + 14 = 34 (100010)
+20 + 15 = 35 (100011)
+20 + 16 = 36 (100100)
+20 + 17 = 37 (100101)
+20 + 18 = 38 (100110)
+20 + 19 = 39 (100111)
+20 + 20 = 40 (101000)
+20 + 21 = 41 (101001)
+20 + 22 = 42 (101010)
+20 + 23 = 43 (101011)
+20 + 24 = 44 (101100)
+20 + 25 = 45 (101101)
+20 + 26 = 46 (101110)
+20 + 27 = 47 (101111)
+20 + 28 = 48 (110000)
+20 + 29 = 49 (110001)
+20 + 30 = 50 (110010)
+20 + 31 = 51 (110011)
+20 + 32 = 52 (110100)
+20 + 33 = 53 (110101)
+20 + 34 = 54 (110110)
+20 + 35 = 55 (110111)
+20 + 36 = 56 (111000)
+20 + 37 = 57 (111001)
+20 + 38 = 58 (111010)
+20 + 39 = 59 (111011)
+20 + 40 = 60 (111100)
+20 + 41 = 61 (111101)
+20 + 42 = 62 (111110)
+20 + 43 = 63 (111111)
+20 + 44 = 0 (000000)
+20 + 45 = 1 (000001)
+20 + 46 = 2 (000010)
+20 + 47 = 3 (000011)
+20 + 48 = 4 (000100)
+20 + 49 = 5 (000101)
+20 + 50 = 6 (000110)
+20 + 51 = 7 (000111)
+20 + 52 = 8 (001000)
+20 + 53 = 9 (001001)
+20 + 54 = 10 (001010)
+20 + 55 = 11 (001011)
+20 + 56 = 12 (001100)
+20 + 57 = 13 (001101)
+20 + 58 = 14 (001110)
+20 + 59 = 15 (001111)
+20 + 60 = 16 (010000)
+20 + 61 = 17 (010001)
+20 + 62 = 18 (010010)
+20 + 63 = 19 (010011)
+21 + 0 = 21 (010101)
+21 + 1 = 22 (010110)
+21 + 2 = 23 (010111)
+21 + 3 = 24 (011000)
+21 + 4 = 25 (011001)
+21 + 5 = 26 (011010)
+21 + 6 = 27 (011011)
+21 + 7 = 28 (011100)
+21 + 8 = 29 (011101)
+21 + 9 = 30 (011110)
+21 + 10 = 31 (011111)
+21 + 11 = 32 (100000)
+21 + 12 = 33 (100001)
+21 + 13 = 34 (100010)
+21 + 14 = 35 (100011)
+21 + 15 = 36 (100100)
+21 + 16 = 37 (100101)
+21 + 17 = 38 (100110)
+21 + 18 = 39 (100111)
+21 + 19 = 40 (101000)
+21 + 20 = 41 (101001)
+21 + 21 = 42 (101010)
+21 + 22 = 43 (101011)
+21 + 23 = 44 (101100)
+21 + 24 = 45 (101101)
+21 + 25 = 46 (101110)
+21 + 26 = 47 (101111)
+21 + 27 = 48 (110000)
+21 + 28 = 49 (110001)
+21 + 29 = 50 (110010)
+21 + 30 = 51 (110011)
+21 + 31 = 52 (110100)
+21 + 32 = 53 (110101)
+21 + 33 = 54 (110110)
+21 + 34 = 55 (110111)
+21 + 35 = 56 (111000)
+21 + 36 = 57 (111001)
+21 + 37 = 58 (111010)
+21 + 38 = 59 (111011)
+21 + 39 = 60 (111100)
+21 + 40 = 61 (111101)
+21 + 41 = 62 (111110)
+21 + 42 = 63 (111111)
+21 + 43 = 0 (000000)
+21 + 44 = 1 (000001)
+21 + 45 = 2 (000010)
+21 + 46 = 3 (000011)
+21 + 47 = 4 (000100)
+21 + 48 = 5 (000101)
+21 + 49 = 6 (000110)
+21 + 50 = 7 (000111)
+21 + 51 = 8 (001000)
+21 + 52 = 9 (001001)
+21 + 53 = 10 (001010)
+21 + 54 = 11 (001011)
+21 + 55 = 12 (001100)
+21 + 56 = 13 (001101)
+21 + 57 = 14 (001110)
+21 + 58 = 15 (001111)
+21 + 59 = 16 (010000)
+21 + 60 = 17 (010001)
+21 + 61 = 18 (010010)
+21 + 62 = 19 (010011)
+21 + 63 = 20 (010100)
+22 + 0 = 22 (010110)
+22 + 1 = 23 (010111)
+22 + 2 = 24 (011000)
+22 + 3 = 25 (011001)
+22 + 4 = 26 (011010)
+22 + 5 = 27 (011011)
+22 + 6 = 28 (011100)
+22 + 7 = 29 (011101)
+22 + 8 = 30 (011110)
+22 + 9 = 31 (011111)
+22 + 10 = 32 (100000)
+22 + 11 = 33 (100001)
+22 + 12 = 34 (100010)
+22 + 13 = 35 (100011)
+22 + 14 = 36 (100100)
+22 + 15 = 37 (100101)
+22 + 16 = 38 (100110)
+22 + 17 = 39 (100111)
+22 + 18 = 40 (101000)
+22 + 19 = 41 (101001)
+22 + 20 = 42 (101010)
+22 + 21 = 43 (101011)
+22 + 22 = 44 (101100)
+22 + 23 = 45 (101101)
+22 + 24 = 46 (101110)
+22 + 25 = 47 (101111)
+22 + 26 = 48 (110000)
+22 + 27 = 49 (110001)
+22 + 28 = 50 (110010)
+22 + 29 = 51 (110011)
+22 + 30 = 52 (110100)
+22 + 31 = 53 (110101)
+22 + 32 = 54 (110110)
+22 + 33 = 55 (110111)
+22 + 34 = 56 (111000)
+22 + 35 = 57 (111001)
+22 + 36 = 58 (111010)
+22 + 37 = 59 (111011)
+22 + 38 = 60 (111100)
+22 + 39 = 61 (111101)
+22 + 40 = 62 (111110)
+22 + 41 = 63 (111111)
+22 + 42 = 0 (000000)
+22 + 43 = 1 (000001)
+22 + 44 = 2 (000010)
+22 + 45 = 3 (000011)
+22 + 46 = 4 (000100)
+22 + 47 = 5 (000101)
+22 + 48 = 6 (000110)
+22 + 49 = 7 (000111)
+22 + 50 = 8 (001000)
+22 + 51 = 9 (001001)
+22 + 52 = 10 (001010)
+22 + 53 = 11 (001011)
+22 + 54 = 12 (001100)
+22 + 55 = 13 (001101)
+22 + 56 = 14 (001110)
+22 + 57 = 15 (001111)
+22 + 58 = 16 (010000)
+22 + 59 = 17 (010001)
+22 + 60 = 18 (010010)
+22 + 61 = 19 (010011)
+22 + 62 = 20 (010100)
+22 + 63 = 21 (010101)
+23 + 0 = 23 (010111)
+23 + 1 = 24 (011000)
+23 + 2 = 25 (011001)
+23 + 3 = 26 (011010)
+23 + 4 = 27 (011011)
+23 + 5 = 28 (011100)
+23 + 6 = 29 (011101)
+23 + 7 = 30 (011110)
+23 + 8 = 31 (011111)
+23 + 9 = 32 (100000)
+23 + 10 = 33 (100001)
+23 + 11 = 34 (100010)
+23 + 12 = 35 (100011)
+23 + 13 = 36 (100100)
+23 + 14 = 37 (100101)
+23 + 15 = 38 (100110)
+23 + 16 = 39 (100111)
+23 + 17 = 40 (101000)
+23 + 18 = 41 (101001)
+23 + 19 = 42 (101010)
+23 + 20 = 43 (101011)
+23 + 21 = 44 (101100)
+23 + 22 = 45 (101101)
+23 + 23 = 46 (101110)
+23 + 24 = 47 (101111)
+23 + 25 = 48 (110000)
+23 + 26 = 49 (110001)
+23 + 27 = 50 (110010)
+23 + 28 = 51 (110011)
+23 + 29 = 52 (110100)
+23 + 30 = 53 (110101)
+23 + 31 = 54 (110110)
+23 + 32 = 55 (110111)
+23 + 33 = 56 (111000)
+23 + 34 = 57 (111001)
+23 + 35 = 58 (111010)
+23 + 36 = 59 (111011)
+23 + 37 = 60 (111100)
+23 + 38 = 61 (111101)
+23 + 39 = 62 (111110)
+23 + 40 = 63 (111111)
+23 + 41 = 0 (000000)
+23 + 42 = 1 (000001)
+23 + 43 = 2 (000010)
+23 + 44 = 3 (000011)
+23 + 45 = 4 (000100)
+23 + 46 = 5 (000101)
+23 + 47 = 6 (000110)
+23 + 48 = 7 (000111)
+23 + 49 = 8 (001000)
+23 + 50 = 9 (001001)
+23 + 51 = 10 (001010)
+23 + 52 = 11 (001011)
+23 + 53 = 12 (001100)
+23 + 54 = 13 (001101)
+23 + 55 = 14 (001110)
+23 + 56 = 15 (001111)
+23 + 57 = 16 (010000)
+23 + 58 = 17 (010001)
+23 + 59 = 18 (010010)
+23 + 60 = 19 (010011)
+23 + 61 = 20 (010100)
+23 + 62 = 21 (010101)
+23 + 63 = 22 (010110)
+24 + 0 = 24 (011000)
+24 + 1 = 25 (011001)
+24 + 2 = 26 (011010)
+24 + 3 = 27 (011011)
+24 + 4 = 28 (011100)
+24 + 5 = 29 (011101)
+24 + 6 = 30 (011110)
+24 + 7 = 31 (011111)
+24 + 8 = 32 (100000)
+24 + 9 = 33 (100001)
+24 + 10 = 34 (100010)
+24 + 11 = 35 (100011)
+24 + 12 = 36 (100100)
+24 + 13 = 37 (100101)
+24 + 14 = 38 (100110)
+24 + 15 = 39 (100111)
+24 + 16 = 40 (101000)
+24 + 17 = 41 (101001)
+24 + 18 = 42 (101010)
+24 + 19 = 43 (101011)
+24 + 20 = 44 (101100)
+24 + 21 = 45 (101101)
+24 + 22 = 46 (101110)
+24 + 23 = 47 (101111)
+24 + 24 = 48 (110000)
+24 + 25 = 49 (110001)
+24 + 26 = 50 (110010)
+24 + 27 = 51 (110011)
+24 + 28 = 52 (110100)
+24 + 29 = 53 (110101)
+24 + 30 = 54 (110110)
+24 + 31 = 55 (110111)
+24 + 32 = 56 (111000)
+24 + 33 = 57 (111001)
+24 + 34 = 58 (111010)
+24 + 35 = 59 (111011)
+24 + 36 = 60 (111100)
+24 + 37 = 61 (111101)
+24 + 38 = 62 (111110)
+24 + 39 = 63 (111111)
+24 + 40 = 0 (000000)
+24 + 41 = 1 (000001)
+24 + 42 = 2 (000010)
+24 + 43 = 3 (000011)
+24 + 44 = 4 (000100)
+24 + 45 = 5 (000101)
+24 + 46 = 6 (000110)
+24 + 47 = 7 (000111)
+24 + 48 = 8 (001000)
+24 + 49 = 9 (001001)
+24 + 50 = 10 (001010)
+24 + 51 = 11 (001011)
+24 + 52 = 12 (001100)
+24 + 53 = 13 (001101)
+24 + 54 = 14 (001110)
+24 + 55 = 15 (001111)
+24 + 56 = 16 (010000)
+24 + 57 = 17 (010001)
+24 + 58 = 18 (010010)
+24 + 59 = 19 (010011)
+24 + 60 = 20 (010100)
+24 + 61 = 21 (010101)
+24 + 62 = 22 (010110)
+24 + 63 = 23 (010111)
+25 + 0 = 25 (011001)
+25 + 1 = 26 (011010)
+25 + 2 = 27 (011011)
+25 + 3 = 28 (011100)
+25 + 4 = 29 (011101)
+25 + 5 = 30 (011110)
+25 + 6 = 31 (011111)
+25 + 7 = 32 (100000)
+25 + 8 = 33 (100001)
+25 + 9 = 34 (100010)
+25 + 10 = 35 (100011)
+25 + 11 = 36 (100100)
+25 + 12 = 37 (100101)
+25 + 13 = 38 (100110)
+25 + 14 = 39 (100111)
+25 + 15 = 40 (101000)
+25 + 16 = 41 (101001)
+25 + 17 = 42 (101010)
+25 + 18 = 43 (101011)
+25 + 19 = 44 (101100)
+25 + 20 = 45 (101101)
+25 + 21 = 46 (101110)
+25 + 22 = 47 (101111)
+25 + 23 = 48 (110000)
+25 + 24 = 49 (110001)
+25 + 25 = 50 (110010)
+25 + 26 = 51 (110011)
+25 + 27 = 52 (110100)
+25 + 28 = 53 (110101)
+25 + 29 = 54 (110110)
+25 + 30 = 55 (110111)
+25 + 31 = 56 (111000)
+25 + 32 = 57 (111001)
+25 + 33 = 58 (111010)
+25 + 34 = 59 (111011)
+25 + 35 = 60 (111100)
+25 + 36 = 61 (111101)
+25 + 37 = 62 (111110)
+25 + 38 = 63 (111111)
+25 + 39 = 0 (000000)
+25 + 40 = 1 (000001)
+25 + 41 = 2 (000010)
+25 + 42 = 3 (000011)
+25 + 43 = 4 (000100)
+25 + 44 = 5 (000101)
+25 + 45 = 6 (000110)
+25 + 46 = 7 (000111)
+25 + 47 = 8 (001000)
+25 + 48 = 9 (001001)
+25 + 49 = 10 (001010)
+25 + 50 = 11 (001011)
+25 + 51 = 12 (001100)
+25 + 52 = 13 (001101)
+25 + 53 = 14 (001110)
+25 + 54 = 15 (001111)
+25 + 55 = 16 (010000)
+25 + 56 = 17 (010001)
+25 + 57 = 18 (010010)
+25 + 58 = 19 (010011)
+25 + 59 = 20 (010100)
+25 + 60 = 21 (010101)
+25 + 61 = 22 (010110)
+25 + 62 = 23 (010111)
+25 + 63 = 24 (011000)
+26 + 0 = 26 (011010)
+26 + 1 = 27 (011011)
+26 + 2 = 28 (011100)
+26 + 3 = 29 (011101)
+26 + 4 = 30 (011110)
+26 + 5 = 31 (011111)
+26 + 6 = 32 (100000)
+26 + 7 = 33 (100001)
+26 + 8 = 34 (100010)
+26 + 9 = 35 (100011)
+26 + 10 = 36 (100100)
+26 + 11 = 37 (100101)
+26 + 12 = 38 (100110)
+26 + 13 = 39 (100111)
+26 + 14 = 40 (101000)
+26 + 15 = 41 (101001)
+26 + 16 = 42 (101010)
+26 + 17 = 43 (101011)
+26 + 18 = 44 (101100)
+26 + 19 = 45 (101101)
+26 + 20 = 46 (101110)
+26 + 21 = 47 (101111)
+26 + 22 = 48 (110000)
+26 + 23 = 49 (110001)
+26 + 24 = 50 (110010)
+26 + 25 = 51 (110011)
+26 + 26 = 52 (110100)
+26 + 27 = 53 (110101)
+26 + 28 = 54 (110110)
+26 + 29 = 55 (110111)
+26 + 30 = 56 (111000)
+26 + 31 = 57 (111001)
+26 + 32 = 58 (111010)
+26 + 33 = 59 (111011)
+26 + 34 = 60 (111100)
+26 + 35 = 61 (111101)
+26 + 36 = 62 (111110)
+26 + 37 = 63 (111111)
+26 + 38 = 0 (000000)
+26 + 39 = 1 (000001)
+26 + 40 = 2 (000010)
+26 + 41 = 3 (000011)
+26 + 42 = 4 (000100)
+26 + 43 = 5 (000101)
+26 + 44 = 6 (000110)
+26 + 45 = 7 (000111)
+26 + 46 = 8 (001000)
+26 + 47 = 9 (001001)
+26 + 48 = 10 (001010)
+26 + 49 = 11 (001011)
+26 + 50 = 12 (001100)
+26 + 51 = 13 (001101)
+26 + 52 = 14 (001110)
+26 + 53 = 15 (001111)
+26 + 54 = 16 (010000)
+26 + 55 = 17 (010001)
+26 + 56 = 18 (010010)
+26 + 57 = 19 (010011)
+26 + 58 = 20 (010100)
+26 + 59 = 21 (010101)
+26 + 60 = 22 (010110)
+26 + 61 = 23 (010111)
+26 + 62 = 24 (011000)
+26 + 63 = 25 (011001)
+27 + 0 = 27 (011011)
+27 + 1 = 28 (011100)
+27 + 2 = 29 (011101)
+27 + 3 = 30 (011110)
+27 + 4 = 31 (011111)
+27 + 5 = 32 (100000)
+27 + 6 = 33 (100001)
+27 + 7 = 34 (100010)
+27 + 8 = 35 (100011)
+27 + 9 = 36 (100100)
+27 + 10 = 37 (100101)
+27 + 11 = 38 (100110)
+27 + 12 = 39 (100111)
+27 + 13 = 40 (101000)
+27 + 14 = 41 (101001)
+27 + 15 = 42 (101010)
+27 + 16 = 43 (101011)
+27 + 17 = 44 (101100)
+27 + 18 = 45 (101101)
+27 + 19 = 46 (101110)
+27 + 20 = 47 (101111)
+27 + 21 = 48 (110000)
+27 + 22 = 49 (110001)
+27 + 23 = 50 (110010)
+27 + 24 = 51 (110011)
+27 + 25 = 52 (110100)
+27 + 26 = 53 (110101)
+27 + 27 = 54 (110110)
+27 + 28 = 55 (110111)
+27 + 29 = 56 (111000)
+27 + 30 = 57 (111001)
+27 + 31 = 58 (111010)
+27 + 32 = 59 (111011)
+27 + 33 = 60 (111100)
+27 + 34 = 61 (111101)
+27 + 35 = 62 (111110)
+27 + 36 = 63 (111111)
+27 + 37 = 0 (000000)
+27 + 38 = 1 (000001)
+27 + 39 = 2 (000010)
+27 + 40 = 3 (000011)
+27 + 41 = 4 (000100)
+27 + 42 = 5 (000101)
+27 + 43 = 6 (000110)
+27 + 44 = 7 (000111)
+27 + 45 = 8 (001000)
+27 + 46 = 9 (001001)
+27 + 47 = 10 (001010)
+27 + 48 = 11 (001011)
+27 + 49 = 12 (001100)
+27 + 50 = 13 (001101)
+27 + 51 = 14 (001110)
+27 + 52 = 15 (001111)
+27 + 53 = 16 (010000)
+27 + 54 = 17 (010001)
+27 + 55 = 18 (010010)
+27 + 56 = 19 (010011)
+27 + 57 = 20 (010100)
+27 + 58 = 21 (010101)
+27 + 59 = 22 (010110)
+27 + 60 = 23 (010111)
+27 + 61 = 24 (011000)
+27 + 62 = 25 (011001)
+27 + 63 = 26 (011010)
+28 + 0 = 28 (011100)
+28 + 1 = 29 (011101)
+28 + 2 = 30 (011110)
+28 + 3 = 31 (011111)
+28 + 4 = 32 (100000)
+28 + 5 = 33 (100001)
+28 + 6 = 34 (100010)
+28 + 7 = 35 (100011)
+28 + 8 = 36 (100100)
+28 + 9 = 37 (100101)
+28 + 10 = 38 (100110)
+28 + 11 = 39 (100111)
+28 + 12 = 40 (101000)
+28 + 13 = 41 (101001)
+28 + 14 = 42 (101010)
+28 + 15 = 43 (101011)
+28 + 16 = 44 (101100)
+28 + 17 = 45 (101101)
+28 + 18 = 46 (101110)
+28 + 19 = 47 (101111)
+28 + 20 = 48 (110000)
+28 + 21 = 49 (110001)
+28 + 22 = 50 (110010)
+28 + 23 = 51 (110011)
+28 + 24 = 52 (110100)
+28 + 25 = 53 (110101)
+28 + 26 = 54 (110110)
+28 + 27 = 55 (110111)
+28 + 28 = 56 (111000)
+28 + 29 = 57 (111001)
+28 + 30 = 58 (111010)
+28 + 31 = 59 (111011)
+28 + 32 = 60 (111100)
+28 + 33 = 61 (111101)
+28 + 34 = 62 (111110)
+28 + 35 = 63 (111111)
+28 + 36 = 0 (000000)
+28 + 37 = 1 (000001)
+28 + 38 = 2 (000010)
+28 + 39 = 3 (000011)
+28 + 40 = 4 (000100)
+28 + 41 = 5 (000101)
+28 + 42 = 6 (000110)
+28 + 43 = 7 (000111)
+28 + 44 = 8 (001000)
+28 + 45 = 9 (001001)
+28 + 46 = 10 (001010)
+28 + 47 = 11 (001011)
+28 + 48 = 12 (001100)
+28 + 49 = 13 (001101)
+28 + 50 = 14 (001110)
+28 + 51 = 15 (001111)
+28 + 52 = 16 (010000)
+28 + 53 = 17 (010001)
+28 + 54 = 18 (010010)
+28 + 55 = 19 (010011)
+28 + 56 = 20 (010100)
+28 + 57 = 21 (010101)
+28 + 58 = 22 (010110)
+28 + 59 = 23 (010111)
+28 + 60 = 24 (011000)
+28 + 61 = 25 (011001)
+28 + 62 = 26 (011010)
+28 + 63 = 27 (011011)
+29 + 0 = 29 (011101)
+29 + 1 = 30 (011110)
+29 + 2 = 31 (011111)
+29 + 3 = 32 (100000)
+29 + 4 = 33 (100001)
+29 + 5 = 34 (100010)
+29 + 6 = 35 (100011)
+29 + 7 = 36 (100100)
+29 + 8 = 37 (100101)
+29 + 9 = 38 (100110)
+29 + 10 = 39 (100111)
+29 + 11 = 40 (101000)
+29 + 12 = 41 (101001)
+29 + 13 = 42 (101010)
+29 + 14 = 43 (101011)
+29 + 15 = 44 (101100)
+29 + 16 = 45 (101101)
+29 + 17 = 46 (101110)
+29 + 18 = 47 (101111)
+29 + 19 = 48 (110000)
+29 + 20 = 49 (110001)
+29 + 21 = 50 (110010)
+29 + 22 = 51 (110011)
+29 + 23 = 52 (110100)
+29 + 24 = 53 (110101)
+29 + 25 = 54 (110110)
+29 + 26 = 55 (110111)
+29 + 27 = 56 (111000)
+29 + 28 = 57 (111001)
+29 + 29 = 58 (111010)
+29 + 30 = 59 (111011)
+29 + 31 = 60 (111100)
+29 + 32 = 61 (111101)
+29 + 33 = 62 (111110)
+29 + 34 = 63 (111111)
+29 + 35 = 0 (000000)
+29 + 36 = 1 (000001)
+29 + 37 = 2 (000010)
+29 + 38 = 3 (000011)
+29 + 39 = 4 (000100)
+29 + 40 = 5 (000101)
+29 + 41 = 6 (000110)
+29 + 42 = 7 (000111)
+29 + 43 = 8 (001000)
+29 + 44 = 9 (001001)
+29 + 45 = 10 (001010)
+29 + 46 = 11 (001011)
+29 + 47 = 12 (001100)
+29 + 48 = 13 (001101)
+29 + 49 = 14 (001110)
+29 + 50 = 15 (001111)
+29 + 51 = 16 (010000)
+29 + 52 = 17 (010001)
+29 + 53 = 18 (010010)
+29 + 54 = 19 (010011)
+29 + 55 = 20 (010100)
+29 + 56 = 21 (010101)
+29 + 57 = 22 (010110)
+29 + 58 = 23 (010111)
+29 + 59 = 24 (011000)
+29 + 60 = 25 (011001)
+29 + 61 = 26 (011010)
+29 + 62 = 27 (011011)
+29 + 63 = 28 (011100)
+30 + 0 = 30 (011110)
+30 + 1 = 31 (011111)
+30 + 2 = 32 (100000)
+30 + 3 = 33 (100001)
+30 + 4 = 34 (100010)
+30 + 5 = 35 (100011)
+30 + 6 = 36 (100100)
+30 + 7 = 37 (100101)
+30 + 8 = 38 (100110)
+30 + 9 = 39 (100111)
+30 + 10 = 40 (101000)
+30 + 11 = 41 (101001)
+30 + 12 = 42 (101010)
+30 + 13 = 43 (101011)
+30 + 14 = 44 (101100)
+30 + 15 = 45 (101101)
+30 + 16 = 46 (101110)
+30 + 17 = 47 (101111)
+30 + 18 = 48 (110000)
+30 + 19 = 49 (110001)
+30 + 20 = 50 (110010)
+30 + 21 = 51 (110011)
+30 + 22 = 52 (110100)
+30 + 23 = 53 (110101)
+30 + 24 = 54 (110110)
+30 + 25 = 55 (110111)
+30 + 26 = 56 (111000)
+30 + 27 = 57 (111001)
+30 + 28 = 58 (111010)
+30 + 29 = 59 (111011)
+30 + 30 = 60 (111100)
+30 + 31 = 61 (111101)
+30 + 32 = 62 (111110)
+30 + 33 = 63 (111111)
+30 + 34 = 0 (000000)
+30 + 35 = 1 (000001)
+30 + 36 = 2 (000010)
+30 + 37 = 3 (000011)
+30 + 38 = 4 (000100)
+30 + 39 = 5 (000101)
+30 + 40 = 6 (000110)
+30 + 41 = 7 (000111)
+30 + 42 = 8 (001000)
+30 + 43 = 9 (001001)
+30 + 44 = 10 (001010)
+30 + 45 = 11 (001011)
+30 + 46 = 12 (001100)
+30 + 47 = 13 (001101)
+30 + 48 = 14 (001110)
+30 + 49 = 15 (001111)
+30 + 50 = 16 (010000)
+30 + 51 = 17 (010001)
+30 + 52 = 18 (010010)
+30 + 53 = 19 (010011)
+30 + 54 = 20 (010100)
+30 + 55 = 21 (010101)
+30 + 56 = 22 (010110)
+30 + 57 = 23 (010111)
+30 + 58 = 24 (011000)
+30 + 59 = 25 (011001)
+30 + 60 = 26 (011010)
+30 + 61 = 27 (011011)
+30 + 62 = 28 (011100)
+30 + 63 = 29 (011101)
+31 + 0 = 31 (011111)
+31 + 1 = 32 (100000)
+31 + 2 = 33 (100001)
+31 + 3 = 34 (100010)
+31 + 4 = 35 (100011)
+31 + 5 = 36 (100100)
+31 + 6 = 37 (100101)
+31 + 7 = 38 (100110)
+31 + 8 = 39 (100111)
+31 + 9 = 40 (101000)
+31 + 10 = 41 (101001)
+31 + 11 = 42 (101010)
+31 + 12 = 43 (101011)
+31 + 13 = 44 (101100)
+31 + 14 = 45 (101101)
+31 + 15 = 46 (101110)
+31 + 16 = 47 (101111)
+31 + 17 = 48 (110000)
+31 + 18 = 49 (110001)
+31 + 19 = 50 (110010)
+31 + 20 = 51 (110011)
+31 + 21 = 52 (110100)
+31 + 22 = 53 (110101)
+31 + 23 = 54 (110110)
+31 + 24 = 55 (110111)
+31 + 25 = 56 (111000)
+31 + 26 = 57 (111001)
+31 + 27 = 58 (111010)
+31 + 28 = 59 (111011)
+31 + 29 = 60 (111100)
+31 + 30 = 61 (111101)
+31 + 31 = 62 (111110)
+31 + 32 = 63 (111111)
+31 + 33 = 0 (000000)
+31 + 34 = 1 (000001)
+31 + 35 = 2 (000010)
+31 + 36 = 3 (000011)
+31 + 37 = 4 (000100)
+31 + 38 = 5 (000101)
+31 + 39 = 6 (000110)
+31 + 40 = 7 (000111)
+31 + 41 = 8 (001000)
+31 + 42 = 9 (001001)
+31 + 43 = 10 (001010)
+31 + 44 = 11 (001011)
+31 + 45 = 12 (001100)
+31 + 46 = 13 (001101)
+31 + 47 = 14 (001110)
+31 + 48 = 15 (001111)
+31 + 49 = 16 (010000)
+31 + 50 = 17 (010001)
+31 + 51 = 18 (010010)
+31 + 52 = 19 (010011)
+31 + 53 = 20 (010100)
+31 + 54 = 21 (010101)
+31 + 55 = 22 (010110)
+31 + 56 = 23 (010111)
+31 + 57 = 24 (011000)
+31 + 58 = 25 (011001)
+31 + 59 = 26 (011010)
+31 + 60 = 27 (011011)
+31 + 61 = 28 (011100)
+31 + 62 = 29 (011101)
+31 + 63 = 30 (011110)
+32 + 0 = 32 (100000)
+32 + 1 = 33 (100001)
+32 + 2 = 34 (100010)
+32 + 3 = 35 (100011)
+32 + 4 = 36 (100100)
+32 + 5 = 37 (100101)
+32 + 6 = 38 (100110)
+32 + 7 = 39 (100111)
+32 + 8 = 40 (101000)
+32 + 9 = 41 (101001)
+32 + 10 = 42 (101010)
+32 + 11 = 43 (101011)
+32 + 12 = 44 (101100)
+32 + 13 = 45 (101101)
+32 + 14 = 46 (101110)
+32 + 15 = 47 (101111)
+32 + 16 = 48 (110000)
+32 + 17 = 49 (110001)
+32 + 18 = 50 (110010)
+32 + 19 = 51 (110011)
+32 + 20 = 52 (110100)
+32 + 21 = 53 (110101)
+32 + 22 = 54 (110110)
+32 + 23 = 55 (110111)
+32 + 24 = 56 (111000)
+32 + 25 = 57 (111001)
+32 + 26 = 58 (111010)
+32 + 27 = 59 (111011)
+32 + 28 = 60 (111100)
+32 + 29 = 61 (111101)
+32 + 30 = 62 (111110)
+32 + 31 = 63 (111111)
+32 + 32 = 0 (000000)
+32 + 33 = 1 (000001)
+32 + 34 = 2 (000010)
+32 + 35 = 3 (000011)
+32 + 36 = 4 (000100)
+32 + 37 = 5 (000101)
+32 + 38 = 6 (000110)
+32 + 39 = 7 (000111)
+32 + 40 = 8 (001000)
+32 + 41 = 9 (001001)
+32 + 42 = 10 (001010)
+32 + 43 = 11 (001011)
+32 + 44 = 12 (001100)
+32 + 45 = 13 (001101)
+32 + 46 = 14 (001110)
+32 + 47 = 15 (001111)
+32 + 48 = 16 (010000)
+32 + 49 = 17 (010001)
+32 + 50 = 18 (010010)
+32 + 51 = 19 (010011)
+32 + 52 = 20 (010100)
+32 + 53 = 21 (010101)
+32 + 54 = 22 (010110)
+32 + 55 = 23 (010111)
+32 + 56 = 24 (011000)
+32 + 57 = 25 (011001)
+32 + 58 = 26 (011010)
+32 + 59 = 27 (011011)
+32 + 60 = 28 (011100)
+32 + 61 = 29 (011101)
+32 + 62 = 30 (011110)
+32 + 63 = 31 (011111)
+33 + 0 = 33 (100001)
+33 + 1 = 34 (100010)
+33 + 2 = 35 (100011)
+33 + 3 = 36 (100100)
+33 + 4 = 37 (100101)
+33 + 5 = 38 (100110)
+33 + 6 = 39 (100111)
+33 + 7 = 40 (101000)
+33 + 8 = 41 (101001)
+33 + 9 = 42 (101010)
+33 + 10 = 43 (101011)
+33 + 11 = 44 (101100)
+33 + 12 = 45 (101101)
+33 + 13 = 46 (101110)
+33 + 14 = 47 (101111)
+33 + 15 = 48 (110000)
+33 + 16 = 49 (110001)
+33 + 17 = 50 (110010)
+33 + 18 = 51 (110011)
+33 + 19 = 52 (110100)
+33 + 20 = 53 (110101)
+33 + 21 = 54 (110110)
+33 + 22 = 55 (110111)
+33 + 23 = 56 (111000)
+33 + 24 = 57 (111001)
+33 + 25 = 58 (111010)
+33 + 26 = 59 (111011)
+33 + 27 = 60 (111100)
+33 + 28 = 61 (111101)
+33 + 29 = 62 (111110)
+33 + 30 = 63 (111111)
+33 + 31 = 0 (000000)
+33 + 32 = 1 (000001)
+33 + 33 = 2 (000010)
+33 + 34 = 3 (000011)
+33 + 35 = 4 (000100)
+33 + 36 = 5 (000101)
+33 + 37 = 6 (000110)
+33 + 38 = 7 (000111)
+33 + 39 = 8 (001000)
+33 + 40 = 9 (001001)
+33 + 41 = 10 (001010)
+33 + 42 = 11 (001011)
+33 + 43 = 12 (001100)
+33 + 44 = 13 (001101)
+33 + 45 = 14 (001110)
+33 + 46 = 15 (001111)
+33 + 47 = 16 (010000)
+33 + 48 = 17 (010001)
+33 + 49 = 18 (010010)
+33 + 50 = 19 (010011)
+33 + 51 = 20 (010100)
+33 + 52 = 21 (010101)
+33 + 53 = 22 (010110)
+33 + 54 = 23 (010111)
+33 + 55 = 24 (011000)
+33 + 56 = 25 (011001)
+33 + 57 = 26 (011010)
+33 + 58 = 27 (011011)
+33 + 59 = 28 (011100)
+33 + 60 = 29 (011101)
+33 + 61 = 30 (011110)
+33 + 62 = 31 (011111)
+33 + 63 = 32 (100000)
+34 + 0 = 34 (100010)
+34 + 1 = 35 (100011)
+34 + 2 = 36 (100100)
+34 + 3 = 37 (100101)
+34 + 4 = 38 (100110)
+34 + 5 = 39 (100111)
+34 + 6 = 40 (101000)
+34 + 7 = 41 (101001)
+34 + 8 = 42 (101010)
+34 + 9 = 43 (101011)
+34 + 10 = 44 (101100)
+34 + 11 = 45 (101101)
+34 + 12 = 46 (101110)
+34 + 13 = 47 (101111)
+34 + 14 = 48 (110000)
+34 + 15 = 49 (110001)
+34 + 16 = 50 (110010)
+34 + 17 = 51 (110011)
+34 + 18 = 52 (110100)
+34 + 19 = 53 (110101)
+34 + 20 = 54 (110110)
+34 + 21 = 55 (110111)
+34 + 22 = 56 (111000)
+34 + 23 = 57 (111001)
+34 + 24 = 58 (111010)
+34 + 25 = 59 (111011)
+34 + 26 = 60 (111100)
+34 + 27 = 61 (111101)
+34 + 28 = 62 (111110)
+34 + 29 = 63 (111111)
+34 + 30 = 0 (000000)
+34 + 31 = 1 (000001)
+34 + 32 = 2 (000010)
+34 + 33 = 3 (000011)
+34 + 34 = 4 (000100)
+34 + 35 = 5 (000101)
+34 + 36 = 6 (000110)
+34 + 37 = 7 (000111)
+34 + 38 = 8 (001000)
+34 + 39 = 9 (001001)
+34 + 40 = 10 (001010)
+34 + 41 = 11 (001011)
+34 + 42 = 12 (001100)
+34 + 43 = 13 (001101)
+34 + 44 = 14 (001110)
+34 + 45 = 15 (001111)
+34 + 46 = 16 (010000)
+34 + 47 = 17 (010001)
+34 + 48 = 18 (010010)
+34 + 49 = 19 (010011)
+34 + 50 = 20 (010100)
+34 + 51 = 21 (010101)
+34 + 52 = 22 (010110)
+34 + 53 = 23 (010111)
+34 + 54 = 24 (011000)
+34 + 55 = 25 (011001)
+34 + 56 = 26 (011010)
+34 + 57 = 27 (011011)
+34 + 58 = 28 (011100)
+34 + 59 = 29 (011101)
+34 + 60 = 30 (011110)
+34 + 61 = 31 (011111)
+34 + 62 = 32 (100000)
+34 + 63 = 33 (100001)
+35 + 0 = 35 (100011)
+35 + 1 = 36 (100100)
+35 + 2 = 37 (100101)
+35 + 3 = 38 (100110)
+35 + 4 = 39 (100111)
+35 + 5 = 40 (101000)
+35 + 6 = 41 (101001)
+35 + 7 = 42 (101010)
+35 + 8 = 43 (101011)
+35 + 9 = 44 (101100)
+35 + 10 = 45 (101101)
+35 + 11 = 46 (101110)
+35 + 12 = 47 (101111)
+35 + 13 = 48 (110000)
+35 + 14 = 49 (110001)
+35 + 15 = 50 (110010)
+35 + 16 = 51 (110011)
+35 + 17 = 52 (110100)
+35 + 18 = 53 (110101)
+35 + 19 = 54 (110110)
+35 + 20 = 55 (110111)
+35 + 21 = 56 (111000)
+35 + 22 = 57 (111001)
+35 + 23 = 58 (111010)
+35 + 24 = 59 (111011)
+35 + 25 = 60 (111100)
+35 + 26 = 61 (111101)
+35 + 27 = 62 (111110)
+35 + 28 = 63 (111111)
+35 + 29 = 0 (000000)
+35 + 30 = 1 (000001)
+35 + 31 = 2 (000010)
+35 + 32 = 3 (000011)
+35 + 33 = 4 (000100)
+35 + 34 = 5 (000101)
+35 + 35 = 6 (000110)
+35 + 36 = 7 (000111)
+35 + 37 = 8 (001000)
+35 + 38 = 9 (001001)
+35 + 39 = 10 (001010)
+35 + 40 = 11 (001011)
+35 + 41 = 12 (001100)
+35 + 42 = 13 (001101)
+35 + 43 = 14 (001110)
+35 + 44 = 15 (001111)
+35 + 45 = 16 (010000)
+35 + 46 = 17 (010001)
+35 + 47 = 18 (010010)
+35 + 48 = 19 (010011)
+35 + 49 = 20 (010100)
+35 + 50 = 21 (010101)
+35 + 51 = 22 (010110)
+35 + 52 = 23 (010111)
+35 + 53 = 24 (011000)
+35 + 54 = 25 (011001)
+35 + 55 = 26 (011010)
+35 + 56 = 27 (011011)
+35 + 57 = 28 (011100)
+35 + 58 = 29 (011101)
+35 + 59 = 30 (011110)
+35 + 60 = 31 (011111)
+35 + 61 = 32 (100000)
+35 + 62 = 33 (100001)
+35 + 63 = 34 (100010)
+36 + 0 = 36 (100100)
+36 + 1 = 37 (100101)
+36 + 2 = 38 (100110)
+36 + 3 = 39 (100111)
+36 + 4 = 40 (101000)
+36 + 5 = 41 (101001)
+36 + 6 = 42 (101010)
+36 + 7 = 43 (101011)
+36 + 8 = 44 (101100)
+36 + 9 = 45 (101101)
+36 + 10 = 46 (101110)
+36 + 11 = 47 (101111)
+36 + 12 = 48 (110000)
+36 + 13 = 49 (110001)
+36 + 14 = 50 (110010)
+36 + 15 = 51 (110011)
+36 + 16 = 52 (110100)
+36 + 17 = 53 (110101)
+36 + 18 = 54 (110110)
+36 + 19 = 55 (110111)
+36 + 20 = 56 (111000)
+36 + 21 = 57 (111001)
+36 + 22 = 58 (111010)
+36 + 23 = 59 (111011)
+36 + 24 = 60 (111100)
+36 + 25 = 61 (111101)
+36 + 26 = 62 (111110)
+36 + 27 = 63 (111111)
+36 + 28 = 0 (000000)
+36 + 29 = 1 (000001)
+36 + 30 = 2 (000010)
+36 + 31 = 3 (000011)
+36 + 32 = 4 (000100)
+36 + 33 = 5 (000101)
+36 + 34 = 6 (000110)
+36 + 35 = 7 (000111)
+36 + 36 = 8 (001000)
+36 + 37 = 9 (001001)
+36 + 38 = 10 (001010)
+36 + 39 = 11 (001011)
+36 + 40 = 12 (001100)
+36 + 41 = 13 (001101)
+36 + 42 = 14 (001110)
+36 + 43 = 15 (001111)
+36 + 44 = 16 (010000)
+36 + 45 = 17 (010001)
+36 + 46 = 18 (010010)
+36 + 47 = 19 (010011)
+36 + 48 = 20 (010100)
+36 + 49 = 21 (010101)
+36 + 50 = 22 (010110)
+36 + 51 = 23 (010111)
+36 + 52 = 24 (011000)
+36 + 53 = 25 (011001)
+36 + 54 = 26 (011010)
+36 + 55 = 27 (011011)
+36 + 56 = 28 (011100)
+36 + 57 = 29 (011101)
+36 + 58 = 30 (011110)
+36 + 59 = 31 (011111)
+36 + 60 = 32 (100000)
+36 + 61 = 33 (100001)
+36 + 62 = 34 (100010)
+36 + 63 = 35 (100011)
+37 + 0 = 37 (100101)
+37 + 1 = 38 (100110)
+37 + 2 = 39 (100111)
+37 + 3 = 40 (101000)
+37 + 4 = 41 (101001)
+37 + 5 = 42 (101010)
+37 + 6 = 43 (101011)
+37 + 7 = 44 (101100)
+37 + 8 = 45 (101101)
+37 + 9 = 46 (101110)
+37 + 10 = 47 (101111)
+37 + 11 = 48 (110000)
+37 + 12 = 49 (110001)
+37 + 13 = 50 (110010)
+37 + 14 = 51 (110011)
+37 + 15 = 52 (110100)
+37 + 16 = 53 (110101)
+37 + 17 = 54 (110110)
+37 + 18 = 55 (110111)
+37 + 19 = 56 (111000)
+37 + 20 = 57 (111001)
+37 + 21 = 58 (111010)
+37 + 22 = 59 (111011)
+37 + 23 = 60 (111100)
+37 + 24 = 61 (111101)
+37 + 25 = 62 (111110)
+37 + 26 = 63 (111111)
+37 + 27 = 0 (000000)
+37 + 28 = 1 (000001)
+37 + 29 = 2 (000010)
+37 + 30 = 3 (000011)
+37 + 31 = 4 (000100)
+37 + 32 = 5 (000101)
+37 + 33 = 6 (000110)
+37 + 34 = 7 (000111)
+37 + 35 = 8 (001000)
+37 + 36 = 9 (001001)
+37 + 37 = 10 (001010)
+37 + 38 = 11 (001011)
+37 + 39 = 12 (001100)
+37 + 40 = 13 (001101)
+37 + 41 = 14 (001110)
+37 + 42 = 15 (001111)
+37 + 43 = 16 (010000)
+37 + 44 = 17 (010001)
+37 + 45 = 18 (010010)
+37 + 46 = 19 (010011)
+37 + 47 = 20 (010100)
+37 + 48 = 21 (010101)
+37 + 49 = 22 (010110)
+37 + 50 = 23 (010111)
+37 + 51 = 24 (011000)
+37 + 52 = 25 (011001)
+37 + 53 = 26 (011010)
+37 + 54 = 27 (011011)
+37 + 55 = 28 (011100)
+37 + 56 = 29 (011101)
+37 + 57 = 30 (011110)
+37 + 58 = 31 (011111)
+37 + 59 = 32 (100000)
+37 + 60 = 33 (100001)
+37 + 61 = 34 (100010)
+37 + 62 = 35 (100011)
+37 + 63 = 36 (100100)
+38 + 0 = 38 (100110)
+38 + 1 = 39 (100111)
+38 + 2 = 40 (101000)
+38 + 3 = 41 (101001)
+38 + 4 = 42 (101010)
+38 + 5 = 43 (101011)
+38 + 6 = 44 (101100)
+38 + 7 = 45 (101101)
+38 + 8 = 46 (101110)
+38 + 9 = 47 (101111)
+38 + 10 = 48 (110000)
+38 + 11 = 49 (110001)
+38 + 12 = 50 (110010)
+38 + 13 = 51 (110011)
+38 + 14 = 52 (110100)
+38 + 15 = 53 (110101)
+38 + 16 = 54 (110110)
+38 + 17 = 55 (110111)
+38 + 18 = 56 (111000)
+38 + 19 = 57 (111001)
+38 + 20 = 58 (111010)
+38 + 21 = 59 (111011)
+38 + 22 = 60 (111100)
+38 + 23 = 61 (111101)
+38 + 24 = 62 (111110)
+38 + 25 = 63 (111111)
+38 + 26 = 0 (000000)
+38 + 27 = 1 (000001)
+38 + 28 = 2 (000010)
+38 + 29 = 3 (000011)
+38 + 30 = 4 (000100)
+38 + 31 = 5 (000101)
+38 + 32 = 6 (000110)
+38 + 33 = 7 (000111)
+38 + 34 = 8 (001000)
+38 + 35 = 9 (001001)
+38 + 36 = 10 (001010)
+38 + 37 = 11 (001011)
+38 + 38 = 12 (001100)
+38 + 39 = 13 (001101)
+38 + 40 = 14 (001110)
+38 + 41 = 15 (001111)
+38 + 42 = 16 (010000)
+38 + 43 = 17 (010001)
+38 + 44 = 18 (010010)
+38 + 45 = 19 (010011)
+38 + 46 = 20 (010100)
+38 + 47 = 21 (010101)
+38 + 48 = 22 (010110)
+38 + 49 = 23 (010111)
+38 + 50 = 24 (011000)
+38 + 51 = 25 (011001)
+38 + 52 = 26 (011010)
+38 + 53 = 27 (011011)
+38 + 54 = 28 (011100)
+38 + 55 = 29 (011101)
+38 + 56 = 30 (011110)
+38 + 57 = 31 (011111)
+38 + 58 = 32 (100000)
+38 + 59 = 33 (100001)
+38 + 60 = 34 (100010)
+38 + 61 = 35 (100011)
+38 + 62 = 36 (100100)
+38 + 63 = 37 (100101)
+39 + 0 = 39 (100111)
+39 + 1 = 40 (101000)
+39 + 2 = 41 (101001)
+39 + 3 = 42 (101010)
+39 + 4 = 43 (101011)
+39 + 5 = 44 (101100)
+39 + 6 = 45 (101101)
+39 + 7 = 46 (101110)
+39 + 8 = 47 (101111)
+39 + 9 = 48 (110000)
+39 + 10 = 49 (110001)
+39 + 11 = 50 (110010)
+39 + 12 = 51 (110011)
+39 + 13 = 52 (110100)
+39 + 14 = 53 (110101)
+39 + 15 = 54 (110110)
+39 + 16 = 55 (110111)
+39 + 17 = 56 (111000)
+39 + 18 = 57 (111001)
+39 + 19 = 58 (111010)
+39 + 20 = 59 (111011)
+39 + 21 = 60 (111100)
+39 + 22 = 61 (111101)
+39 + 23 = 62 (111110)
+39 + 24 = 63 (111111)
+39 + 25 = 0 (000000)
+39 + 26 = 1 (000001)
+39 + 27 = 2 (000010)
+39 + 28 = 3 (000011)
+39 + 29 = 4 (000100)
+39 + 30 = 5 (000101)
+39 + 31 = 6 (000110)
+39 + 32 = 7 (000111)
+39 + 33 = 8 (001000)
+39 + 34 = 9 (001001)
+39 + 35 = 10 (001010)
+39 + 36 = 11 (001011)
+39 + 37 = 12 (001100)
+39 + 38 = 13 (001101)
+39 + 39 = 14 (001110)
+39 + 40 = 15 (001111)
+39 + 41 = 16 (010000)
+39 + 42 = 17 (010001)
+39 + 43 = 18 (010010)
+39 + 44 = 19 (010011)
+39 + 45 = 20 (010100)
+39 + 46 = 21 (010101)
+39 + 47 = 22 (010110)
+39 + 48 = 23 (010111)
+39 + 49 = 24 (011000)
+39 + 50 = 25 (011001)
+39 + 51 = 26 (011010)
+39 + 52 = 27 (011011)
+39 + 53 = 28 (011100)
+39 + 54 = 29 (011101)
+39 + 55 = 30 (011110)
+39 + 56 = 31 (011111)
+39 + 57 = 32 (100000)
+39 + 58 = 33 (100001)
+39 + 59 = 34 (100010)
+39 + 60 = 35 (100011)
+39 + 61 = 36 (100100)
+39 + 62 = 37 (100101)
+39 + 63 = 38 (100110)
+40 + 0 = 40 (101000)
+40 + 1 = 41 (101001)
+40 + 2 = 42 (101010)
+40 + 3 = 43 (101011)
+40 + 4 = 44 (101100)
+40 + 5 = 45 (101101)
+40 + 6 = 46 (101110)
+40 + 7 = 47 (101111)
+40 + 8 = 48 (110000)
+40 + 9 = 49 (110001)
+40 + 10 = 50 (110010)
+40 + 11 = 51 (110011)
+40 + 12 = 52 (110100)
+40 + 13 = 53 (110101)
+40 + 14 = 54 (110110)
+40 + 15 = 55 (110111)
+40 + 16 = 56 (111000)
+40 + 17 = 57 (111001)
+40 + 18 = 58 (111010)
+40 + 19 = 59 (111011)
+40 + 20 = 60 (111100)
+40 + 21 = 61 (111101)
+40 + 22 = 62 (111110)
+40 + 23 = 63 (111111)
+40 + 24 = 0 (000000)
+40 + 25 = 1 (000001)
+40 + 26 = 2 (000010)
+40 + 27 = 3 (000011)
+40 + 28 = 4 (000100)
+40 + 29 = 5 (000101)
+40 + 30 = 6 (000110)
+40 + 31 = 7 (000111)
+40 + 32 = 8 (001000)
+40 + 33 = 9 (001001)
+40 + 34 = 10 (001010)
+40 + 35 = 11 (001011)
+40 + 36 = 12 (001100)
+40 + 37 = 13 (001101)
+40 + 38 = 14 (001110)
+40 + 39 = 15 (001111)
+40 + 40 = 16 (010000)
+40 + 41 = 17 (010001)
+40 + 42 = 18 (010010)
+40 + 43 = 19 (010011)
+40 + 44 = 20 (010100)
+40 + 45 = 21 (010101)
+40 + 46 = 22 (010110)
+40 + 47 = 23 (010111)
+40 + 48 = 24 (011000)
+40 + 49 = 25 (011001)
+40 + 50 = 26 (011010)
+40 + 51 = 27 (011011)
+40 + 52 = 28 (011100)
+40 + 53 = 29 (011101)
+40 + 54 = 30 (011110)
+40 + 55 = 31 (011111)
+40 + 56 = 32 (100000)
+40 + 57 = 33 (100001)
+40 + 58 = 34 (100010)
+40 + 59 = 35 (100011)
+40 + 60 = 36 (100100)
+40 + 61 = 37 (100101)
+40 + 62 = 38 (100110)
+40 + 63 = 39 (100111)
+41 + 0 = 41 (101001)
+41 + 1 = 42 (101010)
+41 + 2 = 43 (101011)
+41 + 3 = 44 (101100)
+41 + 4 = 45 (101101)
+41 + 5 = 46 (101110)
+41 + 6 = 47 (101111)
+41 + 7 = 48 (110000)
+41 + 8 = 49 (110001)
+41 + 9 = 50 (110010)
+41 + 10 = 51 (110011)
+41 + 11 = 52 (110100)
+41 + 12 = 53 (110101)
+41 + 13 = 54 (110110)
+41 + 14 = 55 (110111)
+41 + 15 = 56 (111000)
+41 + 16 = 57 (111001)
+41 + 17 = 58 (111010)
+41 + 18 = 59 (111011)
+41 + 19 = 60 (111100)
+41 + 20 = 61 (111101)
+41 + 21 = 62 (111110)
+41 + 22 = 63 (111111)
+41 + 23 = 0 (000000)
+41 + 24 = 1 (000001)
+41 + 25 = 2 (000010)
+41 + 26 = 3 (000011)
+41 + 27 = 4 (000100)
+41 + 28 = 5 (000101)
+41 + 29 = 6 (000110)
+41 + 30 = 7 (000111)
+41 + 31 = 8 (001000)
+41 + 32 = 9 (001001)
+41 + 33 = 10 (001010)
+41 + 34 = 11 (001011)
+41 + 35 = 12 (001100)
+41 + 36 = 13 (001101)
+41 + 37 = 14 (001110)
+41 + 38 = 15 (001111)
+41 + 39 = 16 (010000)
+41 + 40 = 17 (010001)
+41 + 41 = 18 (010010)
+41 + 42 = 19 (010011)
+41 + 43 = 20 (010100)
+41 + 44 = 21 (010101)
+41 + 45 = 22 (010110)
+41 + 46 = 23 (010111)
+41 + 47 = 24 (011000)
+41 + 48 = 25 (011001)
+41 + 49 = 26 (011010)
+41 + 50 = 27 (011011)
+41 + 51 = 28 (011100)
+41 + 52 = 29 (011101)
+41 + 53 = 30 (011110)
+41 + 54 = 31 (011111)
+41 + 55 = 32 (100000)
+41 + 56 = 33 (100001)
+41 + 57 = 34 (100010)
+41 + 58 = 35 (100011)
+41 + 59 = 36 (100100)
+41 + 60 = 37 (100101)
+41 + 61 = 38 (100110)
+41 + 62 = 39 (100111)
+41 + 63 = 40 (101000)
+42 + 0 = 42 (101010)
+42 + 1 = 43 (101011)
+42 + 2 = 44 (101100)
+42 + 3 = 45 (101101)
+42 + 4 = 46 (101110)
+42 + 5 = 47 (101111)
+42 + 6 = 48 (110000)
+42 + 7 = 49 (110001)
+42 + 8 = 50 (110010)
+42 + 9 = 51 (110011)
+42 + 10 = 52 (110100)
+42 + 11 = 53 (110101)
+42 + 12 = 54 (110110)
+42 + 13 = 55 (110111)
+42 + 14 = 56 (111000)
+42 + 15 = 57 (111001)
+42 + 16 = 58 (111010)
+42 + 17 = 59 (111011)
+42 + 18 = 60 (111100)
+42 + 19 = 61 (111101)
+42 + 20 = 62 (111110)
+42 + 21 = 63 (111111)
+42 + 22 = 0 (000000)
+42 + 23 = 1 (000001)
+42 + 24 = 2 (000010)
+42 + 25 = 3 (000011)
+42 + 26 = 4 (000100)
+42 + 27 = 5 (000101)
+42 + 28 = 6 (000110)
+42 + 29 = 7 (000111)
+42 + 30 = 8 (001000)
+42 + 31 = 9 (001001)
+42 + 32 = 10 (001010)
+42 + 33 = 11 (001011)
+42 + 34 = 12 (001100)
+42 + 35 = 13 (001101)
+42 + 36 = 14 (001110)
+42 + 37 = 15 (001111)
+42 + 38 = 16 (010000)
+42 + 39 = 17 (010001)
+42 + 40 = 18 (010010)
+42 + 41 = 19 (010011)
+42 + 42 = 20 (010100)
+42 + 43 = 21 (010101)
+42 + 44 = 22 (010110)
+42 + 45 = 23 (010111)
+42 + 46 = 24 (011000)
+42 + 47 = 25 (011001)
+42 + 48 = 26 (011010)
+42 + 49 = 27 (011011)
+42 + 50 = 28 (011100)
+42 + 51 = 29 (011101)
+42 + 52 = 30 (011110)
+42 + 53 = 31 (011111)
+42 + 54 = 32 (100000)
+42 + 55 = 33 (100001)
+42 + 56 = 34 (100010)
+42 + 57 = 35 (100011)
+42 + 58 = 36 (100100)
+42 + 59 = 37 (100101)
+42 + 60 = 38 (100110)
+42 + 61 = 39 (100111)
+42 + 62 = 40 (101000)
+42 + 63 = 41 (101001)
+43 + 0 = 43 (101011)
+43 + 1 = 44 (101100)
+43 + 2 = 45 (101101)
+43 + 3 = 46 (101110)
+43 + 4 = 47 (101111)
+43 + 5 = 48 (110000)
+43 + 6 = 49 (110001)
+43 + 7 = 50 (110010)
+43 + 8 = 51 (110011)
+43 + 9 = 52 (110100)
+43 + 10 = 53 (110101)
+43 + 11 = 54 (110110)
+43 + 12 = 55 (110111)
+43 + 13 = 56 (111000)
+43 + 14 = 57 (111001)
+43 + 15 = 58 (111010)
+43 + 16 = 59 (111011)
+43 + 17 = 60 (111100)
+43 + 18 = 61 (111101)
+43 + 19 = 62 (111110)
+43 + 20 = 63 (111111)
+43 + 21 = 0 (000000)
+43 + 22 = 1 (000001)
+43 + 23 = 2 (000010)
+43 + 24 = 3 (000011)
+43 + 25 = 4 (000100)
+43 + 26 = 5 (000101)
+43 + 27 = 6 (000110)
+43 + 28 = 7 (000111)
+43 + 29 = 8 (001000)
+43 + 30 = 9 (001001)
+43 + 31 = 10 (001010)
+43 + 32 = 11 (001011)
+43 + 33 = 12 (001100)
+43 + 34 = 13 (001101)
+43 + 35 = 14 (001110)
+43 + 36 = 15 (001111)
+43 + 37 = 16 (010000)
+43 + 38 = 17 (010001)
+43 + 39 = 18 (010010)
+43 + 40 = 19 (010011)
+43 + 41 = 20 (010100)
+43 + 42 = 21 (010101)
+43 + 43 = 22 (010110)
+43 + 44 = 23 (010111)
+43 + 45 = 24 (011000)
+43 + 46 = 25 (011001)
+43 + 47 = 26 (011010)
+43 + 48 = 27 (011011)
+43 + 49 = 28 (011100)
+43 + 50 = 29 (011101)
+43 + 51 = 30 (011110)
+43 + 52 = 31 (011111)
+43 + 53 = 32 (100000)
+43 + 54 = 33 (100001)
+43 + 55 = 34 (100010)
+43 + 56 = 35 (100011)
+43 + 57 = 36 (100100)
+43 + 58 = 37 (100101)
+43 + 59 = 38 (100110)
+43 + 60 = 39 (100111)
+43 + 61 = 40 (101000)
+43 + 62 = 41 (101001)
+43 + 63 = 42 (101010)
+44 + 0 = 44 (101100)
+44 + 1 = 45 (101101)
+44 + 2 = 46 (101110)
+44 + 3 = 47 (101111)
+44 + 4 = 48 (110000)
+44 + 5 = 49 (110001)
+44 + 6 = 50 (110010)
+44 + 7 = 51 (110011)
+44 + 8 = 52 (110100)
+44 + 9 = 53 (110101)
+44 + 10 = 54 (110110)
+44 + 11 = 55 (110111)
+44 + 12 = 56 (111000)
+44 + 13 = 57 (111001)
+44 + 14 = 58 (111010)
+44 + 15 = 59 (111011)
+44 + 16 = 60 (111100)
+44 + 17 = 61 (111101)
+44 + 18 = 62 (111110)
+44 + 19 = 63 (111111)
+44 + 20 = 0 (000000)
+44 + 21 = 1 (000001)
+44 + 22 = 2 (000010)
+44 + 23 = 3 (000011)
+44 + 24 = 4 (000100)
+44 + 25 = 5 (000101)
+44 + 26 = 6 (000110)
+44 + 27 = 7 (000111)
+44 + 28 = 8 (001000)
+44 + 29 = 9 (001001)
+44 + 30 = 10 (001010)
+44 + 31 = 11 (001011)
+44 + 32 = 12 (001100)
+44 + 33 = 13 (001101)
+44 + 34 = 14 (001110)
+44 + 35 = 15 (001111)
+44 + 36 = 16 (010000)
+44 + 37 = 17 (010001)
+44 + 38 = 18 (010010)
+44 + 39 = 19 (010011)
+44 + 40 = 20 (010100)
+44 + 41 = 21 (010101)
+44 + 42 = 22 (010110)
+44 + 43 = 23 (010111)
+44 + 44 = 24 (011000)
+44 + 45 = 25 (011001)
+44 + 46 = 26 (011010)
+44 + 47 = 27 (011011)
+44 + 48 = 28 (011100)
+44 + 49 = 29 (011101)
+44 + 50 = 30 (011110)
+44 + 51 = 31 (011111)
+44 + 52 = 32 (100000)
+44 + 53 = 33 (100001)
+44 + 54 = 34 (100010)
+44 + 55 = 35 (100011)
+44 + 56 = 36 (100100)
+44 + 57 = 37 (100101)
+44 + 58 = 38 (100110)
+44 + 59 = 39 (100111)
+44 + 60 = 40 (101000)
+44 + 61 = 41 (101001)
+44 + 62 = 42 (101010)
+44 + 63 = 43 (101011)
+45 + 0 = 45 (101101)
+45 + 1 = 46 (101110)
+45 + 2 = 47 (101111)
+45 + 3 = 48 (110000)
+45 + 4 = 49 (110001)
+45 + 5 = 50 (110010)
+45 + 6 = 51 (110011)
+45 + 7 = 52 (110100)
+45 + 8 = 53 (110101)
+45 + 9 = 54 (110110)
+45 + 10 = 55 (110111)
+45 + 11 = 56 (111000)
+45 + 12 = 57 (111001)
+45 + 13 = 58 (111010)
+45 + 14 = 59 (111011)
+45 + 15 = 60 (111100)
+45 + 16 = 61 (111101)
+45 + 17 = 62 (111110)
+45 + 18 = 63 (111111)
+45 + 19 = 0 (000000)
+45 + 20 = 1 (000001)
+45 + 21 = 2 (000010)
+45 + 22 = 3 (000011)
+45 + 23 = 4 (000100)
+45 + 24 = 5 (000101)
+45 + 25 = 6 (000110)
+45 + 26 = 7 (000111)
+45 + 27 = 8 (001000)
+45 + 28 = 9 (001001)
+45 + 29 = 10 (001010)
+45 + 30 = 11 (001011)
+45 + 31 = 12 (001100)
+45 + 32 = 13 (001101)
+45 + 33 = 14 (001110)
+45 + 34 = 15 (001111)
+45 + 35 = 16 (010000)
+45 + 36 = 17 (010001)
+45 + 37 = 18 (010010)
+45 + 38 = 19 (010011)
+45 + 39 = 20 (010100)
+45 + 40 = 21 (010101)
+45 + 41 = 22 (010110)
+45 + 42 = 23 (010111)
+45 + 43 = 24 (011000)
+45 + 44 = 25 (011001)
+45 + 45 = 26 (011010)
+45 + 46 = 27 (011011)
+45 + 47 = 28 (011100)
+45 + 48 = 29 (011101)
+45 + 49 = 30 (011110)
+45 + 50 = 31 (011111)
+45 + 51 = 32 (100000)
+45 + 52 = 33 (100001)
+45 + 53 = 34 (100010)
+45 + 54 = 35 (100011)
+45 + 55 = 36 (100100)
+45 + 56 = 37 (100101)
+45 + 57 = 38 (100110)
+45 + 58 = 39 (100111)
+45 + 59 = 40 (101000)
+45 + 60 = 41 (101001)
+45 + 61 = 42 (101010)
+45 + 62 = 43 (101011)
+45 + 63 = 44 (101100)
+46 + 0 = 46 (101110)
+46 + 1 = 47 (101111)
+46 + 2 = 48 (110000)
+46 + 3 = 49 (110001)
+46 + 4 = 50 (110010)
+46 + 5 = 51 (110011)
+46 + 6 = 52 (110100)
+46 + 7 = 53 (110101)
+46 + 8 = 54 (110110)
+46 + 9 = 55 (110111)
+46 + 10 = 56 (111000)
+46 + 11 = 57 (111001)
+46 + 12 = 58 (111010)
+46 + 13 = 59 (111011)
+46 + 14 = 60 (111100)
+46 + 15 = 61 (111101)
+46 + 16 = 62 (111110)
+46 + 17 = 63 (111111)
+46 + 18 = 0 (000000)
+46 + 19 = 1 (000001)
+46 + 20 = 2 (000010)
+46 + 21 = 3 (000011)
+46 + 22 = 4 (000100)
+46 + 23 = 5 (000101)
+46 + 24 = 6 (000110)
+46 + 25 = 7 (000111)
+46 + 26 = 8 (001000)
+46 + 27 = 9 (001001)
+46 + 28 = 10 (001010)
+46 + 29 = 11 (001011)
+46 + 30 = 12 (001100)
+46 + 31 = 13 (001101)
+46 + 32 = 14 (001110)
+46 + 33 = 15 (001111)
+46 + 34 = 16 (010000)
+46 + 35 = 17 (010001)
+46 + 36 = 18 (010010)
+46 + 37 = 19 (010011)
+46 + 38 = 20 (010100)
+46 + 39 = 21 (010101)
+46 + 40 = 22 (010110)
+46 + 41 = 23 (010111)
+46 + 42 = 24 (011000)
+46 + 43 = 25 (011001)
+46 + 44 = 26 (011010)
+46 + 45 = 27 (011011)
+46 + 46 = 28 (011100)
+46 + 47 = 29 (011101)
+46 + 48 = 30 (011110)
+46 + 49 = 31 (011111)
+46 + 50 = 32 (100000)
+46 + 51 = 33 (100001)
+46 + 52 = 34 (100010)
+46 + 53 = 35 (100011)
+46 + 54 = 36 (100100)
+46 + 55 = 37 (100101)
+46 + 56 = 38 (100110)
+46 + 57 = 39 (100111)
+46 + 58 = 40 (101000)
+46 + 59 = 41 (101001)
+46 + 60 = 42 (101010)
+46 + 61 = 43 (101011)
+46 + 62 = 44 (101100)
+46 + 63 = 45 (101101)
+47 + 0 = 47 (101111)
+47 + 1 = 48 (110000)
+47 + 2 = 49 (110001)
+47 + 3 = 50 (110010)
+47 + 4 = 51 (110011)
+47 + 5 = 52 (110100)
+47 + 6 = 53 (110101)
+47 + 7 = 54 (110110)
+47 + 8 = 55 (110111)
+47 + 9 = 56 (111000)
+47 + 10 = 57 (111001)
+47 + 11 = 58 (111010)
+47 + 12 = 59 (111011)
+47 + 13 = 60 (111100)
+47 + 14 = 61 (111101)
+47 + 15 = 62 (111110)
+47 + 16 = 63 (111111)
+47 + 17 = 0 (000000)
+47 + 18 = 1 (000001)
+47 + 19 = 2 (000010)
+47 + 20 = 3 (000011)
+47 + 21 = 4 (000100)
+47 + 22 = 5 (000101)
+47 + 23 = 6 (000110)
+47 + 24 = 7 (000111)
+47 + 25 = 8 (001000)
+47 + 26 = 9 (001001)
+47 + 27 = 10 (001010)
+47 + 28 = 11 (001011)
+47 + 29 = 12 (001100)
+47 + 30 = 13 (001101)
+47 + 31 = 14 (001110)
+47 + 32 = 15 (001111)
+47 + 33 = 16 (010000)
+47 + 34 = 17 (010001)
+47 + 35 = 18 (010010)
+47 + 36 = 19 (010011)
+47 + 37 = 20 (010100)
+47 + 38 = 21 (010101)
+47 + 39 = 22 (010110)
+47 + 40 = 23 (010111)
+47 + 41 = 24 (011000)
+47 + 42 = 25 (011001)
+47 + 43 = 26 (011010)
+47 + 44 = 27 (011011)
+47 + 45 = 28 (011100)
+47 + 46 = 29 (011101)
+47 + 47 = 30 (011110)
+47 + 48 = 31 (011111)
+47 + 49 = 32 (100000)
+47 + 50 = 33 (100001)
+47 + 51 = 34 (100010)
+47 + 52 = 35 (100011)
+47 + 53 = 36 (100100)
+47 + 54 = 37 (100101)
+47 + 55 = 38 (100110)
+47 + 56 = 39 (100111)
+47 + 57 = 40 (101000)
+47 + 58 = 41 (101001)
+47 + 59 = 42 (101010)
+47 + 60 = 43 (101011)
+47 + 61 = 44 (101100)
+47 + 62 = 45 (101101)
+47 + 63 = 46 (101110)
+48 + 0 = 48 (110000)
+48 + 1 = 49 (110001)
+48 + 2 = 50 (110010)
+48 + 3 = 51 (110011)
+48 + 4 = 52 (110100)
+48 + 5 = 53 (110101)
+48 + 6 = 54 (110110)
+48 + 7 = 55 (110111)
+48 + 8 = 56 (111000)
+48 + 9 = 57 (111001)
+48 + 10 = 58 (111010)
+48 + 11 = 59 (111011)
+48 + 12 = 60 (111100)
+48 + 13 = 61 (111101)
+48 + 14 = 62 (111110)
+48 + 15 = 63 (111111)
+48 + 16 = 0 (000000)
+48 + 17 = 1 (000001)
+48 + 18 = 2 (000010)
+48 + 19 = 3 (000011)
+48 + 20 = 4 (000100)
+48 + 21 = 5 (000101)
+48 + 22 = 6 (000110)
+48 + 23 = 7 (000111)
+48 + 24 = 8 (001000)
+48 + 25 = 9 (001001)
+48 + 26 = 10 (001010)
+48 + 27 = 11 (001011)
+48 + 28 = 12 (001100)
+48 + 29 = 13 (001101)
+48 + 30 = 14 (001110)
+48 + 31 = 15 (001111)
+48 + 32 = 16 (010000)
+48 + 33 = 17 (010001)
+48 + 34 = 18 (010010)
+48 + 35 = 19 (010011)
+48 + 36 = 20 (010100)
+48 + 37 = 21 (010101)
+48 + 38 = 22 (010110)
+48 + 39 = 23 (010111)
+48 + 40 = 24 (011000)
+48 + 41 = 25 (011001)
+48 + 42 = 26 (011010)
+48 + 43 = 27 (011011)
+48 + 44 = 28 (011100)
+48 + 45 = 29 (011101)
+48 + 46 = 30 (011110)
+48 + 47 = 31 (011111)
+48 + 48 = 32 (100000)
+48 + 49 = 33 (100001)
+48 + 50 = 34 (100010)
+48 + 51 = 35 (100011)
+48 + 52 = 36 (100100)
+48 + 53 = 37 (100101)
+48 + 54 = 38 (100110)
+48 + 55 = 39 (100111)
+48 + 56 = 40 (101000)
+48 + 57 = 41 (101001)
+48 + 58 = 42 (101010)
+48 + 59 = 43 (101011)
+48 + 60 = 44 (101100)
+48 + 61 = 45 (101101)
+48 + 62 = 46 (101110)
+48 + 63 = 47 (101111)
+49 + 0 = 49 (110001)
+49 + 1 = 50 (110010)
+49 + 2 = 51 (110011)
+49 + 3 = 52 (110100)
+49 + 4 = 53 (110101)
+49 + 5 = 54 (110110)
+49 + 6 = 55 (110111)
+49 + 7 = 56 (111000)
+49 + 8 = 57 (111001)
+49 + 9 = 58 (111010)
+49 + 10 = 59 (111011)
+49 + 11 = 60 (111100)
+49 + 12 = 61 (111101)
+49 + 13 = 62 (111110)
+49 + 14 = 63 (111111)
+49 + 15 = 0 (000000)
+49 + 16 = 1 (000001)
+49 + 17 = 2 (000010)
+49 + 18 = 3 (000011)
+49 + 19 = 4 (000100)
+49 + 20 = 5 (000101)
+49 + 21 = 6 (000110)
+49 + 22 = 7 (000111)
+49 + 23 = 8 (001000)
+49 + 24 = 9 (001001)
+49 + 25 = 10 (001010)
+49 + 26 = 11 (001011)
+49 + 27 = 12 (001100)
+49 + 28 = 13 (001101)
+49 + 29 = 14 (001110)
+49 + 30 = 15 (001111)
+49 + 31 = 16 (010000)
+49 + 32 = 17 (010001)
+49 + 33 = 18 (010010)
+49 + 34 = 19 (010011)
+49 + 35 = 20 (010100)
+49 + 36 = 21 (010101)
+49 + 37 = 22 (010110)
+49 + 38 = 23 (010111)
+49 + 39 = 24 (011000)
+49 + 40 = 25 (011001)
+49 + 41 = 26 (011010)
+49 + 42 = 27 (011011)
+49 + 43 = 28 (011100)
+49 + 44 = 29 (011101)
+49 + 45 = 30 (011110)
+49 + 46 = 31 (011111)
+49 + 47 = 32 (100000)
+49 + 48 = 33 (100001)
+49 + 49 = 34 (100010)
+49 + 50 = 35 (100011)
+49 + 51 = 36 (100100)
+49 + 52 = 37 (100101)
+49 + 53 = 38 (100110)
+49 + 54 = 39 (100111)
+49 + 55 = 40 (101000)
+49 + 56 = 41 (101001)
+49 + 57 = 42 (101010)
+49 + 58 = 43 (101011)
+49 + 59 = 44 (101100)
+49 + 60 = 45 (101101)
+49 + 61 = 46 (101110)
+49 + 62 = 47 (101111)
+49 + 63 = 48 (110000)
+50 + 0 = 50 (110010)
+50 + 1 = 51 (110011)
+50 + 2 = 52 (110100)
+50 + 3 = 53 (110101)
+50 + 4 = 54 (110110)
+50 + 5 = 55 (110111)
+50 + 6 = 56 (111000)
+50 + 7 = 57 (111001)
+50 + 8 = 58 (111010)
+50 + 9 = 59 (111011)
+50 + 10 = 60 (111100)
+50 + 11 = 61 (111101)
+50 + 12 = 62 (111110)
+50 + 13 = 63 (111111)
+50 + 14 = 0 (000000)
+50 + 15 = 1 (000001)
+50 + 16 = 2 (000010)
+50 + 17 = 3 (000011)
+50 + 18 = 4 (000100)
+50 + 19 = 5 (000101)
+50 + 20 = 6 (000110)
+50 + 21 = 7 (000111)
+50 + 22 = 8 (001000)
+50 + 23 = 9 (001001)
+50 + 24 = 10 (001010)
+50 + 25 = 11 (001011)
+50 + 26 = 12 (001100)
+50 + 27 = 13 (001101)
+50 + 28 = 14 (001110)
+50 + 29 = 15 (001111)
+50 + 30 = 16 (010000)
+50 + 31 = 17 (010001)
+50 + 32 = 18 (010010)
+50 + 33 = 19 (010011)
+50 + 34 = 20 (010100)
+50 + 35 = 21 (010101)
+50 + 36 = 22 (010110)
+50 + 37 = 23 (010111)
+50 + 38 = 24 (011000)
+50 + 39 = 25 (011001)
+50 + 40 = 26 (011010)
+50 + 41 = 27 (011011)
+50 + 42 = 28 (011100)
+50 + 43 = 29 (011101)
+50 + 44 = 30 (011110)
+50 + 45 = 31 (011111)
+50 + 46 = 32 (100000)
+50 + 47 = 33 (100001)
+50 + 48 = 34 (100010)
+50 + 49 = 35 (100011)
+50 + 50 = 36 (100100)
+50 + 51 = 37 (100101)
+50 + 52 = 38 (100110)
+50 + 53 = 39 (100111)
+50 + 54 = 40 (101000)
+50 + 55 = 41 (101001)
+50 + 56 = 42 (101010)
+50 + 57 = 43 (101011)
+50 + 58 = 44 (101100)
+50 + 59 = 45 (101101)
+50 + 60 = 46 (101110)
+50 + 61 = 47 (101111)
+50 + 62 = 48 (110000)
+50 + 63 = 49 (110001)
+51 + 0 = 51 (110011)
+51 + 1 = 52 (110100)
+51 + 2 = 53 (110101)
+51 + 3 = 54 (110110)
+51 + 4 = 55 (110111)
+51 + 5 = 56 (111000)
+51 + 6 = 57 (111001)
+51 + 7 = 58 (111010)
+51 + 8 = 59 (111011)
+51 + 9 = 60 (111100)
+51 + 10 = 61 (111101)
+51 + 11 = 62 (111110)
+51 + 12 = 63 (111111)
+51 + 13 = 0 (000000)
+51 + 14 = 1 (000001)
+51 + 15 = 2 (000010)
+51 + 16 = 3 (000011)
+51 + 17 = 4 (000100)
+51 + 18 = 5 (000101)
+51 + 19 = 6 (000110)
+51 + 20 = 7 (000111)
+51 + 21 = 8 (001000)
+51 + 22 = 9 (001001)
+51 + 23 = 10 (001010)
+51 + 24 = 11 (001011)
+51 + 25 = 12 (001100)
+51 + 26 = 13 (001101)
+51 + 27 = 14 (001110)
+51 + 28 = 15 (001111)
+51 + 29 = 16 (010000)
+51 + 30 = 17 (010001)
+51 + 31 = 18 (010010)
+51 + 32 = 19 (010011)
+51 + 33 = 20 (010100)
+51 + 34 = 21 (010101)
+51 + 35 = 22 (010110)
+51 + 36 = 23 (010111)
+51 + 37 = 24 (011000)
+51 + 38 = 25 (011001)
+51 + 39 = 26 (011010)
+51 + 40 = 27 (011011)
+51 + 41 = 28 (011100)
+51 + 42 = 29 (011101)
+51 + 43 = 30 (011110)
+51 + 44 = 31 (011111)
+51 + 45 = 32 (100000)
+51 + 46 = 33 (100001)
+51 + 47 = 34 (100010)
+51 + 48 = 35 (100011)
+51 + 49 = 36 (100100)
+51 + 50 = 37 (100101)
+51 + 51 = 38 (100110)
+51 + 52 = 39 (100111)
+51 + 53 = 40 (101000)
+51 + 54 = 41 (101001)
+51 + 55 = 42 (101010)
+51 + 56 = 43 (101011)
+51 + 57 = 44 (101100)
+51 + 58 = 45 (101101)
+51 + 59 = 46 (101110)
+51 + 60 = 47 (101111)
+51 + 61 = 48 (110000)
+51 + 62 = 49 (110001)
+51 + 63 = 50 (110010)
+52 + 0 = 52 (110100)
+52 + 1 = 53 (110101)
+52 + 2 = 54 (110110)
+52 + 3 = 55 (110111)
+52 + 4 = 56 (111000)
+52 + 5 = 57 (111001)
+52 + 6 = 58 (111010)
+52 + 7 = 59 (111011)
+52 + 8 = 60 (111100)
+52 + 9 = 61 (111101)
+52 + 10 = 62 (111110)
+52 + 11 = 63 (111111)
+52 + 12 = 0 (000000)
+52 + 13 = 1 (000001)
+52 + 14 = 2 (000010)
+52 + 15 = 3 (000011)
+52 + 16 = 4 (000100)
+52 + 17 = 5 (000101)
+52 + 18 = 6 (000110)
+52 + 19 = 7 (000111)
+52 + 20 = 8 (001000)
+52 + 21 = 9 (001001)
+52 + 22 = 10 (001010)
+52 + 23 = 11 (001011)
+52 + 24 = 12 (001100)
+52 + 25 = 13 (001101)
+52 + 26 = 14 (001110)
+52 + 27 = 15 (001111)
+52 + 28 = 16 (010000)
+52 + 29 = 17 (010001)
+52 + 30 = 18 (010010)
+52 + 31 = 19 (010011)
+52 + 32 = 20 (010100)
+52 + 33 = 21 (010101)
+52 + 34 = 22 (010110)
+52 + 35 = 23 (010111)
+52 + 36 = 24 (011000)
+52 + 37 = 25 (011001)
+52 + 38 = 26 (011010)
+52 + 39 = 27 (011011)
+52 + 40 = 28 (011100)
+52 + 41 = 29 (011101)
+52 + 42 = 30 (011110)
+52 + 43 = 31 (011111)
+52 + 44 = 32 (100000)
+52 + 45 = 33 (100001)
+52 + 46 = 34 (100010)
+52 + 47 = 35 (100011)
+52 + 48 = 36 (100100)
+52 + 49 = 37 (100101)
+52 + 50 = 38 (100110)
+52 + 51 = 39 (100111)
+52 + 52 = 40 (101000)
+52 + 53 = 41 (101001)
+52 + 54 = 42 (101010)
+52 + 55 = 43 (101011)
+52 + 56 = 44 (101100)
+52 + 57 = 45 (101101)
+52 + 58 = 46 (101110)
+52 + 59 = 47 (101111)
+52 + 60 = 48 (110000)
+52 + 61 = 49 (110001)
+52 + 62 = 50 (110010)
+52 + 63 = 51 (110011)
+53 + 0 = 53 (110101)
+53 + 1 = 54 (110110)
+53 + 2 = 55 (110111)
+53 + 3 = 56 (111000)
+53 + 4 = 57 (111001)
+53 + 5 = 58 (111010)
+53 + 6 = 59 (111011)
+53 + 7 = 60 (111100)
+53 + 8 = 61 (111101)
+53 + 9 = 62 (111110)
+53 + 10 = 63 (111111)
+53 + 11 = 0 (000000)
+53 + 12 = 1 (000001)
+53 + 13 = 2 (000010)
+53 + 14 = 3 (000011)
+53 + 15 = 4 (000100)
+53 + 16 = 5 (000101)
+53 + 17 = 6 (000110)
+53 + 18 = 7 (000111)
+53 + 19 = 8 (001000)
+53 + 20 = 9 (001001)
+53 + 21 = 10 (001010)
+53 + 22 = 11 (001011)
+53 + 23 = 12 (001100)
+53 + 24 = 13 (001101)
+53 + 25 = 14 (001110)
+53 + 26 = 15 (001111)
+53 + 27 = 16 (010000)
+53 + 28 = 17 (010001)
+53 + 29 = 18 (010010)
+53 + 30 = 19 (010011)
+53 + 31 = 20 (010100)
+53 + 32 = 21 (010101)
+53 + 33 = 22 (010110)
+53 + 34 = 23 (010111)
+53 + 35 = 24 (011000)
+53 + 36 = 25 (011001)
+53 + 37 = 26 (011010)
+53 + 38 = 27 (011011)
+53 + 39 = 28 (011100)
+53 + 40 = 29 (011101)
+53 + 41 = 30 (011110)
+53 + 42 = 31 (011111)
+53 + 43 = 32 (100000)
+53 + 44 = 33 (100001)
+53 + 45 = 34 (100010)
+53 + 46 = 35 (100011)
+53 + 47 = 36 (100100)
+53 + 48 = 37 (100101)
+53 + 49 = 38 (100110)
+53 + 50 = 39 (100111)
+53 + 51 = 40 (101000)
+53 + 52 = 41 (101001)
+53 + 53 = 42 (101010)
+53 + 54 = 43 (101011)
+53 + 55 = 44 (101100)
+53 + 56 = 45 (101101)
+53 + 57 = 46 (101110)
+53 + 58 = 47 (101111)
+53 + 59 = 48 (110000)
+53 + 60 = 49 (110001)
+53 + 61 = 50 (110010)
+53 + 62 = 51 (110011)
+53 + 63 = 52 (110100)
+54 + 0 = 54 (110110)
+54 + 1 = 55 (110111)
+54 + 2 = 56 (111000)
+54 + 3 = 57 (111001)
+54 + 4 = 58 (111010)
+54 + 5 = 59 (111011)
+54 + 6 = 60 (111100)
+54 + 7 = 61 (111101)
+54 + 8 = 62 (111110)
+54 + 9 = 63 (111111)
+54 + 10 = 0 (000000)
+54 + 11 = 1 (000001)
+54 + 12 = 2 (000010)
+54 + 13 = 3 (000011)
+54 + 14 = 4 (000100)
+54 + 15 = 5 (000101)
+54 + 16 = 6 (000110)
+54 + 17 = 7 (000111)
+54 + 18 = 8 (001000)
+54 + 19 = 9 (001001)
+54 + 20 = 10 (001010)
+54 + 21 = 11 (001011)
+54 + 22 = 12 (001100)
+54 + 23 = 13 (001101)
+54 + 24 = 14 (001110)
+54 + 25 = 15 (001111)
+54 + 26 = 16 (010000)
+54 + 27 = 17 (010001)
+54 + 28 = 18 (010010)
+54 + 29 = 19 (010011)
+54 + 30 = 20 (010100)
+54 + 31 = 21 (010101)
+54 + 32 = 22 (010110)
+54 + 33 = 23 (010111)
+54 + 34 = 24 (011000)
+54 + 35 = 25 (011001)
+54 + 36 = 26 (011010)
+54 + 37 = 27 (011011)
+54 + 38 = 28 (011100)
+54 + 39 = 29 (011101)
+54 + 40 = 30 (011110)
+54 + 41 = 31 (011111)
+54 + 42 = 32 (100000)
+54 + 43 = 33 (100001)
+54 + 44 = 34 (100010)
+54 + 45 = 35 (100011)
+54 + 46 = 36 (100100)
+54 + 47 = 37 (100101)
+54 + 48 = 38 (100110)
+54 + 49 = 39 (100111)
+54 + 50 = 40 (101000)
+54 + 51 = 41 (101001)
+54 + 52 = 42 (101010)
+54 + 53 = 43 (101011)
+54 + 54 = 44 (101100)
+54 + 55 = 45 (101101)
+54 + 56 = 46 (101110)
+54 + 57 = 47 (101111)
+54 + 58 = 48 (110000)
+54 + 59 = 49 (110001)
+54 + 60 = 50 (110010)
+54 + 61 = 51 (110011)
+54 + 62 = 52 (110100)
+54 + 63 = 53 (110101)
+55 + 0 = 55 (110111)
+55 + 1 = 56 (111000)
+55 + 2 = 57 (111001)
+55 + 3 = 58 (111010)
+55 + 4 = 59 (111011)
+55 + 5 = 60 (111100)
+55 + 6 = 61 (111101)
+55 + 7 = 62 (111110)
+55 + 8 = 63 (111111)
+55 + 9 = 0 (000000)
+55 + 10 = 1 (000001)
+55 + 11 = 2 (000010)
+55 + 12 = 3 (000011)
+55 + 13 = 4 (000100)
+55 + 14 = 5 (000101)
+55 + 15 = 6 (000110)
+55 + 16 = 7 (000111)
+55 + 17 = 8 (001000)
+55 + 18 = 9 (001001)
+55 + 19 = 10 (001010)
+55 + 20 = 11 (001011)
+55 + 21 = 12 (001100)
+55 + 22 = 13 (001101)
+55 + 23 = 14 (001110)
+55 + 24 = 15 (001111)
+55 + 25 = 16 (010000)
+55 + 26 = 17 (010001)
+55 + 27 = 18 (010010)
+55 + 28 = 19 (010011)
+55 + 29 = 20 (010100)
+55 + 30 = 21 (010101)
+55 + 31 = 22 (010110)
+55 + 32 = 23 (010111)
+55 + 33 = 24 (011000)
+55 + 34 = 25 (011001)
+55 + 35 = 26 (011010)
+55 + 36 = 27 (011011)
+55 + 37 = 28 (011100)
+55 + 38 = 29 (011101)
+55 + 39 = 30 (011110)
+55 + 40 = 31 (011111)
+55 + 41 = 32 (100000)
+55 + 42 = 33 (100001)
+55 + 43 = 34 (100010)
+55 + 44 = 35 (100011)
+55 + 45 = 36 (100100)
+55 + 46 = 37 (100101)
+55 + 47 = 38 (100110)
+55 + 48 = 39 (100111)
+55 + 49 = 40 (101000)
+55 + 50 = 41 (101001)
+55 + 51 = 42 (101010)
+55 + 52 = 43 (101011)
+55 + 53 = 44 (101100)
+55 + 54 = 45 (101101)
+55 + 55 = 46 (101110)
+55 + 56 = 47 (101111)
+55 + 57 = 48 (110000)
+55 + 58 = 49 (110001)
+55 + 59 = 50 (110010)
+55 + 60 = 51 (110011)
+55 + 61 = 52 (110100)
+55 + 62 = 53 (110101)
+55 + 63 = 54 (110110)
+56 + 0 = 56 (111000)
+56 + 1 = 57 (111001)
+56 + 2 = 58 (111010)
+56 + 3 = 59 (111011)
+56 + 4 = 60 (111100)
+56 + 5 = 61 (111101)
+56 + 6 = 62 (111110)
+56 + 7 = 63 (111111)
+56 + 8 = 0 (000000)
+56 + 9 = 1 (000001)
+56 + 10 = 2 (000010)
+56 + 11 = 3 (000011)
+56 + 12 = 4 (000100)
+56 + 13 = 5 (000101)
+56 + 14 = 6 (000110)
+56 + 15 = 7 (000111)
+56 + 16 = 8 (001000)
+56 + 17 = 9 (001001)
+56 + 18 = 10 (001010)
+56 + 19 = 11 (001011)
+56 + 20 = 12 (001100)
+56 + 21 = 13 (001101)
+56 + 22 = 14 (001110)
+56 + 23 = 15 (001111)
+56 + 24 = 16 (010000)
+56 + 25 = 17 (010001)
+56 + 26 = 18 (010010)
+56 + 27 = 19 (010011)
+56 + 28 = 20 (010100)
+56 + 29 = 21 (010101)
+56 + 30 = 22 (010110)
+56 + 31 = 23 (010111)
+56 + 32 = 24 (011000)
+56 + 33 = 25 (011001)
+56 + 34 = 26 (011010)
+56 + 35 = 27 (011011)
+56 + 36 = 28 (011100)
+56 + 37 = 29 (011101)
+56 + 38 = 30 (011110)
+56 + 39 = 31 (011111)
+56 + 40 = 32 (100000)
+56 + 41 = 33 (100001)
+56 + 42 = 34 (100010)
+56 + 43 = 35 (100011)
+56 + 44 = 36 (100100)
+56 + 45 = 37 (100101)
+56 + 46 = 38 (100110)
+56 + 47 = 39 (100111)
+56 + 48 = 40 (101000)
+56 + 49 = 41 (101001)
+56 + 50 = 42 (101010)
+56 + 51 = 43 (101011)
+56 + 52 = 44 (101100)
+56 + 53 = 45 (101101)
+56 + 54 = 46 (101110)
+56 + 55 = 47 (101111)
+56 + 56 = 48 (110000)
+56 + 57 = 49 (110001)
+56 + 58 = 50 (110010)
+56 + 59 = 51 (110011)
+56 + 60 = 52 (110100)
+56 + 61 = 53 (110101)
+56 + 62 = 54 (110110)
+56 + 63 = 55 (110111)
+57 + 0 = 57 (111001)
+57 + 1 = 58 (111010)
+57 + 2 = 59 (111011)
+57 + 3 = 60 (111100)
+57 + 4 = 61 (111101)
+57 + 5 = 62 (111110)
+57 + 6 = 63 (111111)
+57 + 7 = 0 (000000)
+57 + 8 = 1 (000001)
+57 + 9 = 2 (000010)
+57 + 10 = 3 (000011)
+57 + 11 = 4 (000100)
+57 + 12 = 5 (000101)
+57 + 13 = 6 (000110)
+57 + 14 = 7 (000111)
+57 + 15 = 8 (001000)
+57 + 16 = 9 (001001)
+57 + 17 = 10 (001010)
+57 + 18 = 11 (001011)
+57 + 19 = 12 (001100)
+57 + 20 = 13 (001101)
+57 + 21 = 14 (001110)
+57 + 22 = 15 (001111)
+57 + 23 = 16 (010000)
+57 + 24 = 17 (010001)
+57 + 25 = 18 (010010)
+57 + 26 = 19 (010011)
+57 + 27 = 20 (010100)
+57 + 28 = 21 (010101)
+57 + 29 = 22 (010110)
+57 + 30 = 23 (010111)
+57 + 31 = 24 (011000)
+57 + 32 = 25 (011001)
+57 + 33 = 26 (011010)
+57 + 34 = 27 (011011)
+57 + 35 = 28 (011100)
+57 + 36 = 29 (011101)
+57 + 37 = 30 (011110)
+57 + 38 = 31 (011111)
+57 + 39 = 32 (100000)
+57 + 40 = 33 (100001)
+57 + 41 = 34 (100010)
+57 + 42 = 35 (100011)
+57 + 43 = 36 (100100)
+57 + 44 = 37 (100101)
+57 + 45 = 38 (100110)
+57 + 46 = 39 (100111)
+57 + 47 = 40 (101000)
+57 + 48 = 41 (101001)
+57 + 49 = 42 (101010)
+57 + 50 = 43 (101011)
+57 + 51 = 44 (101100)
+57 + 52 = 45 (101101)
+57 + 53 = 46 (101110)
+57 + 54 = 47 (101111)
+57 + 55 = 48 (110000)
+57 + 56 = 49 (110001)
+57 + 57 = 50 (110010)
+57 + 58 = 51 (110011)
+57 + 59 = 52 (110100)
+57 + 60 = 53 (110101)
+57 + 61 = 54 (110110)
+57 + 62 = 55 (110111)
+57 + 63 = 56 (111000)
+58 + 0 = 58 (111010)
+58 + 1 = 59 (111011)
+58 + 2 = 60 (111100)
+58 + 3 = 61 (111101)
+58 + 4 = 62 (111110)
+58 + 5 = 63 (111111)
+58 + 6 = 0 (000000)
+58 + 7 = 1 (000001)
+58 + 8 = 2 (000010)
+58 + 9 = 3 (000011)
+58 + 10 = 4 (000100)
+58 + 11 = 5 (000101)
+58 + 12 = 6 (000110)
+58 + 13 = 7 (000111)
+58 + 14 = 8 (001000)
+58 + 15 = 9 (001001)
+58 + 16 = 10 (001010)
+58 + 17 = 11 (001011)
+58 + 18 = 12 (001100)
+58 + 19 = 13 (001101)
+58 + 20 = 14 (001110)
+58 + 21 = 15 (001111)
+58 + 22 = 16 (010000)
+58 + 23 = 17 (010001)
+58 + 24 = 18 (010010)
+58 + 25 = 19 (010011)
+58 + 26 = 20 (010100)
+58 + 27 = 21 (010101)
+58 + 28 = 22 (010110)
+58 + 29 = 23 (010111)
+58 + 30 = 24 (011000)
+58 + 31 = 25 (011001)
+58 + 32 = 26 (011010)
+58 + 33 = 27 (011011)
+58 + 34 = 28 (011100)
+58 + 35 = 29 (011101)
+58 + 36 = 30 (011110)
+58 + 37 = 31 (011111)
+58 + 38 = 32 (100000)
+58 + 39 = 33 (100001)
+58 + 40 = 34 (100010)
+58 + 41 = 35 (100011)
+58 + 42 = 36 (100100)
+58 + 43 = 37 (100101)
+58 + 44 = 38 (100110)
+58 + 45 = 39 (100111)
+58 + 46 = 40 (101000)
+58 + 47 = 41 (101001)
+58 + 48 = 42 (101010)
+58 + 49 = 43 (101011)
+58 + 50 = 44 (101100)
+58 + 51 = 45 (101101)
+58 + 52 = 46 (101110)
+58 + 53 = 47 (101111)
+58 + 54 = 48 (110000)
+58 + 55 = 49 (110001)
+58 + 56 = 50 (110010)
+58 + 57 = 51 (110011)
+58 + 58 = 52 (110100)
+58 + 59 = 53 (110101)
+58 + 60 = 54 (110110)
+58 + 61 = 55 (110111)
+58 + 62 = 56 (111000)
+58 + 63 = 57 (111001)
+59 + 0 = 59 (111011)
+59 + 1 = 60 (111100)
+59 + 2 = 61 (111101)
+59 + 3 = 62 (111110)
+59 + 4 = 63 (111111)
+59 + 5 = 0 (000000)
+59 + 6 = 1 (000001)
+59 + 7 = 2 (000010)
+59 + 8 = 3 (000011)
+59 + 9 = 4 (000100)
+59 + 10 = 5 (000101)
+59 + 11 = 6 (000110)
+59 + 12 = 7 (000111)
+59 + 13 = 8 (001000)
+59 + 14 = 9 (001001)
+59 + 15 = 10 (001010)
+59 + 16 = 11 (001011)
+59 + 17 = 12 (001100)
+59 + 18 = 13 (001101)
+59 + 19 = 14 (001110)
+59 + 20 = 15 (001111)
+59 + 21 = 16 (010000)
+59 + 22 = 17 (010001)
+59 + 23 = 18 (010010)
+59 + 24 = 19 (010011)
+59 + 25 = 20 (010100)
+59 + 26 = 21 (010101)
+59 + 27 = 22 (010110)
+59 + 28 = 23 (010111)
+59 + 29 = 24 (011000)
+59 + 30 = 25 (011001)
+59 + 31 = 26 (011010)
+59 + 32 = 27 (011011)
+59 + 33 = 28 (011100)
+59 + 34 = 29 (011101)
+59 + 35 = 30 (011110)
+59 + 36 = 31 (011111)
+59 + 37 = 32 (100000)
+59 + 38 = 33 (100001)
+59 + 39 = 34 (100010)
+59 + 40 = 35 (100011)
+59 + 41 = 36 (100100)
+59 + 42 = 37 (100101)
+59 + 43 = 38 (100110)
+59 + 44 = 39 (100111)
+59 + 45 = 40 (101000)
+59 + 46 = 41 (101001)
+59 + 47 = 42 (101010)
+59 + 48 = 43 (101011)
+59 + 49 = 44 (101100)
+59 + 50 = 45 (101101)
+59 + 51 = 46 (101110)
+59 + 52 = 47 (101111)
+59 + 53 = 48 (110000)
+59 + 54 = 49 (110001)
+59 + 55 = 50 (110010)
+59 + 56 = 51 (110011)
+59 + 57 = 52 (110100)
+59 + 58 = 53 (110101)
+59 + 59 = 54 (110110)
+59 + 60 = 55 (110111)
+59 + 61 = 56 (111000)
+59 + 62 = 57 (111001)
+59 + 63 = 58 (111010)
+60 + 0 = 60 (111100)
+60 + 1 = 61 (111101)
+60 + 2 = 62 (111110)
+60 + 3 = 63 (111111)
+60 + 4 = 0 (000000)
+60 + 5 = 1 (000001)
+60 + 6 = 2 (000010)
+60 + 7 = 3 (000011)
+60 + 8 = 4 (000100)
+60 + 9 = 5 (000101)
+60 + 10 = 6 (000110)
+60 + 11 = 7 (000111)
+60 + 12 = 8 (001000)
+60 + 13 = 9 (001001)
+60 + 14 = 10 (001010)
+60 + 15 = 11 (001011)
+60 + 16 = 12 (001100)
+60 + 17 = 13 (001101)
+60 + 18 = 14 (001110)
+60 + 19 = 15 (001111)
+60 + 20 = 16 (010000)
+60 + 21 = 17 (010001)
+60 + 22 = 18 (010010)
+60 + 23 = 19 (010011)
+60 + 24 = 20 (010100)
+60 + 25 = 21 (010101)
+60 + 26 = 22 (010110)
+60 + 27 = 23 (010111)
+60 + 28 = 24 (011000)
+60 + 29 = 25 (011001)
+60 + 30 = 26 (011010)
+60 + 31 = 27 (011011)
+60 + 32 = 28 (011100)
+60 + 33 = 29 (011101)
+60 + 34 = 30 (011110)
+60 + 35 = 31 (011111)
+60 + 36 = 32 (100000)
+60 + 37 = 33 (100001)
+60 + 38 = 34 (100010)
+60 + 39 = 35 (100011)
+60 + 40 = 36 (100100)
+60 + 41 = 37 (100101)
+60 + 42 = 38 (100110)
+60 + 43 = 39 (100111)
+60 + 44 = 40 (101000)
+60 + 45 = 41 (101001)
+60 + 46 = 42 (101010)
+60 + 47 = 43 (101011)
+60 + 48 = 44 (101100)
+60 + 49 = 45 (101101)
+60 + 50 = 46 (101110)
+60 + 51 = 47 (101111)
+60 + 52 = 48 (110000)
+60 + 53 = 49 (110001)
+60 + 54 = 50 (110010)
+60 + 55 = 51 (110011)
+60 + 56 = 52 (110100)
+60 + 57 = 53 (110101)
+60 + 58 = 54 (110110)
+60 + 59 = 55 (110111)
+60 + 60 = 56 (111000)
+60 + 61 = 57 (111001)
+60 + 62 = 58 (111010)
+60 + 63 = 59 (111011)
+61 + 0 = 61 (111101)
+61 + 1 = 62 (111110)
+61 + 2 = 63 (111111)
+61 + 3 = 0 (000000)
+61 + 4 = 1 (000001)
+61 + 5 = 2 (000010)
+61 + 6 = 3 (000011)
+61 + 7 = 4 (000100)
+61 + 8 = 5 (000101)
+61 + 9 = 6 (000110)
+61 + 10 = 7 (000111)
+61 + 11 = 8 (001000)
+61 + 12 = 9 (001001)
+61 + 13 = 10 (001010)
+61 + 14 = 11 (001011)
+61 + 15 = 12 (001100)
+61 + 16 = 13 (001101)
+61 + 17 = 14 (001110)
+61 + 18 = 15 (001111)
+61 + 19 = 16 (010000)
+61 + 20 = 17 (010001)
+61 + 21 = 18 (010010)
+61 + 22 = 19 (010011)
+61 + 23 = 20 (010100)
+61 + 24 = 21 (010101)
+61 + 25 = 22 (010110)
+61 + 26 = 23 (010111)
+61 + 27 = 24 (011000)
+61 + 28 = 25 (011001)
+61 + 29 = 26 (011010)
+61 + 30 = 27 (011011)
+61 + 31 = 28 (011100)
+61 + 32 = 29 (011101)
+61 + 33 = 30 (011110)
+61 + 34 = 31 (011111)
+61 + 35 = 32 (100000)
+61 + 36 = 33 (100001)
+61 + 37 = 34 (100010)
+61 + 38 = 35 (100011)
+61 + 39 = 36 (100100)
+61 + 40 = 37 (100101)
+61 + 41 = 38 (100110)
+61 + 42 = 39 (100111)
+61 + 43 = 40 (101000)
+61 + 44 = 41 (101001)
+61 + 45 = 42 (101010)
+61 + 46 = 43 (101011)
+61 + 47 = 44 (101100)
+61 + 48 = 45 (101101)
+61 + 49 = 46 (101110)
+61 + 50 = 47 (101111)
+61 + 51 = 48 (110000)
+61 + 52 = 49 (110001)
+61 + 53 = 50 (110010)
+61 + 54 = 51 (110011)
+61 + 55 = 52 (110100)
+61 + 56 = 53 (110101)
+61 + 57 = 54 (110110)
+61 + 58 = 55 (110111)
+61 + 59 = 56 (111000)
+61 + 60 = 57 (111001)
+61 + 61 = 58 (111010)
+61 + 62 = 59 (111011)
+61 + 63 = 60 (111100)
+62 + 0 = 62 (111110)
+62 + 1 = 63 (111111)
+62 + 2 = 0 (000000)
+62 + 3 = 1 (000001)
+62 + 4 = 2 (000010)
+62 + 5 = 3 (000011)
+62 + 6 = 4 (000100)
+62 + 7 = 5 (000101)
+62 + 8 = 6 (000110)
+62 + 9 = 7 (000111)
+62 + 10 = 8 (001000)
+62 + 11 = 9 (001001)
+62 + 12 = 10 (001010)
+62 + 13 = 11 (001011)
+62 + 14 = 12 (001100)
+62 + 15 = 13 (001101)
+62 + 16 = 14 (001110)
+62 + 17 = 15 (001111)
+62 + 18 = 16 (010000)
+62 + 19 = 17 (010001)
+62 + 20 = 18 (010010)
+62 + 21 = 19 (010011)
+62 + 22 = 20 (010100)
+62 + 23 = 21 (010101)
+62 + 24 = 22 (010110)
+62 + 25 = 23 (010111)
+62 + 26 = 24 (011000)
+62 + 27 = 25 (011001)
+62 + 28 = 26 (011010)
+62 + 29 = 27 (011011)
+62 + 30 = 28 (011100)
+62 + 31 = 29 (011101)
+62 + 32 = 30 (011110)
+62 + 33 = 31 (011111)
+62 + 34 = 32 (100000)
+62 + 35 = 33 (100001)
+62 + 36 = 34 (100010)
+62 + 37 = 35 (100011)
+62 + 38 = 36 (100100)
+62 + 39 = 37 (100101)
+62 + 40 = 38 (100110)
+62 + 41 = 39 (100111)
+62 + 42 = 40 (101000)
+62 + 43 = 41 (101001)
+62 + 44 = 42 (101010)
+62 + 45 = 43 (101011)
+62 + 46 = 44 (101100)
+62 + 47 = 45 (101101)
+62 + 48 = 46 (101110)
+62 + 49 = 47 (101111)
+62 + 50 = 48 (110000)
+62 + 51 = 49 (110001)
+62 + 52 = 50 (110010)
+62 + 53 = 51 (110011)
+62 + 54 = 52 (110100)
+62 + 55 = 53 (110101)
+62 + 56 = 54 (110110)
+62 + 57 = 55 (110111)
+62 + 58 = 56 (111000)
+62 + 59 = 57 (111001)
+62 + 60 = 58 (111010)
+62 + 61 = 59 (111011)
+62 + 62 = 60 (111100)
+62 + 63 = 61 (111101)
+63 + 0 = 63 (111111)
+63 + 1 = 0 (000000)
+63 + 2 = 1 (000001)
+63 + 3 = 2 (000010)
+63 + 4 = 3 (000011)
+63 + 5 = 4 (000100)
+63 + 6 = 5 (000101)
+63 + 7 = 6 (000110)
+63 + 8 = 7 (000111)
+63 + 9 = 8 (001000)
+63 + 10 = 9 (001001)
+63 + 11 = 10 (001010)
+63 + 12 = 11 (001011)
+63 + 13 = 12 (001100)
+63 + 14 = 13 (001101)
+63 + 15 = 14 (001110)
+63 + 16 = 15 (001111)
+63 + 17 = 16 (010000)
+63 + 18 = 17 (010001)
+63 + 19 = 18 (010010)
+63 + 20 = 19 (010011)
+63 + 21 = 20 (010100)
+63 + 22 = 21 (010101)
+63 + 23 = 22 (010110)
+63 + 24 = 23 (010111)
+63 + 25 = 24 (011000)
+63 + 26 = 25 (011001)
+63 + 27 = 26 (011010)
+63 + 28 = 27 (011011)
+63 + 29 = 28 (011100)
+63 + 30 = 29 (011101)
+63 + 31 = 30 (011110)
+63 + 32 = 31 (011111)
+63 + 33 = 32 (100000)
+63 + 34 = 33 (100001)
+63 + 35 = 34 (100010)
+63 + 36 = 35 (100011)
+63 + 37 = 36 (100100)
+63 + 38 = 37 (100101)
+63 + 39 = 38 (100110)
+63 + 40 = 39 (100111)
+63 + 41 = 40 (101000)
+63 + 42 = 41 (101001)
+63 + 43 = 42 (101010)
+63 + 44 = 43 (101011)
+63 + 45 = 44 (101100)
+63 + 46 = 45 (101101)
+63 + 47 = 46 (101110)
+63 + 48 = 47 (101111)
+63 + 49 = 48 (110000)
+63 + 50 = 49 (110001)
+63 + 51 = 50 (110010)
+63 + 52 = 51 (110011)
+63 + 53 = 52 (110100)
+63 + 54 = 53 (110101)
+63 + 55 = 54 (110110)
+63 + 56 = 55 (110111)
+63 + 57 = 56 (111000)
+63 + 58 = 57 (111001)
+63 + 59 = 58 (111010)
+63 + 60 = 59 (111011)
+63 + 61 = 60 (111100)
+63 + 62 = 61 (111101)
+63 + 63 = 62 (111110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/lost_carry.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/lost_carry.f
new file mode 100644
index 000000000..e5ebe3a3b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/lost_carry.f
@@ -0,0 +1,3 @@
+lost_carry/datawidth.cpp
+lost_carry/stimgen.cpp
+lost_carry/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/main.cpp
new file mode 100644
index 000000000..3191d0641
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 6-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 6;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector in1 ("in1");
+ signal_bool_vector in2 ("in2");
+ signal_bool_vector result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/stimgen.h
new file mode 100644
index 000000000..0a0e9900d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/lost_carry/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector& result;
+ // Outputs
+ signal_bool_vector& in1;
+ signal_bool_vector& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector& RESULT,
+ signal_bool_vector& IN1,
+ signal_bool_vector& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/common.h
new file mode 100644
index 000000000..0eb606b60
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/common.h
@@ -0,0 +1,47 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+typedef sc_signal<sc_bv<7> > signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/datawidth.h
new file mode 100644
index 000000000..618250503
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector7& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector7& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/golden/promote.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/golden/promote.log
new file mode 100644
index 000000000..7cecb43ba
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/golden/promote.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+0 + 0 = 0 (0000000)
+0 + 1 = 1 (0000001)
+0 + 2 = 2 (0000010)
+0 + 3 = 3 (0000011)
+0 + 4 = 4 (0000100)
+0 + 5 = 5 (0000101)
+0 + 6 = 6 (0000110)
+0 + 7 = 7 (0000111)
+0 + 8 = 8 (0001000)
+0 + 9 = 9 (0001001)
+0 + 10 = 10 (0001010)
+0 + 11 = 11 (0001011)
+0 + 12 = 12 (0001100)
+0 + 13 = 13 (0001101)
+0 + 14 = 14 (0001110)
+0 + 15 = 15 (0001111)
+0 + 16 = 16 (0010000)
+0 + 17 = 17 (0010001)
+0 + 18 = 18 (0010010)
+0 + 19 = 19 (0010011)
+0 + 20 = 20 (0010100)
+0 + 21 = 21 (0010101)
+0 + 22 = 22 (0010110)
+0 + 23 = 23 (0010111)
+0 + 24 = 24 (0011000)
+0 + 25 = 25 (0011001)
+0 + 26 = 26 (0011010)
+0 + 27 = 27 (0011011)
+0 + 28 = 28 (0011100)
+0 + 29 = 29 (0011101)
+0 + 30 = 30 (0011110)
+0 + 31 = 31 (0011111)
+0 + 32 = 32 (0100000)
+0 + 33 = 33 (0100001)
+0 + 34 = 34 (0100010)
+0 + 35 = 35 (0100011)
+0 + 36 = 36 (0100100)
+0 + 37 = 37 (0100101)
+0 + 38 = 38 (0100110)
+0 + 39 = 39 (0100111)
+0 + 40 = 40 (0101000)
+0 + 41 = 41 (0101001)
+0 + 42 = 42 (0101010)
+0 + 43 = 43 (0101011)
+0 + 44 = 44 (0101100)
+0 + 45 = 45 (0101101)
+0 + 46 = 46 (0101110)
+0 + 47 = 47 (0101111)
+0 + 48 = 48 (0110000)
+0 + 49 = 49 (0110001)
+0 + 50 = 50 (0110010)
+0 + 51 = 51 (0110011)
+0 + 52 = 52 (0110100)
+0 + 53 = 53 (0110101)
+0 + 54 = 54 (0110110)
+0 + 55 = 55 (0110111)
+0 + 56 = 56 (0111000)
+0 + 57 = 57 (0111001)
+0 + 58 = 58 (0111010)
+0 + 59 = 59 (0111011)
+0 + 60 = 60 (0111100)
+0 + 61 = 61 (0111101)
+0 + 62 = 62 (0111110)
+0 + 63 = 63 (0111111)
+1 + 0 = 1 (0000001)
+1 + 1 = 2 (0000010)
+1 + 2 = 3 (0000011)
+1 + 3 = 4 (0000100)
+1 + 4 = 5 (0000101)
+1 + 5 = 6 (0000110)
+1 + 6 = 7 (0000111)
+1 + 7 = 8 (0001000)
+1 + 8 = 9 (0001001)
+1 + 9 = 10 (0001010)
+1 + 10 = 11 (0001011)
+1 + 11 = 12 (0001100)
+1 + 12 = 13 (0001101)
+1 + 13 = 14 (0001110)
+1 + 14 = 15 (0001111)
+1 + 15 = 16 (0010000)
+1 + 16 = 17 (0010001)
+1 + 17 = 18 (0010010)
+1 + 18 = 19 (0010011)
+1 + 19 = 20 (0010100)
+1 + 20 = 21 (0010101)
+1 + 21 = 22 (0010110)
+1 + 22 = 23 (0010111)
+1 + 23 = 24 (0011000)
+1 + 24 = 25 (0011001)
+1 + 25 = 26 (0011010)
+1 + 26 = 27 (0011011)
+1 + 27 = 28 (0011100)
+1 + 28 = 29 (0011101)
+1 + 29 = 30 (0011110)
+1 + 30 = 31 (0011111)
+1 + 31 = 32 (0100000)
+1 + 32 = 33 (0100001)
+1 + 33 = 34 (0100010)
+1 + 34 = 35 (0100011)
+1 + 35 = 36 (0100100)
+1 + 36 = 37 (0100101)
+1 + 37 = 38 (0100110)
+1 + 38 = 39 (0100111)
+1 + 39 = 40 (0101000)
+1 + 40 = 41 (0101001)
+1 + 41 = 42 (0101010)
+1 + 42 = 43 (0101011)
+1 + 43 = 44 (0101100)
+1 + 44 = 45 (0101101)
+1 + 45 = 46 (0101110)
+1 + 46 = 47 (0101111)
+1 + 47 = 48 (0110000)
+1 + 48 = 49 (0110001)
+1 + 49 = 50 (0110010)
+1 + 50 = 51 (0110011)
+1 + 51 = 52 (0110100)
+1 + 52 = 53 (0110101)
+1 + 53 = 54 (0110110)
+1 + 54 = 55 (0110111)
+1 + 55 = 56 (0111000)
+1 + 56 = 57 (0111001)
+1 + 57 = 58 (0111010)
+1 + 58 = 59 (0111011)
+1 + 59 = 60 (0111100)
+1 + 60 = 61 (0111101)
+1 + 61 = 62 (0111110)
+1 + 62 = 63 (0111111)
+1 + 63 = 64 (1000000)
+2 + 0 = 2 (0000010)
+2 + 1 = 3 (0000011)
+2 + 2 = 4 (0000100)
+2 + 3 = 5 (0000101)
+2 + 4 = 6 (0000110)
+2 + 5 = 7 (0000111)
+2 + 6 = 8 (0001000)
+2 + 7 = 9 (0001001)
+2 + 8 = 10 (0001010)
+2 + 9 = 11 (0001011)
+2 + 10 = 12 (0001100)
+2 + 11 = 13 (0001101)
+2 + 12 = 14 (0001110)
+2 + 13 = 15 (0001111)
+2 + 14 = 16 (0010000)
+2 + 15 = 17 (0010001)
+2 + 16 = 18 (0010010)
+2 + 17 = 19 (0010011)
+2 + 18 = 20 (0010100)
+2 + 19 = 21 (0010101)
+2 + 20 = 22 (0010110)
+2 + 21 = 23 (0010111)
+2 + 22 = 24 (0011000)
+2 + 23 = 25 (0011001)
+2 + 24 = 26 (0011010)
+2 + 25 = 27 (0011011)
+2 + 26 = 28 (0011100)
+2 + 27 = 29 (0011101)
+2 + 28 = 30 (0011110)
+2 + 29 = 31 (0011111)
+2 + 30 = 32 (0100000)
+2 + 31 = 33 (0100001)
+2 + 32 = 34 (0100010)
+2 + 33 = 35 (0100011)
+2 + 34 = 36 (0100100)
+2 + 35 = 37 (0100101)
+2 + 36 = 38 (0100110)
+2 + 37 = 39 (0100111)
+2 + 38 = 40 (0101000)
+2 + 39 = 41 (0101001)
+2 + 40 = 42 (0101010)
+2 + 41 = 43 (0101011)
+2 + 42 = 44 (0101100)
+2 + 43 = 45 (0101101)
+2 + 44 = 46 (0101110)
+2 + 45 = 47 (0101111)
+2 + 46 = 48 (0110000)
+2 + 47 = 49 (0110001)
+2 + 48 = 50 (0110010)
+2 + 49 = 51 (0110011)
+2 + 50 = 52 (0110100)
+2 + 51 = 53 (0110101)
+2 + 52 = 54 (0110110)
+2 + 53 = 55 (0110111)
+2 + 54 = 56 (0111000)
+2 + 55 = 57 (0111001)
+2 + 56 = 58 (0111010)
+2 + 57 = 59 (0111011)
+2 + 58 = 60 (0111100)
+2 + 59 = 61 (0111101)
+2 + 60 = 62 (0111110)
+2 + 61 = 63 (0111111)
+2 + 62 = 64 (1000000)
+2 + 63 = 65 (1000001)
+3 + 0 = 3 (0000011)
+3 + 1 = 4 (0000100)
+3 + 2 = 5 (0000101)
+3 + 3 = 6 (0000110)
+3 + 4 = 7 (0000111)
+3 + 5 = 8 (0001000)
+3 + 6 = 9 (0001001)
+3 + 7 = 10 (0001010)
+3 + 8 = 11 (0001011)
+3 + 9 = 12 (0001100)
+3 + 10 = 13 (0001101)
+3 + 11 = 14 (0001110)
+3 + 12 = 15 (0001111)
+3 + 13 = 16 (0010000)
+3 + 14 = 17 (0010001)
+3 + 15 = 18 (0010010)
+3 + 16 = 19 (0010011)
+3 + 17 = 20 (0010100)
+3 + 18 = 21 (0010101)
+3 + 19 = 22 (0010110)
+3 + 20 = 23 (0010111)
+3 + 21 = 24 (0011000)
+3 + 22 = 25 (0011001)
+3 + 23 = 26 (0011010)
+3 + 24 = 27 (0011011)
+3 + 25 = 28 (0011100)
+3 + 26 = 29 (0011101)
+3 + 27 = 30 (0011110)
+3 + 28 = 31 (0011111)
+3 + 29 = 32 (0100000)
+3 + 30 = 33 (0100001)
+3 + 31 = 34 (0100010)
+3 + 32 = 35 (0100011)
+3 + 33 = 36 (0100100)
+3 + 34 = 37 (0100101)
+3 + 35 = 38 (0100110)
+3 + 36 = 39 (0100111)
+3 + 37 = 40 (0101000)
+3 + 38 = 41 (0101001)
+3 + 39 = 42 (0101010)
+3 + 40 = 43 (0101011)
+3 + 41 = 44 (0101100)
+3 + 42 = 45 (0101101)
+3 + 43 = 46 (0101110)
+3 + 44 = 47 (0101111)
+3 + 45 = 48 (0110000)
+3 + 46 = 49 (0110001)
+3 + 47 = 50 (0110010)
+3 + 48 = 51 (0110011)
+3 + 49 = 52 (0110100)
+3 + 50 = 53 (0110101)
+3 + 51 = 54 (0110110)
+3 + 52 = 55 (0110111)
+3 + 53 = 56 (0111000)
+3 + 54 = 57 (0111001)
+3 + 55 = 58 (0111010)
+3 + 56 = 59 (0111011)
+3 + 57 = 60 (0111100)
+3 + 58 = 61 (0111101)
+3 + 59 = 62 (0111110)
+3 + 60 = 63 (0111111)
+3 + 61 = 64 (1000000)
+3 + 62 = 65 (1000001)
+3 + 63 = 66 (1000010)
+4 + 0 = 4 (0000100)
+4 + 1 = 5 (0000101)
+4 + 2 = 6 (0000110)
+4 + 3 = 7 (0000111)
+4 + 4 = 8 (0001000)
+4 + 5 = 9 (0001001)
+4 + 6 = 10 (0001010)
+4 + 7 = 11 (0001011)
+4 + 8 = 12 (0001100)
+4 + 9 = 13 (0001101)
+4 + 10 = 14 (0001110)
+4 + 11 = 15 (0001111)
+4 + 12 = 16 (0010000)
+4 + 13 = 17 (0010001)
+4 + 14 = 18 (0010010)
+4 + 15 = 19 (0010011)
+4 + 16 = 20 (0010100)
+4 + 17 = 21 (0010101)
+4 + 18 = 22 (0010110)
+4 + 19 = 23 (0010111)
+4 + 20 = 24 (0011000)
+4 + 21 = 25 (0011001)
+4 + 22 = 26 (0011010)
+4 + 23 = 27 (0011011)
+4 + 24 = 28 (0011100)
+4 + 25 = 29 (0011101)
+4 + 26 = 30 (0011110)
+4 + 27 = 31 (0011111)
+4 + 28 = 32 (0100000)
+4 + 29 = 33 (0100001)
+4 + 30 = 34 (0100010)
+4 + 31 = 35 (0100011)
+4 + 32 = 36 (0100100)
+4 + 33 = 37 (0100101)
+4 + 34 = 38 (0100110)
+4 + 35 = 39 (0100111)
+4 + 36 = 40 (0101000)
+4 + 37 = 41 (0101001)
+4 + 38 = 42 (0101010)
+4 + 39 = 43 (0101011)
+4 + 40 = 44 (0101100)
+4 + 41 = 45 (0101101)
+4 + 42 = 46 (0101110)
+4 + 43 = 47 (0101111)
+4 + 44 = 48 (0110000)
+4 + 45 = 49 (0110001)
+4 + 46 = 50 (0110010)
+4 + 47 = 51 (0110011)
+4 + 48 = 52 (0110100)
+4 + 49 = 53 (0110101)
+4 + 50 = 54 (0110110)
+4 + 51 = 55 (0110111)
+4 + 52 = 56 (0111000)
+4 + 53 = 57 (0111001)
+4 + 54 = 58 (0111010)
+4 + 55 = 59 (0111011)
+4 + 56 = 60 (0111100)
+4 + 57 = 61 (0111101)
+4 + 58 = 62 (0111110)
+4 + 59 = 63 (0111111)
+4 + 60 = 64 (1000000)
+4 + 61 = 65 (1000001)
+4 + 62 = 66 (1000010)
+4 + 63 = 67 (1000011)
+5 + 0 = 5 (0000101)
+5 + 1 = 6 (0000110)
+5 + 2 = 7 (0000111)
+5 + 3 = 8 (0001000)
+5 + 4 = 9 (0001001)
+5 + 5 = 10 (0001010)
+5 + 6 = 11 (0001011)
+5 + 7 = 12 (0001100)
+5 + 8 = 13 (0001101)
+5 + 9 = 14 (0001110)
+5 + 10 = 15 (0001111)
+5 + 11 = 16 (0010000)
+5 + 12 = 17 (0010001)
+5 + 13 = 18 (0010010)
+5 + 14 = 19 (0010011)
+5 + 15 = 20 (0010100)
+5 + 16 = 21 (0010101)
+5 + 17 = 22 (0010110)
+5 + 18 = 23 (0010111)
+5 + 19 = 24 (0011000)
+5 + 20 = 25 (0011001)
+5 + 21 = 26 (0011010)
+5 + 22 = 27 (0011011)
+5 + 23 = 28 (0011100)
+5 + 24 = 29 (0011101)
+5 + 25 = 30 (0011110)
+5 + 26 = 31 (0011111)
+5 + 27 = 32 (0100000)
+5 + 28 = 33 (0100001)
+5 + 29 = 34 (0100010)
+5 + 30 = 35 (0100011)
+5 + 31 = 36 (0100100)
+5 + 32 = 37 (0100101)
+5 + 33 = 38 (0100110)
+5 + 34 = 39 (0100111)
+5 + 35 = 40 (0101000)
+5 + 36 = 41 (0101001)
+5 + 37 = 42 (0101010)
+5 + 38 = 43 (0101011)
+5 + 39 = 44 (0101100)
+5 + 40 = 45 (0101101)
+5 + 41 = 46 (0101110)
+5 + 42 = 47 (0101111)
+5 + 43 = 48 (0110000)
+5 + 44 = 49 (0110001)
+5 + 45 = 50 (0110010)
+5 + 46 = 51 (0110011)
+5 + 47 = 52 (0110100)
+5 + 48 = 53 (0110101)
+5 + 49 = 54 (0110110)
+5 + 50 = 55 (0110111)
+5 + 51 = 56 (0111000)
+5 + 52 = 57 (0111001)
+5 + 53 = 58 (0111010)
+5 + 54 = 59 (0111011)
+5 + 55 = 60 (0111100)
+5 + 56 = 61 (0111101)
+5 + 57 = 62 (0111110)
+5 + 58 = 63 (0111111)
+5 + 59 = 64 (1000000)
+5 + 60 = 65 (1000001)
+5 + 61 = 66 (1000010)
+5 + 62 = 67 (1000011)
+5 + 63 = 68 (1000100)
+6 + 0 = 6 (0000110)
+6 + 1 = 7 (0000111)
+6 + 2 = 8 (0001000)
+6 + 3 = 9 (0001001)
+6 + 4 = 10 (0001010)
+6 + 5 = 11 (0001011)
+6 + 6 = 12 (0001100)
+6 + 7 = 13 (0001101)
+6 + 8 = 14 (0001110)
+6 + 9 = 15 (0001111)
+6 + 10 = 16 (0010000)
+6 + 11 = 17 (0010001)
+6 + 12 = 18 (0010010)
+6 + 13 = 19 (0010011)
+6 + 14 = 20 (0010100)
+6 + 15 = 21 (0010101)
+6 + 16 = 22 (0010110)
+6 + 17 = 23 (0010111)
+6 + 18 = 24 (0011000)
+6 + 19 = 25 (0011001)
+6 + 20 = 26 (0011010)
+6 + 21 = 27 (0011011)
+6 + 22 = 28 (0011100)
+6 + 23 = 29 (0011101)
+6 + 24 = 30 (0011110)
+6 + 25 = 31 (0011111)
+6 + 26 = 32 (0100000)
+6 + 27 = 33 (0100001)
+6 + 28 = 34 (0100010)
+6 + 29 = 35 (0100011)
+6 + 30 = 36 (0100100)
+6 + 31 = 37 (0100101)
+6 + 32 = 38 (0100110)
+6 + 33 = 39 (0100111)
+6 + 34 = 40 (0101000)
+6 + 35 = 41 (0101001)
+6 + 36 = 42 (0101010)
+6 + 37 = 43 (0101011)
+6 + 38 = 44 (0101100)
+6 + 39 = 45 (0101101)
+6 + 40 = 46 (0101110)
+6 + 41 = 47 (0101111)
+6 + 42 = 48 (0110000)
+6 + 43 = 49 (0110001)
+6 + 44 = 50 (0110010)
+6 + 45 = 51 (0110011)
+6 + 46 = 52 (0110100)
+6 + 47 = 53 (0110101)
+6 + 48 = 54 (0110110)
+6 + 49 = 55 (0110111)
+6 + 50 = 56 (0111000)
+6 + 51 = 57 (0111001)
+6 + 52 = 58 (0111010)
+6 + 53 = 59 (0111011)
+6 + 54 = 60 (0111100)
+6 + 55 = 61 (0111101)
+6 + 56 = 62 (0111110)
+6 + 57 = 63 (0111111)
+6 + 58 = 64 (1000000)
+6 + 59 = 65 (1000001)
+6 + 60 = 66 (1000010)
+6 + 61 = 67 (1000011)
+6 + 62 = 68 (1000100)
+6 + 63 = 69 (1000101)
+7 + 0 = 7 (0000111)
+7 + 1 = 8 (0001000)
+7 + 2 = 9 (0001001)
+7 + 3 = 10 (0001010)
+7 + 4 = 11 (0001011)
+7 + 5 = 12 (0001100)
+7 + 6 = 13 (0001101)
+7 + 7 = 14 (0001110)
+7 + 8 = 15 (0001111)
+7 + 9 = 16 (0010000)
+7 + 10 = 17 (0010001)
+7 + 11 = 18 (0010010)
+7 + 12 = 19 (0010011)
+7 + 13 = 20 (0010100)
+7 + 14 = 21 (0010101)
+7 + 15 = 22 (0010110)
+7 + 16 = 23 (0010111)
+7 + 17 = 24 (0011000)
+7 + 18 = 25 (0011001)
+7 + 19 = 26 (0011010)
+7 + 20 = 27 (0011011)
+7 + 21 = 28 (0011100)
+7 + 22 = 29 (0011101)
+7 + 23 = 30 (0011110)
+7 + 24 = 31 (0011111)
+7 + 25 = 32 (0100000)
+7 + 26 = 33 (0100001)
+7 + 27 = 34 (0100010)
+7 + 28 = 35 (0100011)
+7 + 29 = 36 (0100100)
+7 + 30 = 37 (0100101)
+7 + 31 = 38 (0100110)
+7 + 32 = 39 (0100111)
+7 + 33 = 40 (0101000)
+7 + 34 = 41 (0101001)
+7 + 35 = 42 (0101010)
+7 + 36 = 43 (0101011)
+7 + 37 = 44 (0101100)
+7 + 38 = 45 (0101101)
+7 + 39 = 46 (0101110)
+7 + 40 = 47 (0101111)
+7 + 41 = 48 (0110000)
+7 + 42 = 49 (0110001)
+7 + 43 = 50 (0110010)
+7 + 44 = 51 (0110011)
+7 + 45 = 52 (0110100)
+7 + 46 = 53 (0110101)
+7 + 47 = 54 (0110110)
+7 + 48 = 55 (0110111)
+7 + 49 = 56 (0111000)
+7 + 50 = 57 (0111001)
+7 + 51 = 58 (0111010)
+7 + 52 = 59 (0111011)
+7 + 53 = 60 (0111100)
+7 + 54 = 61 (0111101)
+7 + 55 = 62 (0111110)
+7 + 56 = 63 (0111111)
+7 + 57 = 64 (1000000)
+7 + 58 = 65 (1000001)
+7 + 59 = 66 (1000010)
+7 + 60 = 67 (1000011)
+7 + 61 = 68 (1000100)
+7 + 62 = 69 (1000101)
+7 + 63 = 70 (1000110)
+8 + 0 = 8 (0001000)
+8 + 1 = 9 (0001001)
+8 + 2 = 10 (0001010)
+8 + 3 = 11 (0001011)
+8 + 4 = 12 (0001100)
+8 + 5 = 13 (0001101)
+8 + 6 = 14 (0001110)
+8 + 7 = 15 (0001111)
+8 + 8 = 16 (0010000)
+8 + 9 = 17 (0010001)
+8 + 10 = 18 (0010010)
+8 + 11 = 19 (0010011)
+8 + 12 = 20 (0010100)
+8 + 13 = 21 (0010101)
+8 + 14 = 22 (0010110)
+8 + 15 = 23 (0010111)
+8 + 16 = 24 (0011000)
+8 + 17 = 25 (0011001)
+8 + 18 = 26 (0011010)
+8 + 19 = 27 (0011011)
+8 + 20 = 28 (0011100)
+8 + 21 = 29 (0011101)
+8 + 22 = 30 (0011110)
+8 + 23 = 31 (0011111)
+8 + 24 = 32 (0100000)
+8 + 25 = 33 (0100001)
+8 + 26 = 34 (0100010)
+8 + 27 = 35 (0100011)
+8 + 28 = 36 (0100100)
+8 + 29 = 37 (0100101)
+8 + 30 = 38 (0100110)
+8 + 31 = 39 (0100111)
+8 + 32 = 40 (0101000)
+8 + 33 = 41 (0101001)
+8 + 34 = 42 (0101010)
+8 + 35 = 43 (0101011)
+8 + 36 = 44 (0101100)
+8 + 37 = 45 (0101101)
+8 + 38 = 46 (0101110)
+8 + 39 = 47 (0101111)
+8 + 40 = 48 (0110000)
+8 + 41 = 49 (0110001)
+8 + 42 = 50 (0110010)
+8 + 43 = 51 (0110011)
+8 + 44 = 52 (0110100)
+8 + 45 = 53 (0110101)
+8 + 46 = 54 (0110110)
+8 + 47 = 55 (0110111)
+8 + 48 = 56 (0111000)
+8 + 49 = 57 (0111001)
+8 + 50 = 58 (0111010)
+8 + 51 = 59 (0111011)
+8 + 52 = 60 (0111100)
+8 + 53 = 61 (0111101)
+8 + 54 = 62 (0111110)
+8 + 55 = 63 (0111111)
+8 + 56 = 64 (1000000)
+8 + 57 = 65 (1000001)
+8 + 58 = 66 (1000010)
+8 + 59 = 67 (1000011)
+8 + 60 = 68 (1000100)
+8 + 61 = 69 (1000101)
+8 + 62 = 70 (1000110)
+8 + 63 = 71 (1000111)
+9 + 0 = 9 (0001001)
+9 + 1 = 10 (0001010)
+9 + 2 = 11 (0001011)
+9 + 3 = 12 (0001100)
+9 + 4 = 13 (0001101)
+9 + 5 = 14 (0001110)
+9 + 6 = 15 (0001111)
+9 + 7 = 16 (0010000)
+9 + 8 = 17 (0010001)
+9 + 9 = 18 (0010010)
+9 + 10 = 19 (0010011)
+9 + 11 = 20 (0010100)
+9 + 12 = 21 (0010101)
+9 + 13 = 22 (0010110)
+9 + 14 = 23 (0010111)
+9 + 15 = 24 (0011000)
+9 + 16 = 25 (0011001)
+9 + 17 = 26 (0011010)
+9 + 18 = 27 (0011011)
+9 + 19 = 28 (0011100)
+9 + 20 = 29 (0011101)
+9 + 21 = 30 (0011110)
+9 + 22 = 31 (0011111)
+9 + 23 = 32 (0100000)
+9 + 24 = 33 (0100001)
+9 + 25 = 34 (0100010)
+9 + 26 = 35 (0100011)
+9 + 27 = 36 (0100100)
+9 + 28 = 37 (0100101)
+9 + 29 = 38 (0100110)
+9 + 30 = 39 (0100111)
+9 + 31 = 40 (0101000)
+9 + 32 = 41 (0101001)
+9 + 33 = 42 (0101010)
+9 + 34 = 43 (0101011)
+9 + 35 = 44 (0101100)
+9 + 36 = 45 (0101101)
+9 + 37 = 46 (0101110)
+9 + 38 = 47 (0101111)
+9 + 39 = 48 (0110000)
+9 + 40 = 49 (0110001)
+9 + 41 = 50 (0110010)
+9 + 42 = 51 (0110011)
+9 + 43 = 52 (0110100)
+9 + 44 = 53 (0110101)
+9 + 45 = 54 (0110110)
+9 + 46 = 55 (0110111)
+9 + 47 = 56 (0111000)
+9 + 48 = 57 (0111001)
+9 + 49 = 58 (0111010)
+9 + 50 = 59 (0111011)
+9 + 51 = 60 (0111100)
+9 + 52 = 61 (0111101)
+9 + 53 = 62 (0111110)
+9 + 54 = 63 (0111111)
+9 + 55 = 64 (1000000)
+9 + 56 = 65 (1000001)
+9 + 57 = 66 (1000010)
+9 + 58 = 67 (1000011)
+9 + 59 = 68 (1000100)
+9 + 60 = 69 (1000101)
+9 + 61 = 70 (1000110)
+9 + 62 = 71 (1000111)
+9 + 63 = 72 (1001000)
+10 + 0 = 10 (0001010)
+10 + 1 = 11 (0001011)
+10 + 2 = 12 (0001100)
+10 + 3 = 13 (0001101)
+10 + 4 = 14 (0001110)
+10 + 5 = 15 (0001111)
+10 + 6 = 16 (0010000)
+10 + 7 = 17 (0010001)
+10 + 8 = 18 (0010010)
+10 + 9 = 19 (0010011)
+10 + 10 = 20 (0010100)
+10 + 11 = 21 (0010101)
+10 + 12 = 22 (0010110)
+10 + 13 = 23 (0010111)
+10 + 14 = 24 (0011000)
+10 + 15 = 25 (0011001)
+10 + 16 = 26 (0011010)
+10 + 17 = 27 (0011011)
+10 + 18 = 28 (0011100)
+10 + 19 = 29 (0011101)
+10 + 20 = 30 (0011110)
+10 + 21 = 31 (0011111)
+10 + 22 = 32 (0100000)
+10 + 23 = 33 (0100001)
+10 + 24 = 34 (0100010)
+10 + 25 = 35 (0100011)
+10 + 26 = 36 (0100100)
+10 + 27 = 37 (0100101)
+10 + 28 = 38 (0100110)
+10 + 29 = 39 (0100111)
+10 + 30 = 40 (0101000)
+10 + 31 = 41 (0101001)
+10 + 32 = 42 (0101010)
+10 + 33 = 43 (0101011)
+10 + 34 = 44 (0101100)
+10 + 35 = 45 (0101101)
+10 + 36 = 46 (0101110)
+10 + 37 = 47 (0101111)
+10 + 38 = 48 (0110000)
+10 + 39 = 49 (0110001)
+10 + 40 = 50 (0110010)
+10 + 41 = 51 (0110011)
+10 + 42 = 52 (0110100)
+10 + 43 = 53 (0110101)
+10 + 44 = 54 (0110110)
+10 + 45 = 55 (0110111)
+10 + 46 = 56 (0111000)
+10 + 47 = 57 (0111001)
+10 + 48 = 58 (0111010)
+10 + 49 = 59 (0111011)
+10 + 50 = 60 (0111100)
+10 + 51 = 61 (0111101)
+10 + 52 = 62 (0111110)
+10 + 53 = 63 (0111111)
+10 + 54 = 64 (1000000)
+10 + 55 = 65 (1000001)
+10 + 56 = 66 (1000010)
+10 + 57 = 67 (1000011)
+10 + 58 = 68 (1000100)
+10 + 59 = 69 (1000101)
+10 + 60 = 70 (1000110)
+10 + 61 = 71 (1000111)
+10 + 62 = 72 (1001000)
+10 + 63 = 73 (1001001)
+11 + 0 = 11 (0001011)
+11 + 1 = 12 (0001100)
+11 + 2 = 13 (0001101)
+11 + 3 = 14 (0001110)
+11 + 4 = 15 (0001111)
+11 + 5 = 16 (0010000)
+11 + 6 = 17 (0010001)
+11 + 7 = 18 (0010010)
+11 + 8 = 19 (0010011)
+11 + 9 = 20 (0010100)
+11 + 10 = 21 (0010101)
+11 + 11 = 22 (0010110)
+11 + 12 = 23 (0010111)
+11 + 13 = 24 (0011000)
+11 + 14 = 25 (0011001)
+11 + 15 = 26 (0011010)
+11 + 16 = 27 (0011011)
+11 + 17 = 28 (0011100)
+11 + 18 = 29 (0011101)
+11 + 19 = 30 (0011110)
+11 + 20 = 31 (0011111)
+11 + 21 = 32 (0100000)
+11 + 22 = 33 (0100001)
+11 + 23 = 34 (0100010)
+11 + 24 = 35 (0100011)
+11 + 25 = 36 (0100100)
+11 + 26 = 37 (0100101)
+11 + 27 = 38 (0100110)
+11 + 28 = 39 (0100111)
+11 + 29 = 40 (0101000)
+11 + 30 = 41 (0101001)
+11 + 31 = 42 (0101010)
+11 + 32 = 43 (0101011)
+11 + 33 = 44 (0101100)
+11 + 34 = 45 (0101101)
+11 + 35 = 46 (0101110)
+11 + 36 = 47 (0101111)
+11 + 37 = 48 (0110000)
+11 + 38 = 49 (0110001)
+11 + 39 = 50 (0110010)
+11 + 40 = 51 (0110011)
+11 + 41 = 52 (0110100)
+11 + 42 = 53 (0110101)
+11 + 43 = 54 (0110110)
+11 + 44 = 55 (0110111)
+11 + 45 = 56 (0111000)
+11 + 46 = 57 (0111001)
+11 + 47 = 58 (0111010)
+11 + 48 = 59 (0111011)
+11 + 49 = 60 (0111100)
+11 + 50 = 61 (0111101)
+11 + 51 = 62 (0111110)
+11 + 52 = 63 (0111111)
+11 + 53 = 64 (1000000)
+11 + 54 = 65 (1000001)
+11 + 55 = 66 (1000010)
+11 + 56 = 67 (1000011)
+11 + 57 = 68 (1000100)
+11 + 58 = 69 (1000101)
+11 + 59 = 70 (1000110)
+11 + 60 = 71 (1000111)
+11 + 61 = 72 (1001000)
+11 + 62 = 73 (1001001)
+11 + 63 = 74 (1001010)
+12 + 0 = 12 (0001100)
+12 + 1 = 13 (0001101)
+12 + 2 = 14 (0001110)
+12 + 3 = 15 (0001111)
+12 + 4 = 16 (0010000)
+12 + 5 = 17 (0010001)
+12 + 6 = 18 (0010010)
+12 + 7 = 19 (0010011)
+12 + 8 = 20 (0010100)
+12 + 9 = 21 (0010101)
+12 + 10 = 22 (0010110)
+12 + 11 = 23 (0010111)
+12 + 12 = 24 (0011000)
+12 + 13 = 25 (0011001)
+12 + 14 = 26 (0011010)
+12 + 15 = 27 (0011011)
+12 + 16 = 28 (0011100)
+12 + 17 = 29 (0011101)
+12 + 18 = 30 (0011110)
+12 + 19 = 31 (0011111)
+12 + 20 = 32 (0100000)
+12 + 21 = 33 (0100001)
+12 + 22 = 34 (0100010)
+12 + 23 = 35 (0100011)
+12 + 24 = 36 (0100100)
+12 + 25 = 37 (0100101)
+12 + 26 = 38 (0100110)
+12 + 27 = 39 (0100111)
+12 + 28 = 40 (0101000)
+12 + 29 = 41 (0101001)
+12 + 30 = 42 (0101010)
+12 + 31 = 43 (0101011)
+12 + 32 = 44 (0101100)
+12 + 33 = 45 (0101101)
+12 + 34 = 46 (0101110)
+12 + 35 = 47 (0101111)
+12 + 36 = 48 (0110000)
+12 + 37 = 49 (0110001)
+12 + 38 = 50 (0110010)
+12 + 39 = 51 (0110011)
+12 + 40 = 52 (0110100)
+12 + 41 = 53 (0110101)
+12 + 42 = 54 (0110110)
+12 + 43 = 55 (0110111)
+12 + 44 = 56 (0111000)
+12 + 45 = 57 (0111001)
+12 + 46 = 58 (0111010)
+12 + 47 = 59 (0111011)
+12 + 48 = 60 (0111100)
+12 + 49 = 61 (0111101)
+12 + 50 = 62 (0111110)
+12 + 51 = 63 (0111111)
+12 + 52 = 64 (1000000)
+12 + 53 = 65 (1000001)
+12 + 54 = 66 (1000010)
+12 + 55 = 67 (1000011)
+12 + 56 = 68 (1000100)
+12 + 57 = 69 (1000101)
+12 + 58 = 70 (1000110)
+12 + 59 = 71 (1000111)
+12 + 60 = 72 (1001000)
+12 + 61 = 73 (1001001)
+12 + 62 = 74 (1001010)
+12 + 63 = 75 (1001011)
+13 + 0 = 13 (0001101)
+13 + 1 = 14 (0001110)
+13 + 2 = 15 (0001111)
+13 + 3 = 16 (0010000)
+13 + 4 = 17 (0010001)
+13 + 5 = 18 (0010010)
+13 + 6 = 19 (0010011)
+13 + 7 = 20 (0010100)
+13 + 8 = 21 (0010101)
+13 + 9 = 22 (0010110)
+13 + 10 = 23 (0010111)
+13 + 11 = 24 (0011000)
+13 + 12 = 25 (0011001)
+13 + 13 = 26 (0011010)
+13 + 14 = 27 (0011011)
+13 + 15 = 28 (0011100)
+13 + 16 = 29 (0011101)
+13 + 17 = 30 (0011110)
+13 + 18 = 31 (0011111)
+13 + 19 = 32 (0100000)
+13 + 20 = 33 (0100001)
+13 + 21 = 34 (0100010)
+13 + 22 = 35 (0100011)
+13 + 23 = 36 (0100100)
+13 + 24 = 37 (0100101)
+13 + 25 = 38 (0100110)
+13 + 26 = 39 (0100111)
+13 + 27 = 40 (0101000)
+13 + 28 = 41 (0101001)
+13 + 29 = 42 (0101010)
+13 + 30 = 43 (0101011)
+13 + 31 = 44 (0101100)
+13 + 32 = 45 (0101101)
+13 + 33 = 46 (0101110)
+13 + 34 = 47 (0101111)
+13 + 35 = 48 (0110000)
+13 + 36 = 49 (0110001)
+13 + 37 = 50 (0110010)
+13 + 38 = 51 (0110011)
+13 + 39 = 52 (0110100)
+13 + 40 = 53 (0110101)
+13 + 41 = 54 (0110110)
+13 + 42 = 55 (0110111)
+13 + 43 = 56 (0111000)
+13 + 44 = 57 (0111001)
+13 + 45 = 58 (0111010)
+13 + 46 = 59 (0111011)
+13 + 47 = 60 (0111100)
+13 + 48 = 61 (0111101)
+13 + 49 = 62 (0111110)
+13 + 50 = 63 (0111111)
+13 + 51 = 64 (1000000)
+13 + 52 = 65 (1000001)
+13 + 53 = 66 (1000010)
+13 + 54 = 67 (1000011)
+13 + 55 = 68 (1000100)
+13 + 56 = 69 (1000101)
+13 + 57 = 70 (1000110)
+13 + 58 = 71 (1000111)
+13 + 59 = 72 (1001000)
+13 + 60 = 73 (1001001)
+13 + 61 = 74 (1001010)
+13 + 62 = 75 (1001011)
+13 + 63 = 76 (1001100)
+14 + 0 = 14 (0001110)
+14 + 1 = 15 (0001111)
+14 + 2 = 16 (0010000)
+14 + 3 = 17 (0010001)
+14 + 4 = 18 (0010010)
+14 + 5 = 19 (0010011)
+14 + 6 = 20 (0010100)
+14 + 7 = 21 (0010101)
+14 + 8 = 22 (0010110)
+14 + 9 = 23 (0010111)
+14 + 10 = 24 (0011000)
+14 + 11 = 25 (0011001)
+14 + 12 = 26 (0011010)
+14 + 13 = 27 (0011011)
+14 + 14 = 28 (0011100)
+14 + 15 = 29 (0011101)
+14 + 16 = 30 (0011110)
+14 + 17 = 31 (0011111)
+14 + 18 = 32 (0100000)
+14 + 19 = 33 (0100001)
+14 + 20 = 34 (0100010)
+14 + 21 = 35 (0100011)
+14 + 22 = 36 (0100100)
+14 + 23 = 37 (0100101)
+14 + 24 = 38 (0100110)
+14 + 25 = 39 (0100111)
+14 + 26 = 40 (0101000)
+14 + 27 = 41 (0101001)
+14 + 28 = 42 (0101010)
+14 + 29 = 43 (0101011)
+14 + 30 = 44 (0101100)
+14 + 31 = 45 (0101101)
+14 + 32 = 46 (0101110)
+14 + 33 = 47 (0101111)
+14 + 34 = 48 (0110000)
+14 + 35 = 49 (0110001)
+14 + 36 = 50 (0110010)
+14 + 37 = 51 (0110011)
+14 + 38 = 52 (0110100)
+14 + 39 = 53 (0110101)
+14 + 40 = 54 (0110110)
+14 + 41 = 55 (0110111)
+14 + 42 = 56 (0111000)
+14 + 43 = 57 (0111001)
+14 + 44 = 58 (0111010)
+14 + 45 = 59 (0111011)
+14 + 46 = 60 (0111100)
+14 + 47 = 61 (0111101)
+14 + 48 = 62 (0111110)
+14 + 49 = 63 (0111111)
+14 + 50 = 64 (1000000)
+14 + 51 = 65 (1000001)
+14 + 52 = 66 (1000010)
+14 + 53 = 67 (1000011)
+14 + 54 = 68 (1000100)
+14 + 55 = 69 (1000101)
+14 + 56 = 70 (1000110)
+14 + 57 = 71 (1000111)
+14 + 58 = 72 (1001000)
+14 + 59 = 73 (1001001)
+14 + 60 = 74 (1001010)
+14 + 61 = 75 (1001011)
+14 + 62 = 76 (1001100)
+14 + 63 = 77 (1001101)
+15 + 0 = 15 (0001111)
+15 + 1 = 16 (0010000)
+15 + 2 = 17 (0010001)
+15 + 3 = 18 (0010010)
+15 + 4 = 19 (0010011)
+15 + 5 = 20 (0010100)
+15 + 6 = 21 (0010101)
+15 + 7 = 22 (0010110)
+15 + 8 = 23 (0010111)
+15 + 9 = 24 (0011000)
+15 + 10 = 25 (0011001)
+15 + 11 = 26 (0011010)
+15 + 12 = 27 (0011011)
+15 + 13 = 28 (0011100)
+15 + 14 = 29 (0011101)
+15 + 15 = 30 (0011110)
+15 + 16 = 31 (0011111)
+15 + 17 = 32 (0100000)
+15 + 18 = 33 (0100001)
+15 + 19 = 34 (0100010)
+15 + 20 = 35 (0100011)
+15 + 21 = 36 (0100100)
+15 + 22 = 37 (0100101)
+15 + 23 = 38 (0100110)
+15 + 24 = 39 (0100111)
+15 + 25 = 40 (0101000)
+15 + 26 = 41 (0101001)
+15 + 27 = 42 (0101010)
+15 + 28 = 43 (0101011)
+15 + 29 = 44 (0101100)
+15 + 30 = 45 (0101101)
+15 + 31 = 46 (0101110)
+15 + 32 = 47 (0101111)
+15 + 33 = 48 (0110000)
+15 + 34 = 49 (0110001)
+15 + 35 = 50 (0110010)
+15 + 36 = 51 (0110011)
+15 + 37 = 52 (0110100)
+15 + 38 = 53 (0110101)
+15 + 39 = 54 (0110110)
+15 + 40 = 55 (0110111)
+15 + 41 = 56 (0111000)
+15 + 42 = 57 (0111001)
+15 + 43 = 58 (0111010)
+15 + 44 = 59 (0111011)
+15 + 45 = 60 (0111100)
+15 + 46 = 61 (0111101)
+15 + 47 = 62 (0111110)
+15 + 48 = 63 (0111111)
+15 + 49 = 64 (1000000)
+15 + 50 = 65 (1000001)
+15 + 51 = 66 (1000010)
+15 + 52 = 67 (1000011)
+15 + 53 = 68 (1000100)
+15 + 54 = 69 (1000101)
+15 + 55 = 70 (1000110)
+15 + 56 = 71 (1000111)
+15 + 57 = 72 (1001000)
+15 + 58 = 73 (1001001)
+15 + 59 = 74 (1001010)
+15 + 60 = 75 (1001011)
+15 + 61 = 76 (1001100)
+15 + 62 = 77 (1001101)
+15 + 63 = 78 (1001110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/main.cpp
new file mode 100644
index 000000000..4d28d0a65
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 7-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 7;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/promote.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/promote.f
new file mode 100644
index 000000000..4f270dbe0
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/promote.f
@@ -0,0 +1,3 @@
+promote/datawidth.cpp
+promote/stimgen.cpp
+promote/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/stimgen.h
new file mode 100644
index 000000000..723f5103f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector7& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector7& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/common.h
new file mode 100644
index 000000000..8f3bbf59c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/common.h
@@ -0,0 +1,47 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+typedef sc_signal<sc_bv<9> > signal_bool_vector9;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/datawidth.h
new file mode 100644
index 000000000..284757aeb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector9& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector9& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/golden/promote_extension.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/golden/promote_extension.log
new file mode 100644
index 000000000..8228a1697
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/golden/promote_extension.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+0 + 0 = 0 (000000000)
+0 + 1 = 1 (000000001)
+0 + 2 = 2 (000000010)
+0 + 3 = 3 (000000011)
+0 + 4 = 4 (000000100)
+0 + 5 = 5 (000000101)
+0 + 6 = 6 (000000110)
+0 + 7 = 7 (000000111)
+0 + 8 = 8 (000001000)
+0 + 9 = 9 (000001001)
+0 + 10 = 10 (000001010)
+0 + 11 = 11 (000001011)
+0 + 12 = 12 (000001100)
+0 + 13 = 13 (000001101)
+0 + 14 = 14 (000001110)
+0 + 15 = 15 (000001111)
+0 + 16 = 16 (000010000)
+0 + 17 = 17 (000010001)
+0 + 18 = 18 (000010010)
+0 + 19 = 19 (000010011)
+0 + 20 = 20 (000010100)
+0 + 21 = 21 (000010101)
+0 + 22 = 22 (000010110)
+0 + 23 = 23 (000010111)
+0 + 24 = 24 (000011000)
+0 + 25 = 25 (000011001)
+0 + 26 = 26 (000011010)
+0 + 27 = 27 (000011011)
+0 + 28 = 28 (000011100)
+0 + 29 = 29 (000011101)
+0 + 30 = 30 (000011110)
+0 + 31 = 31 (000011111)
+0 + 32 = 32 (000100000)
+0 + 33 = 33 (000100001)
+0 + 34 = 34 (000100010)
+0 + 35 = 35 (000100011)
+0 + 36 = 36 (000100100)
+0 + 37 = 37 (000100101)
+0 + 38 = 38 (000100110)
+0 + 39 = 39 (000100111)
+0 + 40 = 40 (000101000)
+0 + 41 = 41 (000101001)
+0 + 42 = 42 (000101010)
+0 + 43 = 43 (000101011)
+0 + 44 = 44 (000101100)
+0 + 45 = 45 (000101101)
+0 + 46 = 46 (000101110)
+0 + 47 = 47 (000101111)
+0 + 48 = 48 (000110000)
+0 + 49 = 49 (000110001)
+0 + 50 = 50 (000110010)
+0 + 51 = 51 (000110011)
+0 + 52 = 52 (000110100)
+0 + 53 = 53 (000110101)
+0 + 54 = 54 (000110110)
+0 + 55 = 55 (000110111)
+0 + 56 = 56 (000111000)
+0 + 57 = 57 (000111001)
+0 + 58 = 58 (000111010)
+0 + 59 = 59 (000111011)
+0 + 60 = 60 (000111100)
+0 + 61 = 61 (000111101)
+0 + 62 = 62 (000111110)
+0 + 63 = 63 (000111111)
+1 + 0 = 1 (000000001)
+1 + 1 = 2 (000000010)
+1 + 2 = 3 (000000011)
+1 + 3 = 4 (000000100)
+1 + 4 = 5 (000000101)
+1 + 5 = 6 (000000110)
+1 + 6 = 7 (000000111)
+1 + 7 = 8 (000001000)
+1 + 8 = 9 (000001001)
+1 + 9 = 10 (000001010)
+1 + 10 = 11 (000001011)
+1 + 11 = 12 (000001100)
+1 + 12 = 13 (000001101)
+1 + 13 = 14 (000001110)
+1 + 14 = 15 (000001111)
+1 + 15 = 16 (000010000)
+1 + 16 = 17 (000010001)
+1 + 17 = 18 (000010010)
+1 + 18 = 19 (000010011)
+1 + 19 = 20 (000010100)
+1 + 20 = 21 (000010101)
+1 + 21 = 22 (000010110)
+1 + 22 = 23 (000010111)
+1 + 23 = 24 (000011000)
+1 + 24 = 25 (000011001)
+1 + 25 = 26 (000011010)
+1 + 26 = 27 (000011011)
+1 + 27 = 28 (000011100)
+1 + 28 = 29 (000011101)
+1 + 29 = 30 (000011110)
+1 + 30 = 31 (000011111)
+1 + 31 = 32 (000100000)
+1 + 32 = 33 (000100001)
+1 + 33 = 34 (000100010)
+1 + 34 = 35 (000100011)
+1 + 35 = 36 (000100100)
+1 + 36 = 37 (000100101)
+1 + 37 = 38 (000100110)
+1 + 38 = 39 (000100111)
+1 + 39 = 40 (000101000)
+1 + 40 = 41 (000101001)
+1 + 41 = 42 (000101010)
+1 + 42 = 43 (000101011)
+1 + 43 = 44 (000101100)
+1 + 44 = 45 (000101101)
+1 + 45 = 46 (000101110)
+1 + 46 = 47 (000101111)
+1 + 47 = 48 (000110000)
+1 + 48 = 49 (000110001)
+1 + 49 = 50 (000110010)
+1 + 50 = 51 (000110011)
+1 + 51 = 52 (000110100)
+1 + 52 = 53 (000110101)
+1 + 53 = 54 (000110110)
+1 + 54 = 55 (000110111)
+1 + 55 = 56 (000111000)
+1 + 56 = 57 (000111001)
+1 + 57 = 58 (000111010)
+1 + 58 = 59 (000111011)
+1 + 59 = 60 (000111100)
+1 + 60 = 61 (000111101)
+1 + 61 = 62 (000111110)
+1 + 62 = 63 (000111111)
+1 + 63 = 64 (001000000)
+2 + 0 = 2 (000000010)
+2 + 1 = 3 (000000011)
+2 + 2 = 4 (000000100)
+2 + 3 = 5 (000000101)
+2 + 4 = 6 (000000110)
+2 + 5 = 7 (000000111)
+2 + 6 = 8 (000001000)
+2 + 7 = 9 (000001001)
+2 + 8 = 10 (000001010)
+2 + 9 = 11 (000001011)
+2 + 10 = 12 (000001100)
+2 + 11 = 13 (000001101)
+2 + 12 = 14 (000001110)
+2 + 13 = 15 (000001111)
+2 + 14 = 16 (000010000)
+2 + 15 = 17 (000010001)
+2 + 16 = 18 (000010010)
+2 + 17 = 19 (000010011)
+2 + 18 = 20 (000010100)
+2 + 19 = 21 (000010101)
+2 + 20 = 22 (000010110)
+2 + 21 = 23 (000010111)
+2 + 22 = 24 (000011000)
+2 + 23 = 25 (000011001)
+2 + 24 = 26 (000011010)
+2 + 25 = 27 (000011011)
+2 + 26 = 28 (000011100)
+2 + 27 = 29 (000011101)
+2 + 28 = 30 (000011110)
+2 + 29 = 31 (000011111)
+2 + 30 = 32 (000100000)
+2 + 31 = 33 (000100001)
+2 + 32 = 34 (000100010)
+2 + 33 = 35 (000100011)
+2 + 34 = 36 (000100100)
+2 + 35 = 37 (000100101)
+2 + 36 = 38 (000100110)
+2 + 37 = 39 (000100111)
+2 + 38 = 40 (000101000)
+2 + 39 = 41 (000101001)
+2 + 40 = 42 (000101010)
+2 + 41 = 43 (000101011)
+2 + 42 = 44 (000101100)
+2 + 43 = 45 (000101101)
+2 + 44 = 46 (000101110)
+2 + 45 = 47 (000101111)
+2 + 46 = 48 (000110000)
+2 + 47 = 49 (000110001)
+2 + 48 = 50 (000110010)
+2 + 49 = 51 (000110011)
+2 + 50 = 52 (000110100)
+2 + 51 = 53 (000110101)
+2 + 52 = 54 (000110110)
+2 + 53 = 55 (000110111)
+2 + 54 = 56 (000111000)
+2 + 55 = 57 (000111001)
+2 + 56 = 58 (000111010)
+2 + 57 = 59 (000111011)
+2 + 58 = 60 (000111100)
+2 + 59 = 61 (000111101)
+2 + 60 = 62 (000111110)
+2 + 61 = 63 (000111111)
+2 + 62 = 64 (001000000)
+2 + 63 = 65 (001000001)
+3 + 0 = 3 (000000011)
+3 + 1 = 4 (000000100)
+3 + 2 = 5 (000000101)
+3 + 3 = 6 (000000110)
+3 + 4 = 7 (000000111)
+3 + 5 = 8 (000001000)
+3 + 6 = 9 (000001001)
+3 + 7 = 10 (000001010)
+3 + 8 = 11 (000001011)
+3 + 9 = 12 (000001100)
+3 + 10 = 13 (000001101)
+3 + 11 = 14 (000001110)
+3 + 12 = 15 (000001111)
+3 + 13 = 16 (000010000)
+3 + 14 = 17 (000010001)
+3 + 15 = 18 (000010010)
+3 + 16 = 19 (000010011)
+3 + 17 = 20 (000010100)
+3 + 18 = 21 (000010101)
+3 + 19 = 22 (000010110)
+3 + 20 = 23 (000010111)
+3 + 21 = 24 (000011000)
+3 + 22 = 25 (000011001)
+3 + 23 = 26 (000011010)
+3 + 24 = 27 (000011011)
+3 + 25 = 28 (000011100)
+3 + 26 = 29 (000011101)
+3 + 27 = 30 (000011110)
+3 + 28 = 31 (000011111)
+3 + 29 = 32 (000100000)
+3 + 30 = 33 (000100001)
+3 + 31 = 34 (000100010)
+3 + 32 = 35 (000100011)
+3 + 33 = 36 (000100100)
+3 + 34 = 37 (000100101)
+3 + 35 = 38 (000100110)
+3 + 36 = 39 (000100111)
+3 + 37 = 40 (000101000)
+3 + 38 = 41 (000101001)
+3 + 39 = 42 (000101010)
+3 + 40 = 43 (000101011)
+3 + 41 = 44 (000101100)
+3 + 42 = 45 (000101101)
+3 + 43 = 46 (000101110)
+3 + 44 = 47 (000101111)
+3 + 45 = 48 (000110000)
+3 + 46 = 49 (000110001)
+3 + 47 = 50 (000110010)
+3 + 48 = 51 (000110011)
+3 + 49 = 52 (000110100)
+3 + 50 = 53 (000110101)
+3 + 51 = 54 (000110110)
+3 + 52 = 55 (000110111)
+3 + 53 = 56 (000111000)
+3 + 54 = 57 (000111001)
+3 + 55 = 58 (000111010)
+3 + 56 = 59 (000111011)
+3 + 57 = 60 (000111100)
+3 + 58 = 61 (000111101)
+3 + 59 = 62 (000111110)
+3 + 60 = 63 (000111111)
+3 + 61 = 64 (001000000)
+3 + 62 = 65 (001000001)
+3 + 63 = 66 (001000010)
+4 + 0 = 4 (000000100)
+4 + 1 = 5 (000000101)
+4 + 2 = 6 (000000110)
+4 + 3 = 7 (000000111)
+4 + 4 = 8 (000001000)
+4 + 5 = 9 (000001001)
+4 + 6 = 10 (000001010)
+4 + 7 = 11 (000001011)
+4 + 8 = 12 (000001100)
+4 + 9 = 13 (000001101)
+4 + 10 = 14 (000001110)
+4 + 11 = 15 (000001111)
+4 + 12 = 16 (000010000)
+4 + 13 = 17 (000010001)
+4 + 14 = 18 (000010010)
+4 + 15 = 19 (000010011)
+4 + 16 = 20 (000010100)
+4 + 17 = 21 (000010101)
+4 + 18 = 22 (000010110)
+4 + 19 = 23 (000010111)
+4 + 20 = 24 (000011000)
+4 + 21 = 25 (000011001)
+4 + 22 = 26 (000011010)
+4 + 23 = 27 (000011011)
+4 + 24 = 28 (000011100)
+4 + 25 = 29 (000011101)
+4 + 26 = 30 (000011110)
+4 + 27 = 31 (000011111)
+4 + 28 = 32 (000100000)
+4 + 29 = 33 (000100001)
+4 + 30 = 34 (000100010)
+4 + 31 = 35 (000100011)
+4 + 32 = 36 (000100100)
+4 + 33 = 37 (000100101)
+4 + 34 = 38 (000100110)
+4 + 35 = 39 (000100111)
+4 + 36 = 40 (000101000)
+4 + 37 = 41 (000101001)
+4 + 38 = 42 (000101010)
+4 + 39 = 43 (000101011)
+4 + 40 = 44 (000101100)
+4 + 41 = 45 (000101101)
+4 + 42 = 46 (000101110)
+4 + 43 = 47 (000101111)
+4 + 44 = 48 (000110000)
+4 + 45 = 49 (000110001)
+4 + 46 = 50 (000110010)
+4 + 47 = 51 (000110011)
+4 + 48 = 52 (000110100)
+4 + 49 = 53 (000110101)
+4 + 50 = 54 (000110110)
+4 + 51 = 55 (000110111)
+4 + 52 = 56 (000111000)
+4 + 53 = 57 (000111001)
+4 + 54 = 58 (000111010)
+4 + 55 = 59 (000111011)
+4 + 56 = 60 (000111100)
+4 + 57 = 61 (000111101)
+4 + 58 = 62 (000111110)
+4 + 59 = 63 (000111111)
+4 + 60 = 64 (001000000)
+4 + 61 = 65 (001000001)
+4 + 62 = 66 (001000010)
+4 + 63 = 67 (001000011)
+5 + 0 = 5 (000000101)
+5 + 1 = 6 (000000110)
+5 + 2 = 7 (000000111)
+5 + 3 = 8 (000001000)
+5 + 4 = 9 (000001001)
+5 + 5 = 10 (000001010)
+5 + 6 = 11 (000001011)
+5 + 7 = 12 (000001100)
+5 + 8 = 13 (000001101)
+5 + 9 = 14 (000001110)
+5 + 10 = 15 (000001111)
+5 + 11 = 16 (000010000)
+5 + 12 = 17 (000010001)
+5 + 13 = 18 (000010010)
+5 + 14 = 19 (000010011)
+5 + 15 = 20 (000010100)
+5 + 16 = 21 (000010101)
+5 + 17 = 22 (000010110)
+5 + 18 = 23 (000010111)
+5 + 19 = 24 (000011000)
+5 + 20 = 25 (000011001)
+5 + 21 = 26 (000011010)
+5 + 22 = 27 (000011011)
+5 + 23 = 28 (000011100)
+5 + 24 = 29 (000011101)
+5 + 25 = 30 (000011110)
+5 + 26 = 31 (000011111)
+5 + 27 = 32 (000100000)
+5 + 28 = 33 (000100001)
+5 + 29 = 34 (000100010)
+5 + 30 = 35 (000100011)
+5 + 31 = 36 (000100100)
+5 + 32 = 37 (000100101)
+5 + 33 = 38 (000100110)
+5 + 34 = 39 (000100111)
+5 + 35 = 40 (000101000)
+5 + 36 = 41 (000101001)
+5 + 37 = 42 (000101010)
+5 + 38 = 43 (000101011)
+5 + 39 = 44 (000101100)
+5 + 40 = 45 (000101101)
+5 + 41 = 46 (000101110)
+5 + 42 = 47 (000101111)
+5 + 43 = 48 (000110000)
+5 + 44 = 49 (000110001)
+5 + 45 = 50 (000110010)
+5 + 46 = 51 (000110011)
+5 + 47 = 52 (000110100)
+5 + 48 = 53 (000110101)
+5 + 49 = 54 (000110110)
+5 + 50 = 55 (000110111)
+5 + 51 = 56 (000111000)
+5 + 52 = 57 (000111001)
+5 + 53 = 58 (000111010)
+5 + 54 = 59 (000111011)
+5 + 55 = 60 (000111100)
+5 + 56 = 61 (000111101)
+5 + 57 = 62 (000111110)
+5 + 58 = 63 (000111111)
+5 + 59 = 64 (001000000)
+5 + 60 = 65 (001000001)
+5 + 61 = 66 (001000010)
+5 + 62 = 67 (001000011)
+5 + 63 = 68 (001000100)
+6 + 0 = 6 (000000110)
+6 + 1 = 7 (000000111)
+6 + 2 = 8 (000001000)
+6 + 3 = 9 (000001001)
+6 + 4 = 10 (000001010)
+6 + 5 = 11 (000001011)
+6 + 6 = 12 (000001100)
+6 + 7 = 13 (000001101)
+6 + 8 = 14 (000001110)
+6 + 9 = 15 (000001111)
+6 + 10 = 16 (000010000)
+6 + 11 = 17 (000010001)
+6 + 12 = 18 (000010010)
+6 + 13 = 19 (000010011)
+6 + 14 = 20 (000010100)
+6 + 15 = 21 (000010101)
+6 + 16 = 22 (000010110)
+6 + 17 = 23 (000010111)
+6 + 18 = 24 (000011000)
+6 + 19 = 25 (000011001)
+6 + 20 = 26 (000011010)
+6 + 21 = 27 (000011011)
+6 + 22 = 28 (000011100)
+6 + 23 = 29 (000011101)
+6 + 24 = 30 (000011110)
+6 + 25 = 31 (000011111)
+6 + 26 = 32 (000100000)
+6 + 27 = 33 (000100001)
+6 + 28 = 34 (000100010)
+6 + 29 = 35 (000100011)
+6 + 30 = 36 (000100100)
+6 + 31 = 37 (000100101)
+6 + 32 = 38 (000100110)
+6 + 33 = 39 (000100111)
+6 + 34 = 40 (000101000)
+6 + 35 = 41 (000101001)
+6 + 36 = 42 (000101010)
+6 + 37 = 43 (000101011)
+6 + 38 = 44 (000101100)
+6 + 39 = 45 (000101101)
+6 + 40 = 46 (000101110)
+6 + 41 = 47 (000101111)
+6 + 42 = 48 (000110000)
+6 + 43 = 49 (000110001)
+6 + 44 = 50 (000110010)
+6 + 45 = 51 (000110011)
+6 + 46 = 52 (000110100)
+6 + 47 = 53 (000110101)
+6 + 48 = 54 (000110110)
+6 + 49 = 55 (000110111)
+6 + 50 = 56 (000111000)
+6 + 51 = 57 (000111001)
+6 + 52 = 58 (000111010)
+6 + 53 = 59 (000111011)
+6 + 54 = 60 (000111100)
+6 + 55 = 61 (000111101)
+6 + 56 = 62 (000111110)
+6 + 57 = 63 (000111111)
+6 + 58 = 64 (001000000)
+6 + 59 = 65 (001000001)
+6 + 60 = 66 (001000010)
+6 + 61 = 67 (001000011)
+6 + 62 = 68 (001000100)
+6 + 63 = 69 (001000101)
+7 + 0 = 7 (000000111)
+7 + 1 = 8 (000001000)
+7 + 2 = 9 (000001001)
+7 + 3 = 10 (000001010)
+7 + 4 = 11 (000001011)
+7 + 5 = 12 (000001100)
+7 + 6 = 13 (000001101)
+7 + 7 = 14 (000001110)
+7 + 8 = 15 (000001111)
+7 + 9 = 16 (000010000)
+7 + 10 = 17 (000010001)
+7 + 11 = 18 (000010010)
+7 + 12 = 19 (000010011)
+7 + 13 = 20 (000010100)
+7 + 14 = 21 (000010101)
+7 + 15 = 22 (000010110)
+7 + 16 = 23 (000010111)
+7 + 17 = 24 (000011000)
+7 + 18 = 25 (000011001)
+7 + 19 = 26 (000011010)
+7 + 20 = 27 (000011011)
+7 + 21 = 28 (000011100)
+7 + 22 = 29 (000011101)
+7 + 23 = 30 (000011110)
+7 + 24 = 31 (000011111)
+7 + 25 = 32 (000100000)
+7 + 26 = 33 (000100001)
+7 + 27 = 34 (000100010)
+7 + 28 = 35 (000100011)
+7 + 29 = 36 (000100100)
+7 + 30 = 37 (000100101)
+7 + 31 = 38 (000100110)
+7 + 32 = 39 (000100111)
+7 + 33 = 40 (000101000)
+7 + 34 = 41 (000101001)
+7 + 35 = 42 (000101010)
+7 + 36 = 43 (000101011)
+7 + 37 = 44 (000101100)
+7 + 38 = 45 (000101101)
+7 + 39 = 46 (000101110)
+7 + 40 = 47 (000101111)
+7 + 41 = 48 (000110000)
+7 + 42 = 49 (000110001)
+7 + 43 = 50 (000110010)
+7 + 44 = 51 (000110011)
+7 + 45 = 52 (000110100)
+7 + 46 = 53 (000110101)
+7 + 47 = 54 (000110110)
+7 + 48 = 55 (000110111)
+7 + 49 = 56 (000111000)
+7 + 50 = 57 (000111001)
+7 + 51 = 58 (000111010)
+7 + 52 = 59 (000111011)
+7 + 53 = 60 (000111100)
+7 + 54 = 61 (000111101)
+7 + 55 = 62 (000111110)
+7 + 56 = 63 (000111111)
+7 + 57 = 64 (001000000)
+7 + 58 = 65 (001000001)
+7 + 59 = 66 (001000010)
+7 + 60 = 67 (001000011)
+7 + 61 = 68 (001000100)
+7 + 62 = 69 (001000101)
+7 + 63 = 70 (001000110)
+8 + 0 = 8 (000001000)
+8 + 1 = 9 (000001001)
+8 + 2 = 10 (000001010)
+8 + 3 = 11 (000001011)
+8 + 4 = 12 (000001100)
+8 + 5 = 13 (000001101)
+8 + 6 = 14 (000001110)
+8 + 7 = 15 (000001111)
+8 + 8 = 16 (000010000)
+8 + 9 = 17 (000010001)
+8 + 10 = 18 (000010010)
+8 + 11 = 19 (000010011)
+8 + 12 = 20 (000010100)
+8 + 13 = 21 (000010101)
+8 + 14 = 22 (000010110)
+8 + 15 = 23 (000010111)
+8 + 16 = 24 (000011000)
+8 + 17 = 25 (000011001)
+8 + 18 = 26 (000011010)
+8 + 19 = 27 (000011011)
+8 + 20 = 28 (000011100)
+8 + 21 = 29 (000011101)
+8 + 22 = 30 (000011110)
+8 + 23 = 31 (000011111)
+8 + 24 = 32 (000100000)
+8 + 25 = 33 (000100001)
+8 + 26 = 34 (000100010)
+8 + 27 = 35 (000100011)
+8 + 28 = 36 (000100100)
+8 + 29 = 37 (000100101)
+8 + 30 = 38 (000100110)
+8 + 31 = 39 (000100111)
+8 + 32 = 40 (000101000)
+8 + 33 = 41 (000101001)
+8 + 34 = 42 (000101010)
+8 + 35 = 43 (000101011)
+8 + 36 = 44 (000101100)
+8 + 37 = 45 (000101101)
+8 + 38 = 46 (000101110)
+8 + 39 = 47 (000101111)
+8 + 40 = 48 (000110000)
+8 + 41 = 49 (000110001)
+8 + 42 = 50 (000110010)
+8 + 43 = 51 (000110011)
+8 + 44 = 52 (000110100)
+8 + 45 = 53 (000110101)
+8 + 46 = 54 (000110110)
+8 + 47 = 55 (000110111)
+8 + 48 = 56 (000111000)
+8 + 49 = 57 (000111001)
+8 + 50 = 58 (000111010)
+8 + 51 = 59 (000111011)
+8 + 52 = 60 (000111100)
+8 + 53 = 61 (000111101)
+8 + 54 = 62 (000111110)
+8 + 55 = 63 (000111111)
+8 + 56 = 64 (001000000)
+8 + 57 = 65 (001000001)
+8 + 58 = 66 (001000010)
+8 + 59 = 67 (001000011)
+8 + 60 = 68 (001000100)
+8 + 61 = 69 (001000101)
+8 + 62 = 70 (001000110)
+8 + 63 = 71 (001000111)
+9 + 0 = 9 (000001001)
+9 + 1 = 10 (000001010)
+9 + 2 = 11 (000001011)
+9 + 3 = 12 (000001100)
+9 + 4 = 13 (000001101)
+9 + 5 = 14 (000001110)
+9 + 6 = 15 (000001111)
+9 + 7 = 16 (000010000)
+9 + 8 = 17 (000010001)
+9 + 9 = 18 (000010010)
+9 + 10 = 19 (000010011)
+9 + 11 = 20 (000010100)
+9 + 12 = 21 (000010101)
+9 + 13 = 22 (000010110)
+9 + 14 = 23 (000010111)
+9 + 15 = 24 (000011000)
+9 + 16 = 25 (000011001)
+9 + 17 = 26 (000011010)
+9 + 18 = 27 (000011011)
+9 + 19 = 28 (000011100)
+9 + 20 = 29 (000011101)
+9 + 21 = 30 (000011110)
+9 + 22 = 31 (000011111)
+9 + 23 = 32 (000100000)
+9 + 24 = 33 (000100001)
+9 + 25 = 34 (000100010)
+9 + 26 = 35 (000100011)
+9 + 27 = 36 (000100100)
+9 + 28 = 37 (000100101)
+9 + 29 = 38 (000100110)
+9 + 30 = 39 (000100111)
+9 + 31 = 40 (000101000)
+9 + 32 = 41 (000101001)
+9 + 33 = 42 (000101010)
+9 + 34 = 43 (000101011)
+9 + 35 = 44 (000101100)
+9 + 36 = 45 (000101101)
+9 + 37 = 46 (000101110)
+9 + 38 = 47 (000101111)
+9 + 39 = 48 (000110000)
+9 + 40 = 49 (000110001)
+9 + 41 = 50 (000110010)
+9 + 42 = 51 (000110011)
+9 + 43 = 52 (000110100)
+9 + 44 = 53 (000110101)
+9 + 45 = 54 (000110110)
+9 + 46 = 55 (000110111)
+9 + 47 = 56 (000111000)
+9 + 48 = 57 (000111001)
+9 + 49 = 58 (000111010)
+9 + 50 = 59 (000111011)
+9 + 51 = 60 (000111100)
+9 + 52 = 61 (000111101)
+9 + 53 = 62 (000111110)
+9 + 54 = 63 (000111111)
+9 + 55 = 64 (001000000)
+9 + 56 = 65 (001000001)
+9 + 57 = 66 (001000010)
+9 + 58 = 67 (001000011)
+9 + 59 = 68 (001000100)
+9 + 60 = 69 (001000101)
+9 + 61 = 70 (001000110)
+9 + 62 = 71 (001000111)
+9 + 63 = 72 (001001000)
+10 + 0 = 10 (000001010)
+10 + 1 = 11 (000001011)
+10 + 2 = 12 (000001100)
+10 + 3 = 13 (000001101)
+10 + 4 = 14 (000001110)
+10 + 5 = 15 (000001111)
+10 + 6 = 16 (000010000)
+10 + 7 = 17 (000010001)
+10 + 8 = 18 (000010010)
+10 + 9 = 19 (000010011)
+10 + 10 = 20 (000010100)
+10 + 11 = 21 (000010101)
+10 + 12 = 22 (000010110)
+10 + 13 = 23 (000010111)
+10 + 14 = 24 (000011000)
+10 + 15 = 25 (000011001)
+10 + 16 = 26 (000011010)
+10 + 17 = 27 (000011011)
+10 + 18 = 28 (000011100)
+10 + 19 = 29 (000011101)
+10 + 20 = 30 (000011110)
+10 + 21 = 31 (000011111)
+10 + 22 = 32 (000100000)
+10 + 23 = 33 (000100001)
+10 + 24 = 34 (000100010)
+10 + 25 = 35 (000100011)
+10 + 26 = 36 (000100100)
+10 + 27 = 37 (000100101)
+10 + 28 = 38 (000100110)
+10 + 29 = 39 (000100111)
+10 + 30 = 40 (000101000)
+10 + 31 = 41 (000101001)
+10 + 32 = 42 (000101010)
+10 + 33 = 43 (000101011)
+10 + 34 = 44 (000101100)
+10 + 35 = 45 (000101101)
+10 + 36 = 46 (000101110)
+10 + 37 = 47 (000101111)
+10 + 38 = 48 (000110000)
+10 + 39 = 49 (000110001)
+10 + 40 = 50 (000110010)
+10 + 41 = 51 (000110011)
+10 + 42 = 52 (000110100)
+10 + 43 = 53 (000110101)
+10 + 44 = 54 (000110110)
+10 + 45 = 55 (000110111)
+10 + 46 = 56 (000111000)
+10 + 47 = 57 (000111001)
+10 + 48 = 58 (000111010)
+10 + 49 = 59 (000111011)
+10 + 50 = 60 (000111100)
+10 + 51 = 61 (000111101)
+10 + 52 = 62 (000111110)
+10 + 53 = 63 (000111111)
+10 + 54 = 64 (001000000)
+10 + 55 = 65 (001000001)
+10 + 56 = 66 (001000010)
+10 + 57 = 67 (001000011)
+10 + 58 = 68 (001000100)
+10 + 59 = 69 (001000101)
+10 + 60 = 70 (001000110)
+10 + 61 = 71 (001000111)
+10 + 62 = 72 (001001000)
+10 + 63 = 73 (001001001)
+11 + 0 = 11 (000001011)
+11 + 1 = 12 (000001100)
+11 + 2 = 13 (000001101)
+11 + 3 = 14 (000001110)
+11 + 4 = 15 (000001111)
+11 + 5 = 16 (000010000)
+11 + 6 = 17 (000010001)
+11 + 7 = 18 (000010010)
+11 + 8 = 19 (000010011)
+11 + 9 = 20 (000010100)
+11 + 10 = 21 (000010101)
+11 + 11 = 22 (000010110)
+11 + 12 = 23 (000010111)
+11 + 13 = 24 (000011000)
+11 + 14 = 25 (000011001)
+11 + 15 = 26 (000011010)
+11 + 16 = 27 (000011011)
+11 + 17 = 28 (000011100)
+11 + 18 = 29 (000011101)
+11 + 19 = 30 (000011110)
+11 + 20 = 31 (000011111)
+11 + 21 = 32 (000100000)
+11 + 22 = 33 (000100001)
+11 + 23 = 34 (000100010)
+11 + 24 = 35 (000100011)
+11 + 25 = 36 (000100100)
+11 + 26 = 37 (000100101)
+11 + 27 = 38 (000100110)
+11 + 28 = 39 (000100111)
+11 + 29 = 40 (000101000)
+11 + 30 = 41 (000101001)
+11 + 31 = 42 (000101010)
+11 + 32 = 43 (000101011)
+11 + 33 = 44 (000101100)
+11 + 34 = 45 (000101101)
+11 + 35 = 46 (000101110)
+11 + 36 = 47 (000101111)
+11 + 37 = 48 (000110000)
+11 + 38 = 49 (000110001)
+11 + 39 = 50 (000110010)
+11 + 40 = 51 (000110011)
+11 + 41 = 52 (000110100)
+11 + 42 = 53 (000110101)
+11 + 43 = 54 (000110110)
+11 + 44 = 55 (000110111)
+11 + 45 = 56 (000111000)
+11 + 46 = 57 (000111001)
+11 + 47 = 58 (000111010)
+11 + 48 = 59 (000111011)
+11 + 49 = 60 (000111100)
+11 + 50 = 61 (000111101)
+11 + 51 = 62 (000111110)
+11 + 52 = 63 (000111111)
+11 + 53 = 64 (001000000)
+11 + 54 = 65 (001000001)
+11 + 55 = 66 (001000010)
+11 + 56 = 67 (001000011)
+11 + 57 = 68 (001000100)
+11 + 58 = 69 (001000101)
+11 + 59 = 70 (001000110)
+11 + 60 = 71 (001000111)
+11 + 61 = 72 (001001000)
+11 + 62 = 73 (001001001)
+11 + 63 = 74 (001001010)
+12 + 0 = 12 (000001100)
+12 + 1 = 13 (000001101)
+12 + 2 = 14 (000001110)
+12 + 3 = 15 (000001111)
+12 + 4 = 16 (000010000)
+12 + 5 = 17 (000010001)
+12 + 6 = 18 (000010010)
+12 + 7 = 19 (000010011)
+12 + 8 = 20 (000010100)
+12 + 9 = 21 (000010101)
+12 + 10 = 22 (000010110)
+12 + 11 = 23 (000010111)
+12 + 12 = 24 (000011000)
+12 + 13 = 25 (000011001)
+12 + 14 = 26 (000011010)
+12 + 15 = 27 (000011011)
+12 + 16 = 28 (000011100)
+12 + 17 = 29 (000011101)
+12 + 18 = 30 (000011110)
+12 + 19 = 31 (000011111)
+12 + 20 = 32 (000100000)
+12 + 21 = 33 (000100001)
+12 + 22 = 34 (000100010)
+12 + 23 = 35 (000100011)
+12 + 24 = 36 (000100100)
+12 + 25 = 37 (000100101)
+12 + 26 = 38 (000100110)
+12 + 27 = 39 (000100111)
+12 + 28 = 40 (000101000)
+12 + 29 = 41 (000101001)
+12 + 30 = 42 (000101010)
+12 + 31 = 43 (000101011)
+12 + 32 = 44 (000101100)
+12 + 33 = 45 (000101101)
+12 + 34 = 46 (000101110)
+12 + 35 = 47 (000101111)
+12 + 36 = 48 (000110000)
+12 + 37 = 49 (000110001)
+12 + 38 = 50 (000110010)
+12 + 39 = 51 (000110011)
+12 + 40 = 52 (000110100)
+12 + 41 = 53 (000110101)
+12 + 42 = 54 (000110110)
+12 + 43 = 55 (000110111)
+12 + 44 = 56 (000111000)
+12 + 45 = 57 (000111001)
+12 + 46 = 58 (000111010)
+12 + 47 = 59 (000111011)
+12 + 48 = 60 (000111100)
+12 + 49 = 61 (000111101)
+12 + 50 = 62 (000111110)
+12 + 51 = 63 (000111111)
+12 + 52 = 64 (001000000)
+12 + 53 = 65 (001000001)
+12 + 54 = 66 (001000010)
+12 + 55 = 67 (001000011)
+12 + 56 = 68 (001000100)
+12 + 57 = 69 (001000101)
+12 + 58 = 70 (001000110)
+12 + 59 = 71 (001000111)
+12 + 60 = 72 (001001000)
+12 + 61 = 73 (001001001)
+12 + 62 = 74 (001001010)
+12 + 63 = 75 (001001011)
+13 + 0 = 13 (000001101)
+13 + 1 = 14 (000001110)
+13 + 2 = 15 (000001111)
+13 + 3 = 16 (000010000)
+13 + 4 = 17 (000010001)
+13 + 5 = 18 (000010010)
+13 + 6 = 19 (000010011)
+13 + 7 = 20 (000010100)
+13 + 8 = 21 (000010101)
+13 + 9 = 22 (000010110)
+13 + 10 = 23 (000010111)
+13 + 11 = 24 (000011000)
+13 + 12 = 25 (000011001)
+13 + 13 = 26 (000011010)
+13 + 14 = 27 (000011011)
+13 + 15 = 28 (000011100)
+13 + 16 = 29 (000011101)
+13 + 17 = 30 (000011110)
+13 + 18 = 31 (000011111)
+13 + 19 = 32 (000100000)
+13 + 20 = 33 (000100001)
+13 + 21 = 34 (000100010)
+13 + 22 = 35 (000100011)
+13 + 23 = 36 (000100100)
+13 + 24 = 37 (000100101)
+13 + 25 = 38 (000100110)
+13 + 26 = 39 (000100111)
+13 + 27 = 40 (000101000)
+13 + 28 = 41 (000101001)
+13 + 29 = 42 (000101010)
+13 + 30 = 43 (000101011)
+13 + 31 = 44 (000101100)
+13 + 32 = 45 (000101101)
+13 + 33 = 46 (000101110)
+13 + 34 = 47 (000101111)
+13 + 35 = 48 (000110000)
+13 + 36 = 49 (000110001)
+13 + 37 = 50 (000110010)
+13 + 38 = 51 (000110011)
+13 + 39 = 52 (000110100)
+13 + 40 = 53 (000110101)
+13 + 41 = 54 (000110110)
+13 + 42 = 55 (000110111)
+13 + 43 = 56 (000111000)
+13 + 44 = 57 (000111001)
+13 + 45 = 58 (000111010)
+13 + 46 = 59 (000111011)
+13 + 47 = 60 (000111100)
+13 + 48 = 61 (000111101)
+13 + 49 = 62 (000111110)
+13 + 50 = 63 (000111111)
+13 + 51 = 64 (001000000)
+13 + 52 = 65 (001000001)
+13 + 53 = 66 (001000010)
+13 + 54 = 67 (001000011)
+13 + 55 = 68 (001000100)
+13 + 56 = 69 (001000101)
+13 + 57 = 70 (001000110)
+13 + 58 = 71 (001000111)
+13 + 59 = 72 (001001000)
+13 + 60 = 73 (001001001)
+13 + 61 = 74 (001001010)
+13 + 62 = 75 (001001011)
+13 + 63 = 76 (001001100)
+14 + 0 = 14 (000001110)
+14 + 1 = 15 (000001111)
+14 + 2 = 16 (000010000)
+14 + 3 = 17 (000010001)
+14 + 4 = 18 (000010010)
+14 + 5 = 19 (000010011)
+14 + 6 = 20 (000010100)
+14 + 7 = 21 (000010101)
+14 + 8 = 22 (000010110)
+14 + 9 = 23 (000010111)
+14 + 10 = 24 (000011000)
+14 + 11 = 25 (000011001)
+14 + 12 = 26 (000011010)
+14 + 13 = 27 (000011011)
+14 + 14 = 28 (000011100)
+14 + 15 = 29 (000011101)
+14 + 16 = 30 (000011110)
+14 + 17 = 31 (000011111)
+14 + 18 = 32 (000100000)
+14 + 19 = 33 (000100001)
+14 + 20 = 34 (000100010)
+14 + 21 = 35 (000100011)
+14 + 22 = 36 (000100100)
+14 + 23 = 37 (000100101)
+14 + 24 = 38 (000100110)
+14 + 25 = 39 (000100111)
+14 + 26 = 40 (000101000)
+14 + 27 = 41 (000101001)
+14 + 28 = 42 (000101010)
+14 + 29 = 43 (000101011)
+14 + 30 = 44 (000101100)
+14 + 31 = 45 (000101101)
+14 + 32 = 46 (000101110)
+14 + 33 = 47 (000101111)
+14 + 34 = 48 (000110000)
+14 + 35 = 49 (000110001)
+14 + 36 = 50 (000110010)
+14 + 37 = 51 (000110011)
+14 + 38 = 52 (000110100)
+14 + 39 = 53 (000110101)
+14 + 40 = 54 (000110110)
+14 + 41 = 55 (000110111)
+14 + 42 = 56 (000111000)
+14 + 43 = 57 (000111001)
+14 + 44 = 58 (000111010)
+14 + 45 = 59 (000111011)
+14 + 46 = 60 (000111100)
+14 + 47 = 61 (000111101)
+14 + 48 = 62 (000111110)
+14 + 49 = 63 (000111111)
+14 + 50 = 64 (001000000)
+14 + 51 = 65 (001000001)
+14 + 52 = 66 (001000010)
+14 + 53 = 67 (001000011)
+14 + 54 = 68 (001000100)
+14 + 55 = 69 (001000101)
+14 + 56 = 70 (001000110)
+14 + 57 = 71 (001000111)
+14 + 58 = 72 (001001000)
+14 + 59 = 73 (001001001)
+14 + 60 = 74 (001001010)
+14 + 61 = 75 (001001011)
+14 + 62 = 76 (001001100)
+14 + 63 = 77 (001001101)
+15 + 0 = 15 (000001111)
+15 + 1 = 16 (000010000)
+15 + 2 = 17 (000010001)
+15 + 3 = 18 (000010010)
+15 + 4 = 19 (000010011)
+15 + 5 = 20 (000010100)
+15 + 6 = 21 (000010101)
+15 + 7 = 22 (000010110)
+15 + 8 = 23 (000010111)
+15 + 9 = 24 (000011000)
+15 + 10 = 25 (000011001)
+15 + 11 = 26 (000011010)
+15 + 12 = 27 (000011011)
+15 + 13 = 28 (000011100)
+15 + 14 = 29 (000011101)
+15 + 15 = 30 (000011110)
+15 + 16 = 31 (000011111)
+15 + 17 = 32 (000100000)
+15 + 18 = 33 (000100001)
+15 + 19 = 34 (000100010)
+15 + 20 = 35 (000100011)
+15 + 21 = 36 (000100100)
+15 + 22 = 37 (000100101)
+15 + 23 = 38 (000100110)
+15 + 24 = 39 (000100111)
+15 + 25 = 40 (000101000)
+15 + 26 = 41 (000101001)
+15 + 27 = 42 (000101010)
+15 + 28 = 43 (000101011)
+15 + 29 = 44 (000101100)
+15 + 30 = 45 (000101101)
+15 + 31 = 46 (000101110)
+15 + 32 = 47 (000101111)
+15 + 33 = 48 (000110000)
+15 + 34 = 49 (000110001)
+15 + 35 = 50 (000110010)
+15 + 36 = 51 (000110011)
+15 + 37 = 52 (000110100)
+15 + 38 = 53 (000110101)
+15 + 39 = 54 (000110110)
+15 + 40 = 55 (000110111)
+15 + 41 = 56 (000111000)
+15 + 42 = 57 (000111001)
+15 + 43 = 58 (000111010)
+15 + 44 = 59 (000111011)
+15 + 45 = 60 (000111100)
+15 + 46 = 61 (000111101)
+15 + 47 = 62 (000111110)
+15 + 48 = 63 (000111111)
+15 + 49 = 64 (001000000)
+15 + 50 = 65 (001000001)
+15 + 51 = 66 (001000010)
+15 + 52 = 67 (001000011)
+15 + 53 = 68 (001000100)
+15 + 54 = 69 (001000101)
+15 + 55 = 70 (001000110)
+15 + 56 = 71 (001000111)
+15 + 57 = 72 (001001000)
+15 + 58 = 73 (001001001)
+15 + 59 = 74 (001001010)
+15 + 60 = 75 (001001011)
+15 + 61 = 76 (001001100)
+15 + 62 = 77 (001001101)
+15 + 63 = 78 (001001110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/main.cpp
new file mode 100644
index 000000000..c9f564ac6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 9-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 9;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector9 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/promote_extension.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/promote_extension.f
new file mode 100644
index 000000000..3c46f3738
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/promote_extension.f
@@ -0,0 +1,3 @@
+promote_extension/datawidth.cpp
+promote_extension/stimgen.cpp
+promote_extension/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/stimgen.h
new file mode 100644
index 000000000..1c35e4175
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_extension/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector9& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector9& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/common.h
new file mode 100644
index 000000000..2e2569230
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/datawidth.h
new file mode 100644
index 000000000..6adbfd87b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector6& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector6& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/golden/promote_lost_carry.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/golden/promote_lost_carry.log
new file mode 100644
index 000000000..eb9189493
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/golden/promote_lost_carry.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+0 + 0 = 0 (000000)
+0 + 1 = 1 (000001)
+0 + 2 = 2 (000010)
+0 + 3 = 3 (000011)
+0 + 4 = 4 (000100)
+0 + 5 = 5 (000101)
+0 + 6 = 6 (000110)
+0 + 7 = 7 (000111)
+0 + 8 = 8 (001000)
+0 + 9 = 9 (001001)
+0 + 10 = 10 (001010)
+0 + 11 = 11 (001011)
+0 + 12 = 12 (001100)
+0 + 13 = 13 (001101)
+0 + 14 = 14 (001110)
+0 + 15 = 15 (001111)
+0 + 16 = 16 (010000)
+0 + 17 = 17 (010001)
+0 + 18 = 18 (010010)
+0 + 19 = 19 (010011)
+0 + 20 = 20 (010100)
+0 + 21 = 21 (010101)
+0 + 22 = 22 (010110)
+0 + 23 = 23 (010111)
+0 + 24 = 24 (011000)
+0 + 25 = 25 (011001)
+0 + 26 = 26 (011010)
+0 + 27 = 27 (011011)
+0 + 28 = 28 (011100)
+0 + 29 = 29 (011101)
+0 + 30 = 30 (011110)
+0 + 31 = 31 (011111)
+0 + 32 = 32 (100000)
+0 + 33 = 33 (100001)
+0 + 34 = 34 (100010)
+0 + 35 = 35 (100011)
+0 + 36 = 36 (100100)
+0 + 37 = 37 (100101)
+0 + 38 = 38 (100110)
+0 + 39 = 39 (100111)
+0 + 40 = 40 (101000)
+0 + 41 = 41 (101001)
+0 + 42 = 42 (101010)
+0 + 43 = 43 (101011)
+0 + 44 = 44 (101100)
+0 + 45 = 45 (101101)
+0 + 46 = 46 (101110)
+0 + 47 = 47 (101111)
+0 + 48 = 48 (110000)
+0 + 49 = 49 (110001)
+0 + 50 = 50 (110010)
+0 + 51 = 51 (110011)
+0 + 52 = 52 (110100)
+0 + 53 = 53 (110101)
+0 + 54 = 54 (110110)
+0 + 55 = 55 (110111)
+0 + 56 = 56 (111000)
+0 + 57 = 57 (111001)
+0 + 58 = 58 (111010)
+0 + 59 = 59 (111011)
+0 + 60 = 60 (111100)
+0 + 61 = 61 (111101)
+0 + 62 = 62 (111110)
+0 + 63 = 63 (111111)
+1 + 0 = 1 (000001)
+1 + 1 = 2 (000010)
+1 + 2 = 3 (000011)
+1 + 3 = 4 (000100)
+1 + 4 = 5 (000101)
+1 + 5 = 6 (000110)
+1 + 6 = 7 (000111)
+1 + 7 = 8 (001000)
+1 + 8 = 9 (001001)
+1 + 9 = 10 (001010)
+1 + 10 = 11 (001011)
+1 + 11 = 12 (001100)
+1 + 12 = 13 (001101)
+1 + 13 = 14 (001110)
+1 + 14 = 15 (001111)
+1 + 15 = 16 (010000)
+1 + 16 = 17 (010001)
+1 + 17 = 18 (010010)
+1 + 18 = 19 (010011)
+1 + 19 = 20 (010100)
+1 + 20 = 21 (010101)
+1 + 21 = 22 (010110)
+1 + 22 = 23 (010111)
+1 + 23 = 24 (011000)
+1 + 24 = 25 (011001)
+1 + 25 = 26 (011010)
+1 + 26 = 27 (011011)
+1 + 27 = 28 (011100)
+1 + 28 = 29 (011101)
+1 + 29 = 30 (011110)
+1 + 30 = 31 (011111)
+1 + 31 = 32 (100000)
+1 + 32 = 33 (100001)
+1 + 33 = 34 (100010)
+1 + 34 = 35 (100011)
+1 + 35 = 36 (100100)
+1 + 36 = 37 (100101)
+1 + 37 = 38 (100110)
+1 + 38 = 39 (100111)
+1 + 39 = 40 (101000)
+1 + 40 = 41 (101001)
+1 + 41 = 42 (101010)
+1 + 42 = 43 (101011)
+1 + 43 = 44 (101100)
+1 + 44 = 45 (101101)
+1 + 45 = 46 (101110)
+1 + 46 = 47 (101111)
+1 + 47 = 48 (110000)
+1 + 48 = 49 (110001)
+1 + 49 = 50 (110010)
+1 + 50 = 51 (110011)
+1 + 51 = 52 (110100)
+1 + 52 = 53 (110101)
+1 + 53 = 54 (110110)
+1 + 54 = 55 (110111)
+1 + 55 = 56 (111000)
+1 + 56 = 57 (111001)
+1 + 57 = 58 (111010)
+1 + 58 = 59 (111011)
+1 + 59 = 60 (111100)
+1 + 60 = 61 (111101)
+1 + 61 = 62 (111110)
+1 + 62 = 63 (111111)
+1 + 63 = 0 (000000)
+2 + 0 = 2 (000010)
+2 + 1 = 3 (000011)
+2 + 2 = 4 (000100)
+2 + 3 = 5 (000101)
+2 + 4 = 6 (000110)
+2 + 5 = 7 (000111)
+2 + 6 = 8 (001000)
+2 + 7 = 9 (001001)
+2 + 8 = 10 (001010)
+2 + 9 = 11 (001011)
+2 + 10 = 12 (001100)
+2 + 11 = 13 (001101)
+2 + 12 = 14 (001110)
+2 + 13 = 15 (001111)
+2 + 14 = 16 (010000)
+2 + 15 = 17 (010001)
+2 + 16 = 18 (010010)
+2 + 17 = 19 (010011)
+2 + 18 = 20 (010100)
+2 + 19 = 21 (010101)
+2 + 20 = 22 (010110)
+2 + 21 = 23 (010111)
+2 + 22 = 24 (011000)
+2 + 23 = 25 (011001)
+2 + 24 = 26 (011010)
+2 + 25 = 27 (011011)
+2 + 26 = 28 (011100)
+2 + 27 = 29 (011101)
+2 + 28 = 30 (011110)
+2 + 29 = 31 (011111)
+2 + 30 = 32 (100000)
+2 + 31 = 33 (100001)
+2 + 32 = 34 (100010)
+2 + 33 = 35 (100011)
+2 + 34 = 36 (100100)
+2 + 35 = 37 (100101)
+2 + 36 = 38 (100110)
+2 + 37 = 39 (100111)
+2 + 38 = 40 (101000)
+2 + 39 = 41 (101001)
+2 + 40 = 42 (101010)
+2 + 41 = 43 (101011)
+2 + 42 = 44 (101100)
+2 + 43 = 45 (101101)
+2 + 44 = 46 (101110)
+2 + 45 = 47 (101111)
+2 + 46 = 48 (110000)
+2 + 47 = 49 (110001)
+2 + 48 = 50 (110010)
+2 + 49 = 51 (110011)
+2 + 50 = 52 (110100)
+2 + 51 = 53 (110101)
+2 + 52 = 54 (110110)
+2 + 53 = 55 (110111)
+2 + 54 = 56 (111000)
+2 + 55 = 57 (111001)
+2 + 56 = 58 (111010)
+2 + 57 = 59 (111011)
+2 + 58 = 60 (111100)
+2 + 59 = 61 (111101)
+2 + 60 = 62 (111110)
+2 + 61 = 63 (111111)
+2 + 62 = 0 (000000)
+2 + 63 = 1 (000001)
+3 + 0 = 3 (000011)
+3 + 1 = 4 (000100)
+3 + 2 = 5 (000101)
+3 + 3 = 6 (000110)
+3 + 4 = 7 (000111)
+3 + 5 = 8 (001000)
+3 + 6 = 9 (001001)
+3 + 7 = 10 (001010)
+3 + 8 = 11 (001011)
+3 + 9 = 12 (001100)
+3 + 10 = 13 (001101)
+3 + 11 = 14 (001110)
+3 + 12 = 15 (001111)
+3 + 13 = 16 (010000)
+3 + 14 = 17 (010001)
+3 + 15 = 18 (010010)
+3 + 16 = 19 (010011)
+3 + 17 = 20 (010100)
+3 + 18 = 21 (010101)
+3 + 19 = 22 (010110)
+3 + 20 = 23 (010111)
+3 + 21 = 24 (011000)
+3 + 22 = 25 (011001)
+3 + 23 = 26 (011010)
+3 + 24 = 27 (011011)
+3 + 25 = 28 (011100)
+3 + 26 = 29 (011101)
+3 + 27 = 30 (011110)
+3 + 28 = 31 (011111)
+3 + 29 = 32 (100000)
+3 + 30 = 33 (100001)
+3 + 31 = 34 (100010)
+3 + 32 = 35 (100011)
+3 + 33 = 36 (100100)
+3 + 34 = 37 (100101)
+3 + 35 = 38 (100110)
+3 + 36 = 39 (100111)
+3 + 37 = 40 (101000)
+3 + 38 = 41 (101001)
+3 + 39 = 42 (101010)
+3 + 40 = 43 (101011)
+3 + 41 = 44 (101100)
+3 + 42 = 45 (101101)
+3 + 43 = 46 (101110)
+3 + 44 = 47 (101111)
+3 + 45 = 48 (110000)
+3 + 46 = 49 (110001)
+3 + 47 = 50 (110010)
+3 + 48 = 51 (110011)
+3 + 49 = 52 (110100)
+3 + 50 = 53 (110101)
+3 + 51 = 54 (110110)
+3 + 52 = 55 (110111)
+3 + 53 = 56 (111000)
+3 + 54 = 57 (111001)
+3 + 55 = 58 (111010)
+3 + 56 = 59 (111011)
+3 + 57 = 60 (111100)
+3 + 58 = 61 (111101)
+3 + 59 = 62 (111110)
+3 + 60 = 63 (111111)
+3 + 61 = 0 (000000)
+3 + 62 = 1 (000001)
+3 + 63 = 2 (000010)
+4 + 0 = 4 (000100)
+4 + 1 = 5 (000101)
+4 + 2 = 6 (000110)
+4 + 3 = 7 (000111)
+4 + 4 = 8 (001000)
+4 + 5 = 9 (001001)
+4 + 6 = 10 (001010)
+4 + 7 = 11 (001011)
+4 + 8 = 12 (001100)
+4 + 9 = 13 (001101)
+4 + 10 = 14 (001110)
+4 + 11 = 15 (001111)
+4 + 12 = 16 (010000)
+4 + 13 = 17 (010001)
+4 + 14 = 18 (010010)
+4 + 15 = 19 (010011)
+4 + 16 = 20 (010100)
+4 + 17 = 21 (010101)
+4 + 18 = 22 (010110)
+4 + 19 = 23 (010111)
+4 + 20 = 24 (011000)
+4 + 21 = 25 (011001)
+4 + 22 = 26 (011010)
+4 + 23 = 27 (011011)
+4 + 24 = 28 (011100)
+4 + 25 = 29 (011101)
+4 + 26 = 30 (011110)
+4 + 27 = 31 (011111)
+4 + 28 = 32 (100000)
+4 + 29 = 33 (100001)
+4 + 30 = 34 (100010)
+4 + 31 = 35 (100011)
+4 + 32 = 36 (100100)
+4 + 33 = 37 (100101)
+4 + 34 = 38 (100110)
+4 + 35 = 39 (100111)
+4 + 36 = 40 (101000)
+4 + 37 = 41 (101001)
+4 + 38 = 42 (101010)
+4 + 39 = 43 (101011)
+4 + 40 = 44 (101100)
+4 + 41 = 45 (101101)
+4 + 42 = 46 (101110)
+4 + 43 = 47 (101111)
+4 + 44 = 48 (110000)
+4 + 45 = 49 (110001)
+4 + 46 = 50 (110010)
+4 + 47 = 51 (110011)
+4 + 48 = 52 (110100)
+4 + 49 = 53 (110101)
+4 + 50 = 54 (110110)
+4 + 51 = 55 (110111)
+4 + 52 = 56 (111000)
+4 + 53 = 57 (111001)
+4 + 54 = 58 (111010)
+4 + 55 = 59 (111011)
+4 + 56 = 60 (111100)
+4 + 57 = 61 (111101)
+4 + 58 = 62 (111110)
+4 + 59 = 63 (111111)
+4 + 60 = 0 (000000)
+4 + 61 = 1 (000001)
+4 + 62 = 2 (000010)
+4 + 63 = 3 (000011)
+5 + 0 = 5 (000101)
+5 + 1 = 6 (000110)
+5 + 2 = 7 (000111)
+5 + 3 = 8 (001000)
+5 + 4 = 9 (001001)
+5 + 5 = 10 (001010)
+5 + 6 = 11 (001011)
+5 + 7 = 12 (001100)
+5 + 8 = 13 (001101)
+5 + 9 = 14 (001110)
+5 + 10 = 15 (001111)
+5 + 11 = 16 (010000)
+5 + 12 = 17 (010001)
+5 + 13 = 18 (010010)
+5 + 14 = 19 (010011)
+5 + 15 = 20 (010100)
+5 + 16 = 21 (010101)
+5 + 17 = 22 (010110)
+5 + 18 = 23 (010111)
+5 + 19 = 24 (011000)
+5 + 20 = 25 (011001)
+5 + 21 = 26 (011010)
+5 + 22 = 27 (011011)
+5 + 23 = 28 (011100)
+5 + 24 = 29 (011101)
+5 + 25 = 30 (011110)
+5 + 26 = 31 (011111)
+5 + 27 = 32 (100000)
+5 + 28 = 33 (100001)
+5 + 29 = 34 (100010)
+5 + 30 = 35 (100011)
+5 + 31 = 36 (100100)
+5 + 32 = 37 (100101)
+5 + 33 = 38 (100110)
+5 + 34 = 39 (100111)
+5 + 35 = 40 (101000)
+5 + 36 = 41 (101001)
+5 + 37 = 42 (101010)
+5 + 38 = 43 (101011)
+5 + 39 = 44 (101100)
+5 + 40 = 45 (101101)
+5 + 41 = 46 (101110)
+5 + 42 = 47 (101111)
+5 + 43 = 48 (110000)
+5 + 44 = 49 (110001)
+5 + 45 = 50 (110010)
+5 + 46 = 51 (110011)
+5 + 47 = 52 (110100)
+5 + 48 = 53 (110101)
+5 + 49 = 54 (110110)
+5 + 50 = 55 (110111)
+5 + 51 = 56 (111000)
+5 + 52 = 57 (111001)
+5 + 53 = 58 (111010)
+5 + 54 = 59 (111011)
+5 + 55 = 60 (111100)
+5 + 56 = 61 (111101)
+5 + 57 = 62 (111110)
+5 + 58 = 63 (111111)
+5 + 59 = 0 (000000)
+5 + 60 = 1 (000001)
+5 + 61 = 2 (000010)
+5 + 62 = 3 (000011)
+5 + 63 = 4 (000100)
+6 + 0 = 6 (000110)
+6 + 1 = 7 (000111)
+6 + 2 = 8 (001000)
+6 + 3 = 9 (001001)
+6 + 4 = 10 (001010)
+6 + 5 = 11 (001011)
+6 + 6 = 12 (001100)
+6 + 7 = 13 (001101)
+6 + 8 = 14 (001110)
+6 + 9 = 15 (001111)
+6 + 10 = 16 (010000)
+6 + 11 = 17 (010001)
+6 + 12 = 18 (010010)
+6 + 13 = 19 (010011)
+6 + 14 = 20 (010100)
+6 + 15 = 21 (010101)
+6 + 16 = 22 (010110)
+6 + 17 = 23 (010111)
+6 + 18 = 24 (011000)
+6 + 19 = 25 (011001)
+6 + 20 = 26 (011010)
+6 + 21 = 27 (011011)
+6 + 22 = 28 (011100)
+6 + 23 = 29 (011101)
+6 + 24 = 30 (011110)
+6 + 25 = 31 (011111)
+6 + 26 = 32 (100000)
+6 + 27 = 33 (100001)
+6 + 28 = 34 (100010)
+6 + 29 = 35 (100011)
+6 + 30 = 36 (100100)
+6 + 31 = 37 (100101)
+6 + 32 = 38 (100110)
+6 + 33 = 39 (100111)
+6 + 34 = 40 (101000)
+6 + 35 = 41 (101001)
+6 + 36 = 42 (101010)
+6 + 37 = 43 (101011)
+6 + 38 = 44 (101100)
+6 + 39 = 45 (101101)
+6 + 40 = 46 (101110)
+6 + 41 = 47 (101111)
+6 + 42 = 48 (110000)
+6 + 43 = 49 (110001)
+6 + 44 = 50 (110010)
+6 + 45 = 51 (110011)
+6 + 46 = 52 (110100)
+6 + 47 = 53 (110101)
+6 + 48 = 54 (110110)
+6 + 49 = 55 (110111)
+6 + 50 = 56 (111000)
+6 + 51 = 57 (111001)
+6 + 52 = 58 (111010)
+6 + 53 = 59 (111011)
+6 + 54 = 60 (111100)
+6 + 55 = 61 (111101)
+6 + 56 = 62 (111110)
+6 + 57 = 63 (111111)
+6 + 58 = 0 (000000)
+6 + 59 = 1 (000001)
+6 + 60 = 2 (000010)
+6 + 61 = 3 (000011)
+6 + 62 = 4 (000100)
+6 + 63 = 5 (000101)
+7 + 0 = 7 (000111)
+7 + 1 = 8 (001000)
+7 + 2 = 9 (001001)
+7 + 3 = 10 (001010)
+7 + 4 = 11 (001011)
+7 + 5 = 12 (001100)
+7 + 6 = 13 (001101)
+7 + 7 = 14 (001110)
+7 + 8 = 15 (001111)
+7 + 9 = 16 (010000)
+7 + 10 = 17 (010001)
+7 + 11 = 18 (010010)
+7 + 12 = 19 (010011)
+7 + 13 = 20 (010100)
+7 + 14 = 21 (010101)
+7 + 15 = 22 (010110)
+7 + 16 = 23 (010111)
+7 + 17 = 24 (011000)
+7 + 18 = 25 (011001)
+7 + 19 = 26 (011010)
+7 + 20 = 27 (011011)
+7 + 21 = 28 (011100)
+7 + 22 = 29 (011101)
+7 + 23 = 30 (011110)
+7 + 24 = 31 (011111)
+7 + 25 = 32 (100000)
+7 + 26 = 33 (100001)
+7 + 27 = 34 (100010)
+7 + 28 = 35 (100011)
+7 + 29 = 36 (100100)
+7 + 30 = 37 (100101)
+7 + 31 = 38 (100110)
+7 + 32 = 39 (100111)
+7 + 33 = 40 (101000)
+7 + 34 = 41 (101001)
+7 + 35 = 42 (101010)
+7 + 36 = 43 (101011)
+7 + 37 = 44 (101100)
+7 + 38 = 45 (101101)
+7 + 39 = 46 (101110)
+7 + 40 = 47 (101111)
+7 + 41 = 48 (110000)
+7 + 42 = 49 (110001)
+7 + 43 = 50 (110010)
+7 + 44 = 51 (110011)
+7 + 45 = 52 (110100)
+7 + 46 = 53 (110101)
+7 + 47 = 54 (110110)
+7 + 48 = 55 (110111)
+7 + 49 = 56 (111000)
+7 + 50 = 57 (111001)
+7 + 51 = 58 (111010)
+7 + 52 = 59 (111011)
+7 + 53 = 60 (111100)
+7 + 54 = 61 (111101)
+7 + 55 = 62 (111110)
+7 + 56 = 63 (111111)
+7 + 57 = 0 (000000)
+7 + 58 = 1 (000001)
+7 + 59 = 2 (000010)
+7 + 60 = 3 (000011)
+7 + 61 = 4 (000100)
+7 + 62 = 5 (000101)
+7 + 63 = 6 (000110)
+8 + 0 = 8 (001000)
+8 + 1 = 9 (001001)
+8 + 2 = 10 (001010)
+8 + 3 = 11 (001011)
+8 + 4 = 12 (001100)
+8 + 5 = 13 (001101)
+8 + 6 = 14 (001110)
+8 + 7 = 15 (001111)
+8 + 8 = 16 (010000)
+8 + 9 = 17 (010001)
+8 + 10 = 18 (010010)
+8 + 11 = 19 (010011)
+8 + 12 = 20 (010100)
+8 + 13 = 21 (010101)
+8 + 14 = 22 (010110)
+8 + 15 = 23 (010111)
+8 + 16 = 24 (011000)
+8 + 17 = 25 (011001)
+8 + 18 = 26 (011010)
+8 + 19 = 27 (011011)
+8 + 20 = 28 (011100)
+8 + 21 = 29 (011101)
+8 + 22 = 30 (011110)
+8 + 23 = 31 (011111)
+8 + 24 = 32 (100000)
+8 + 25 = 33 (100001)
+8 + 26 = 34 (100010)
+8 + 27 = 35 (100011)
+8 + 28 = 36 (100100)
+8 + 29 = 37 (100101)
+8 + 30 = 38 (100110)
+8 + 31 = 39 (100111)
+8 + 32 = 40 (101000)
+8 + 33 = 41 (101001)
+8 + 34 = 42 (101010)
+8 + 35 = 43 (101011)
+8 + 36 = 44 (101100)
+8 + 37 = 45 (101101)
+8 + 38 = 46 (101110)
+8 + 39 = 47 (101111)
+8 + 40 = 48 (110000)
+8 + 41 = 49 (110001)
+8 + 42 = 50 (110010)
+8 + 43 = 51 (110011)
+8 + 44 = 52 (110100)
+8 + 45 = 53 (110101)
+8 + 46 = 54 (110110)
+8 + 47 = 55 (110111)
+8 + 48 = 56 (111000)
+8 + 49 = 57 (111001)
+8 + 50 = 58 (111010)
+8 + 51 = 59 (111011)
+8 + 52 = 60 (111100)
+8 + 53 = 61 (111101)
+8 + 54 = 62 (111110)
+8 + 55 = 63 (111111)
+8 + 56 = 0 (000000)
+8 + 57 = 1 (000001)
+8 + 58 = 2 (000010)
+8 + 59 = 3 (000011)
+8 + 60 = 4 (000100)
+8 + 61 = 5 (000101)
+8 + 62 = 6 (000110)
+8 + 63 = 7 (000111)
+9 + 0 = 9 (001001)
+9 + 1 = 10 (001010)
+9 + 2 = 11 (001011)
+9 + 3 = 12 (001100)
+9 + 4 = 13 (001101)
+9 + 5 = 14 (001110)
+9 + 6 = 15 (001111)
+9 + 7 = 16 (010000)
+9 + 8 = 17 (010001)
+9 + 9 = 18 (010010)
+9 + 10 = 19 (010011)
+9 + 11 = 20 (010100)
+9 + 12 = 21 (010101)
+9 + 13 = 22 (010110)
+9 + 14 = 23 (010111)
+9 + 15 = 24 (011000)
+9 + 16 = 25 (011001)
+9 + 17 = 26 (011010)
+9 + 18 = 27 (011011)
+9 + 19 = 28 (011100)
+9 + 20 = 29 (011101)
+9 + 21 = 30 (011110)
+9 + 22 = 31 (011111)
+9 + 23 = 32 (100000)
+9 + 24 = 33 (100001)
+9 + 25 = 34 (100010)
+9 + 26 = 35 (100011)
+9 + 27 = 36 (100100)
+9 + 28 = 37 (100101)
+9 + 29 = 38 (100110)
+9 + 30 = 39 (100111)
+9 + 31 = 40 (101000)
+9 + 32 = 41 (101001)
+9 + 33 = 42 (101010)
+9 + 34 = 43 (101011)
+9 + 35 = 44 (101100)
+9 + 36 = 45 (101101)
+9 + 37 = 46 (101110)
+9 + 38 = 47 (101111)
+9 + 39 = 48 (110000)
+9 + 40 = 49 (110001)
+9 + 41 = 50 (110010)
+9 + 42 = 51 (110011)
+9 + 43 = 52 (110100)
+9 + 44 = 53 (110101)
+9 + 45 = 54 (110110)
+9 + 46 = 55 (110111)
+9 + 47 = 56 (111000)
+9 + 48 = 57 (111001)
+9 + 49 = 58 (111010)
+9 + 50 = 59 (111011)
+9 + 51 = 60 (111100)
+9 + 52 = 61 (111101)
+9 + 53 = 62 (111110)
+9 + 54 = 63 (111111)
+9 + 55 = 0 (000000)
+9 + 56 = 1 (000001)
+9 + 57 = 2 (000010)
+9 + 58 = 3 (000011)
+9 + 59 = 4 (000100)
+9 + 60 = 5 (000101)
+9 + 61 = 6 (000110)
+9 + 62 = 7 (000111)
+9 + 63 = 8 (001000)
+10 + 0 = 10 (001010)
+10 + 1 = 11 (001011)
+10 + 2 = 12 (001100)
+10 + 3 = 13 (001101)
+10 + 4 = 14 (001110)
+10 + 5 = 15 (001111)
+10 + 6 = 16 (010000)
+10 + 7 = 17 (010001)
+10 + 8 = 18 (010010)
+10 + 9 = 19 (010011)
+10 + 10 = 20 (010100)
+10 + 11 = 21 (010101)
+10 + 12 = 22 (010110)
+10 + 13 = 23 (010111)
+10 + 14 = 24 (011000)
+10 + 15 = 25 (011001)
+10 + 16 = 26 (011010)
+10 + 17 = 27 (011011)
+10 + 18 = 28 (011100)
+10 + 19 = 29 (011101)
+10 + 20 = 30 (011110)
+10 + 21 = 31 (011111)
+10 + 22 = 32 (100000)
+10 + 23 = 33 (100001)
+10 + 24 = 34 (100010)
+10 + 25 = 35 (100011)
+10 + 26 = 36 (100100)
+10 + 27 = 37 (100101)
+10 + 28 = 38 (100110)
+10 + 29 = 39 (100111)
+10 + 30 = 40 (101000)
+10 + 31 = 41 (101001)
+10 + 32 = 42 (101010)
+10 + 33 = 43 (101011)
+10 + 34 = 44 (101100)
+10 + 35 = 45 (101101)
+10 + 36 = 46 (101110)
+10 + 37 = 47 (101111)
+10 + 38 = 48 (110000)
+10 + 39 = 49 (110001)
+10 + 40 = 50 (110010)
+10 + 41 = 51 (110011)
+10 + 42 = 52 (110100)
+10 + 43 = 53 (110101)
+10 + 44 = 54 (110110)
+10 + 45 = 55 (110111)
+10 + 46 = 56 (111000)
+10 + 47 = 57 (111001)
+10 + 48 = 58 (111010)
+10 + 49 = 59 (111011)
+10 + 50 = 60 (111100)
+10 + 51 = 61 (111101)
+10 + 52 = 62 (111110)
+10 + 53 = 63 (111111)
+10 + 54 = 0 (000000)
+10 + 55 = 1 (000001)
+10 + 56 = 2 (000010)
+10 + 57 = 3 (000011)
+10 + 58 = 4 (000100)
+10 + 59 = 5 (000101)
+10 + 60 = 6 (000110)
+10 + 61 = 7 (000111)
+10 + 62 = 8 (001000)
+10 + 63 = 9 (001001)
+11 + 0 = 11 (001011)
+11 + 1 = 12 (001100)
+11 + 2 = 13 (001101)
+11 + 3 = 14 (001110)
+11 + 4 = 15 (001111)
+11 + 5 = 16 (010000)
+11 + 6 = 17 (010001)
+11 + 7 = 18 (010010)
+11 + 8 = 19 (010011)
+11 + 9 = 20 (010100)
+11 + 10 = 21 (010101)
+11 + 11 = 22 (010110)
+11 + 12 = 23 (010111)
+11 + 13 = 24 (011000)
+11 + 14 = 25 (011001)
+11 + 15 = 26 (011010)
+11 + 16 = 27 (011011)
+11 + 17 = 28 (011100)
+11 + 18 = 29 (011101)
+11 + 19 = 30 (011110)
+11 + 20 = 31 (011111)
+11 + 21 = 32 (100000)
+11 + 22 = 33 (100001)
+11 + 23 = 34 (100010)
+11 + 24 = 35 (100011)
+11 + 25 = 36 (100100)
+11 + 26 = 37 (100101)
+11 + 27 = 38 (100110)
+11 + 28 = 39 (100111)
+11 + 29 = 40 (101000)
+11 + 30 = 41 (101001)
+11 + 31 = 42 (101010)
+11 + 32 = 43 (101011)
+11 + 33 = 44 (101100)
+11 + 34 = 45 (101101)
+11 + 35 = 46 (101110)
+11 + 36 = 47 (101111)
+11 + 37 = 48 (110000)
+11 + 38 = 49 (110001)
+11 + 39 = 50 (110010)
+11 + 40 = 51 (110011)
+11 + 41 = 52 (110100)
+11 + 42 = 53 (110101)
+11 + 43 = 54 (110110)
+11 + 44 = 55 (110111)
+11 + 45 = 56 (111000)
+11 + 46 = 57 (111001)
+11 + 47 = 58 (111010)
+11 + 48 = 59 (111011)
+11 + 49 = 60 (111100)
+11 + 50 = 61 (111101)
+11 + 51 = 62 (111110)
+11 + 52 = 63 (111111)
+11 + 53 = 0 (000000)
+11 + 54 = 1 (000001)
+11 + 55 = 2 (000010)
+11 + 56 = 3 (000011)
+11 + 57 = 4 (000100)
+11 + 58 = 5 (000101)
+11 + 59 = 6 (000110)
+11 + 60 = 7 (000111)
+11 + 61 = 8 (001000)
+11 + 62 = 9 (001001)
+11 + 63 = 10 (001010)
+12 + 0 = 12 (001100)
+12 + 1 = 13 (001101)
+12 + 2 = 14 (001110)
+12 + 3 = 15 (001111)
+12 + 4 = 16 (010000)
+12 + 5 = 17 (010001)
+12 + 6 = 18 (010010)
+12 + 7 = 19 (010011)
+12 + 8 = 20 (010100)
+12 + 9 = 21 (010101)
+12 + 10 = 22 (010110)
+12 + 11 = 23 (010111)
+12 + 12 = 24 (011000)
+12 + 13 = 25 (011001)
+12 + 14 = 26 (011010)
+12 + 15 = 27 (011011)
+12 + 16 = 28 (011100)
+12 + 17 = 29 (011101)
+12 + 18 = 30 (011110)
+12 + 19 = 31 (011111)
+12 + 20 = 32 (100000)
+12 + 21 = 33 (100001)
+12 + 22 = 34 (100010)
+12 + 23 = 35 (100011)
+12 + 24 = 36 (100100)
+12 + 25 = 37 (100101)
+12 + 26 = 38 (100110)
+12 + 27 = 39 (100111)
+12 + 28 = 40 (101000)
+12 + 29 = 41 (101001)
+12 + 30 = 42 (101010)
+12 + 31 = 43 (101011)
+12 + 32 = 44 (101100)
+12 + 33 = 45 (101101)
+12 + 34 = 46 (101110)
+12 + 35 = 47 (101111)
+12 + 36 = 48 (110000)
+12 + 37 = 49 (110001)
+12 + 38 = 50 (110010)
+12 + 39 = 51 (110011)
+12 + 40 = 52 (110100)
+12 + 41 = 53 (110101)
+12 + 42 = 54 (110110)
+12 + 43 = 55 (110111)
+12 + 44 = 56 (111000)
+12 + 45 = 57 (111001)
+12 + 46 = 58 (111010)
+12 + 47 = 59 (111011)
+12 + 48 = 60 (111100)
+12 + 49 = 61 (111101)
+12 + 50 = 62 (111110)
+12 + 51 = 63 (111111)
+12 + 52 = 0 (000000)
+12 + 53 = 1 (000001)
+12 + 54 = 2 (000010)
+12 + 55 = 3 (000011)
+12 + 56 = 4 (000100)
+12 + 57 = 5 (000101)
+12 + 58 = 6 (000110)
+12 + 59 = 7 (000111)
+12 + 60 = 8 (001000)
+12 + 61 = 9 (001001)
+12 + 62 = 10 (001010)
+12 + 63 = 11 (001011)
+13 + 0 = 13 (001101)
+13 + 1 = 14 (001110)
+13 + 2 = 15 (001111)
+13 + 3 = 16 (010000)
+13 + 4 = 17 (010001)
+13 + 5 = 18 (010010)
+13 + 6 = 19 (010011)
+13 + 7 = 20 (010100)
+13 + 8 = 21 (010101)
+13 + 9 = 22 (010110)
+13 + 10 = 23 (010111)
+13 + 11 = 24 (011000)
+13 + 12 = 25 (011001)
+13 + 13 = 26 (011010)
+13 + 14 = 27 (011011)
+13 + 15 = 28 (011100)
+13 + 16 = 29 (011101)
+13 + 17 = 30 (011110)
+13 + 18 = 31 (011111)
+13 + 19 = 32 (100000)
+13 + 20 = 33 (100001)
+13 + 21 = 34 (100010)
+13 + 22 = 35 (100011)
+13 + 23 = 36 (100100)
+13 + 24 = 37 (100101)
+13 + 25 = 38 (100110)
+13 + 26 = 39 (100111)
+13 + 27 = 40 (101000)
+13 + 28 = 41 (101001)
+13 + 29 = 42 (101010)
+13 + 30 = 43 (101011)
+13 + 31 = 44 (101100)
+13 + 32 = 45 (101101)
+13 + 33 = 46 (101110)
+13 + 34 = 47 (101111)
+13 + 35 = 48 (110000)
+13 + 36 = 49 (110001)
+13 + 37 = 50 (110010)
+13 + 38 = 51 (110011)
+13 + 39 = 52 (110100)
+13 + 40 = 53 (110101)
+13 + 41 = 54 (110110)
+13 + 42 = 55 (110111)
+13 + 43 = 56 (111000)
+13 + 44 = 57 (111001)
+13 + 45 = 58 (111010)
+13 + 46 = 59 (111011)
+13 + 47 = 60 (111100)
+13 + 48 = 61 (111101)
+13 + 49 = 62 (111110)
+13 + 50 = 63 (111111)
+13 + 51 = 0 (000000)
+13 + 52 = 1 (000001)
+13 + 53 = 2 (000010)
+13 + 54 = 3 (000011)
+13 + 55 = 4 (000100)
+13 + 56 = 5 (000101)
+13 + 57 = 6 (000110)
+13 + 58 = 7 (000111)
+13 + 59 = 8 (001000)
+13 + 60 = 9 (001001)
+13 + 61 = 10 (001010)
+13 + 62 = 11 (001011)
+13 + 63 = 12 (001100)
+14 + 0 = 14 (001110)
+14 + 1 = 15 (001111)
+14 + 2 = 16 (010000)
+14 + 3 = 17 (010001)
+14 + 4 = 18 (010010)
+14 + 5 = 19 (010011)
+14 + 6 = 20 (010100)
+14 + 7 = 21 (010101)
+14 + 8 = 22 (010110)
+14 + 9 = 23 (010111)
+14 + 10 = 24 (011000)
+14 + 11 = 25 (011001)
+14 + 12 = 26 (011010)
+14 + 13 = 27 (011011)
+14 + 14 = 28 (011100)
+14 + 15 = 29 (011101)
+14 + 16 = 30 (011110)
+14 + 17 = 31 (011111)
+14 + 18 = 32 (100000)
+14 + 19 = 33 (100001)
+14 + 20 = 34 (100010)
+14 + 21 = 35 (100011)
+14 + 22 = 36 (100100)
+14 + 23 = 37 (100101)
+14 + 24 = 38 (100110)
+14 + 25 = 39 (100111)
+14 + 26 = 40 (101000)
+14 + 27 = 41 (101001)
+14 + 28 = 42 (101010)
+14 + 29 = 43 (101011)
+14 + 30 = 44 (101100)
+14 + 31 = 45 (101101)
+14 + 32 = 46 (101110)
+14 + 33 = 47 (101111)
+14 + 34 = 48 (110000)
+14 + 35 = 49 (110001)
+14 + 36 = 50 (110010)
+14 + 37 = 51 (110011)
+14 + 38 = 52 (110100)
+14 + 39 = 53 (110101)
+14 + 40 = 54 (110110)
+14 + 41 = 55 (110111)
+14 + 42 = 56 (111000)
+14 + 43 = 57 (111001)
+14 + 44 = 58 (111010)
+14 + 45 = 59 (111011)
+14 + 46 = 60 (111100)
+14 + 47 = 61 (111101)
+14 + 48 = 62 (111110)
+14 + 49 = 63 (111111)
+14 + 50 = 0 (000000)
+14 + 51 = 1 (000001)
+14 + 52 = 2 (000010)
+14 + 53 = 3 (000011)
+14 + 54 = 4 (000100)
+14 + 55 = 5 (000101)
+14 + 56 = 6 (000110)
+14 + 57 = 7 (000111)
+14 + 58 = 8 (001000)
+14 + 59 = 9 (001001)
+14 + 60 = 10 (001010)
+14 + 61 = 11 (001011)
+14 + 62 = 12 (001100)
+14 + 63 = 13 (001101)
+15 + 0 = 15 (001111)
+15 + 1 = 16 (010000)
+15 + 2 = 17 (010001)
+15 + 3 = 18 (010010)
+15 + 4 = 19 (010011)
+15 + 5 = 20 (010100)
+15 + 6 = 21 (010101)
+15 + 7 = 22 (010110)
+15 + 8 = 23 (010111)
+15 + 9 = 24 (011000)
+15 + 10 = 25 (011001)
+15 + 11 = 26 (011010)
+15 + 12 = 27 (011011)
+15 + 13 = 28 (011100)
+15 + 14 = 29 (011101)
+15 + 15 = 30 (011110)
+15 + 16 = 31 (011111)
+15 + 17 = 32 (100000)
+15 + 18 = 33 (100001)
+15 + 19 = 34 (100010)
+15 + 20 = 35 (100011)
+15 + 21 = 36 (100100)
+15 + 22 = 37 (100101)
+15 + 23 = 38 (100110)
+15 + 24 = 39 (100111)
+15 + 25 = 40 (101000)
+15 + 26 = 41 (101001)
+15 + 27 = 42 (101010)
+15 + 28 = 43 (101011)
+15 + 29 = 44 (101100)
+15 + 30 = 45 (101101)
+15 + 31 = 46 (101110)
+15 + 32 = 47 (101111)
+15 + 33 = 48 (110000)
+15 + 34 = 49 (110001)
+15 + 35 = 50 (110010)
+15 + 36 = 51 (110011)
+15 + 37 = 52 (110100)
+15 + 38 = 53 (110101)
+15 + 39 = 54 (110110)
+15 + 40 = 55 (110111)
+15 + 41 = 56 (111000)
+15 + 42 = 57 (111001)
+15 + 43 = 58 (111010)
+15 + 44 = 59 (111011)
+15 + 45 = 60 (111100)
+15 + 46 = 61 (111101)
+15 + 47 = 62 (111110)
+15 + 48 = 63 (111111)
+15 + 49 = 0 (000000)
+15 + 50 = 1 (000001)
+15 + 51 = 2 (000010)
+15 + 52 = 3 (000011)
+15 + 53 = 4 (000100)
+15 + 54 = 5 (000101)
+15 + 55 = 6 (000110)
+15 + 56 = 7 (000111)
+15 + 57 = 8 (001000)
+15 + 58 = 9 (001001)
+15 + 59 = 10 (001010)
+15 + 60 = 11 (001011)
+15 + 61 = 12 (001100)
+15 + 62 = 13 (001101)
+15 + 63 = 14 (001110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/main.cpp
new file mode 100644
index 000000000..3f06a6d6c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 6-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 6;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector6 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/promote_lost_carry.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/promote_lost_carry.f
new file mode 100644
index 000000000..052991cee
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/promote_lost_carry.f
@@ -0,0 +1,3 @@
+promote_lost_carry/datawidth.cpp
+promote_lost_carry/stimgen.cpp
+promote_lost_carry/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/stimgen.h
new file mode 100644
index 000000000..e2675e0b4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_lost_carry/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/common.h
new file mode 100644
index 000000000..2e2569230
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/datawidth.h
new file mode 100644
index 000000000..12f04c9be
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector4& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector4& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/golden/promote_truncation.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/golden/promote_truncation.log
new file mode 100644
index 000000000..5088bd680
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/golden/promote_truncation.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/main.cpp
new file mode 100644
index 000000000..657543508
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 4-bit bool = 4-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 4;
+ int in1_size = 4;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector4 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector4 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/promote_truncation.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/promote_truncation.f
new file mode 100644
index 000000000..90b689aca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/promote_truncation.f
@@ -0,0 +1,3 @@
+promote_truncation/datawidth.cpp
+promote_truncation/stimgen.cpp
+promote_truncation/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/stimgen.h
new file mode 100644
index 000000000..959122edf
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/promote_truncation/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& result;
+ // Outputs
+ signal_bool_vector4& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& RESULT,
+ signal_bool_vector4& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/common.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/common.h
new file mode 100644
index 000000000..2e2569230
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_signal<sc_bv<4> > signal_bool_vector4;
+typedef sc_signal<sc_bv<6> > signal_bool_vector6;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/datawidth.cpp
new file mode 100644
index 000000000..f5df52dd6
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ sc_unsigned tmp_a (in1_width);
+ sc_unsigned tmp_b (in2_width);
+ sc_unsigned tmp_result (result_width);
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/datawidth.h
new file mode 100644
index 000000000..98681b45a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/datawidth.h
@@ -0,0 +1,87 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector6& in1;
+ const signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector4& result;
+ // Parameters
+ const int in1_width;
+ const int in2_width;
+ const int result_width;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector6& IN1,
+ const signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ signal_bool_vector4& RESULT,
+ const int IN1_WIDTH,
+ const int IN2_WIDTH,
+ const int RESULT_WIDTH )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT),
+ in1_width (IN1_WIDTH),
+ in2_width (IN2_WIDTH),
+ result_width (RESULT_WIDTH)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/golden/truncation.log b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/golden/truncation.log
new file mode 100644
index 000000000..5a235015a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/golden/truncation.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0 (0000)
+0 + 1 = 1 (0001)
+0 + 2 = 2 (0010)
+0 + 3 = 3 (0011)
+0 + 4 = 4 (0100)
+0 + 5 = 5 (0101)
+0 + 6 = 6 (0110)
+0 + 7 = 7 (0111)
+0 + 8 = 8 (1000)
+0 + 9 = 9 (1001)
+0 + 10 = 10 (1010)
+0 + 11 = 11 (1011)
+0 + 12 = 12 (1100)
+0 + 13 = 13 (1101)
+0 + 14 = 14 (1110)
+0 + 15 = 15 (1111)
+0 + 16 = 0 (0000)
+0 + 17 = 1 (0001)
+0 + 18 = 2 (0010)
+0 + 19 = 3 (0011)
+0 + 20 = 4 (0100)
+0 + 21 = 5 (0101)
+0 + 22 = 6 (0110)
+0 + 23 = 7 (0111)
+0 + 24 = 8 (1000)
+0 + 25 = 9 (1001)
+0 + 26 = 10 (1010)
+0 + 27 = 11 (1011)
+0 + 28 = 12 (1100)
+0 + 29 = 13 (1101)
+0 + 30 = 14 (1110)
+0 + 31 = 15 (1111)
+0 + 32 = 0 (0000)
+0 + 33 = 1 (0001)
+0 + 34 = 2 (0010)
+0 + 35 = 3 (0011)
+0 + 36 = 4 (0100)
+0 + 37 = 5 (0101)
+0 + 38 = 6 (0110)
+0 + 39 = 7 (0111)
+0 + 40 = 8 (1000)
+0 + 41 = 9 (1001)
+0 + 42 = 10 (1010)
+0 + 43 = 11 (1011)
+0 + 44 = 12 (1100)
+0 + 45 = 13 (1101)
+0 + 46 = 14 (1110)
+0 + 47 = 15 (1111)
+0 + 48 = 0 (0000)
+0 + 49 = 1 (0001)
+0 + 50 = 2 (0010)
+0 + 51 = 3 (0011)
+0 + 52 = 4 (0100)
+0 + 53 = 5 (0101)
+0 + 54 = 6 (0110)
+0 + 55 = 7 (0111)
+0 + 56 = 8 (1000)
+0 + 57 = 9 (1001)
+0 + 58 = 10 (1010)
+0 + 59 = 11 (1011)
+0 + 60 = 12 (1100)
+0 + 61 = 13 (1101)
+0 + 62 = 14 (1110)
+0 + 63 = 15 (1111)
+1 + 0 = 1 (0001)
+1 + 1 = 2 (0010)
+1 + 2 = 3 (0011)
+1 + 3 = 4 (0100)
+1 + 4 = 5 (0101)
+1 + 5 = 6 (0110)
+1 + 6 = 7 (0111)
+1 + 7 = 8 (1000)
+1 + 8 = 9 (1001)
+1 + 9 = 10 (1010)
+1 + 10 = 11 (1011)
+1 + 11 = 12 (1100)
+1 + 12 = 13 (1101)
+1 + 13 = 14 (1110)
+1 + 14 = 15 (1111)
+1 + 15 = 0 (0000)
+1 + 16 = 1 (0001)
+1 + 17 = 2 (0010)
+1 + 18 = 3 (0011)
+1 + 19 = 4 (0100)
+1 + 20 = 5 (0101)
+1 + 21 = 6 (0110)
+1 + 22 = 7 (0111)
+1 + 23 = 8 (1000)
+1 + 24 = 9 (1001)
+1 + 25 = 10 (1010)
+1 + 26 = 11 (1011)
+1 + 27 = 12 (1100)
+1 + 28 = 13 (1101)
+1 + 29 = 14 (1110)
+1 + 30 = 15 (1111)
+1 + 31 = 0 (0000)
+1 + 32 = 1 (0001)
+1 + 33 = 2 (0010)
+1 + 34 = 3 (0011)
+1 + 35 = 4 (0100)
+1 + 36 = 5 (0101)
+1 + 37 = 6 (0110)
+1 + 38 = 7 (0111)
+1 + 39 = 8 (1000)
+1 + 40 = 9 (1001)
+1 + 41 = 10 (1010)
+1 + 42 = 11 (1011)
+1 + 43 = 12 (1100)
+1 + 44 = 13 (1101)
+1 + 45 = 14 (1110)
+1 + 46 = 15 (1111)
+1 + 47 = 0 (0000)
+1 + 48 = 1 (0001)
+1 + 49 = 2 (0010)
+1 + 50 = 3 (0011)
+1 + 51 = 4 (0100)
+1 + 52 = 5 (0101)
+1 + 53 = 6 (0110)
+1 + 54 = 7 (0111)
+1 + 55 = 8 (1000)
+1 + 56 = 9 (1001)
+1 + 57 = 10 (1010)
+1 + 58 = 11 (1011)
+1 + 59 = 12 (1100)
+1 + 60 = 13 (1101)
+1 + 61 = 14 (1110)
+1 + 62 = 15 (1111)
+1 + 63 = 0 (0000)
+2 + 0 = 2 (0010)
+2 + 1 = 3 (0011)
+2 + 2 = 4 (0100)
+2 + 3 = 5 (0101)
+2 + 4 = 6 (0110)
+2 + 5 = 7 (0111)
+2 + 6 = 8 (1000)
+2 + 7 = 9 (1001)
+2 + 8 = 10 (1010)
+2 + 9 = 11 (1011)
+2 + 10 = 12 (1100)
+2 + 11 = 13 (1101)
+2 + 12 = 14 (1110)
+2 + 13 = 15 (1111)
+2 + 14 = 0 (0000)
+2 + 15 = 1 (0001)
+2 + 16 = 2 (0010)
+2 + 17 = 3 (0011)
+2 + 18 = 4 (0100)
+2 + 19 = 5 (0101)
+2 + 20 = 6 (0110)
+2 + 21 = 7 (0111)
+2 + 22 = 8 (1000)
+2 + 23 = 9 (1001)
+2 + 24 = 10 (1010)
+2 + 25 = 11 (1011)
+2 + 26 = 12 (1100)
+2 + 27 = 13 (1101)
+2 + 28 = 14 (1110)
+2 + 29 = 15 (1111)
+2 + 30 = 0 (0000)
+2 + 31 = 1 (0001)
+2 + 32 = 2 (0010)
+2 + 33 = 3 (0011)
+2 + 34 = 4 (0100)
+2 + 35 = 5 (0101)
+2 + 36 = 6 (0110)
+2 + 37 = 7 (0111)
+2 + 38 = 8 (1000)
+2 + 39 = 9 (1001)
+2 + 40 = 10 (1010)
+2 + 41 = 11 (1011)
+2 + 42 = 12 (1100)
+2 + 43 = 13 (1101)
+2 + 44 = 14 (1110)
+2 + 45 = 15 (1111)
+2 + 46 = 0 (0000)
+2 + 47 = 1 (0001)
+2 + 48 = 2 (0010)
+2 + 49 = 3 (0011)
+2 + 50 = 4 (0100)
+2 + 51 = 5 (0101)
+2 + 52 = 6 (0110)
+2 + 53 = 7 (0111)
+2 + 54 = 8 (1000)
+2 + 55 = 9 (1001)
+2 + 56 = 10 (1010)
+2 + 57 = 11 (1011)
+2 + 58 = 12 (1100)
+2 + 59 = 13 (1101)
+2 + 60 = 14 (1110)
+2 + 61 = 15 (1111)
+2 + 62 = 0 (0000)
+2 + 63 = 1 (0001)
+3 + 0 = 3 (0011)
+3 + 1 = 4 (0100)
+3 + 2 = 5 (0101)
+3 + 3 = 6 (0110)
+3 + 4 = 7 (0111)
+3 + 5 = 8 (1000)
+3 + 6 = 9 (1001)
+3 + 7 = 10 (1010)
+3 + 8 = 11 (1011)
+3 + 9 = 12 (1100)
+3 + 10 = 13 (1101)
+3 + 11 = 14 (1110)
+3 + 12 = 15 (1111)
+3 + 13 = 0 (0000)
+3 + 14 = 1 (0001)
+3 + 15 = 2 (0010)
+3 + 16 = 3 (0011)
+3 + 17 = 4 (0100)
+3 + 18 = 5 (0101)
+3 + 19 = 6 (0110)
+3 + 20 = 7 (0111)
+3 + 21 = 8 (1000)
+3 + 22 = 9 (1001)
+3 + 23 = 10 (1010)
+3 + 24 = 11 (1011)
+3 + 25 = 12 (1100)
+3 + 26 = 13 (1101)
+3 + 27 = 14 (1110)
+3 + 28 = 15 (1111)
+3 + 29 = 0 (0000)
+3 + 30 = 1 (0001)
+3 + 31 = 2 (0010)
+3 + 32 = 3 (0011)
+3 + 33 = 4 (0100)
+3 + 34 = 5 (0101)
+3 + 35 = 6 (0110)
+3 + 36 = 7 (0111)
+3 + 37 = 8 (1000)
+3 + 38 = 9 (1001)
+3 + 39 = 10 (1010)
+3 + 40 = 11 (1011)
+3 + 41 = 12 (1100)
+3 + 42 = 13 (1101)
+3 + 43 = 14 (1110)
+3 + 44 = 15 (1111)
+3 + 45 = 0 (0000)
+3 + 46 = 1 (0001)
+3 + 47 = 2 (0010)
+3 + 48 = 3 (0011)
+3 + 49 = 4 (0100)
+3 + 50 = 5 (0101)
+3 + 51 = 6 (0110)
+3 + 52 = 7 (0111)
+3 + 53 = 8 (1000)
+3 + 54 = 9 (1001)
+3 + 55 = 10 (1010)
+3 + 56 = 11 (1011)
+3 + 57 = 12 (1100)
+3 + 58 = 13 (1101)
+3 + 59 = 14 (1110)
+3 + 60 = 15 (1111)
+3 + 61 = 0 (0000)
+3 + 62 = 1 (0001)
+3 + 63 = 2 (0010)
+4 + 0 = 4 (0100)
+4 + 1 = 5 (0101)
+4 + 2 = 6 (0110)
+4 + 3 = 7 (0111)
+4 + 4 = 8 (1000)
+4 + 5 = 9 (1001)
+4 + 6 = 10 (1010)
+4 + 7 = 11 (1011)
+4 + 8 = 12 (1100)
+4 + 9 = 13 (1101)
+4 + 10 = 14 (1110)
+4 + 11 = 15 (1111)
+4 + 12 = 0 (0000)
+4 + 13 = 1 (0001)
+4 + 14 = 2 (0010)
+4 + 15 = 3 (0011)
+4 + 16 = 4 (0100)
+4 + 17 = 5 (0101)
+4 + 18 = 6 (0110)
+4 + 19 = 7 (0111)
+4 + 20 = 8 (1000)
+4 + 21 = 9 (1001)
+4 + 22 = 10 (1010)
+4 + 23 = 11 (1011)
+4 + 24 = 12 (1100)
+4 + 25 = 13 (1101)
+4 + 26 = 14 (1110)
+4 + 27 = 15 (1111)
+4 + 28 = 0 (0000)
+4 + 29 = 1 (0001)
+4 + 30 = 2 (0010)
+4 + 31 = 3 (0011)
+4 + 32 = 4 (0100)
+4 + 33 = 5 (0101)
+4 + 34 = 6 (0110)
+4 + 35 = 7 (0111)
+4 + 36 = 8 (1000)
+4 + 37 = 9 (1001)
+4 + 38 = 10 (1010)
+4 + 39 = 11 (1011)
+4 + 40 = 12 (1100)
+4 + 41 = 13 (1101)
+4 + 42 = 14 (1110)
+4 + 43 = 15 (1111)
+4 + 44 = 0 (0000)
+4 + 45 = 1 (0001)
+4 + 46 = 2 (0010)
+4 + 47 = 3 (0011)
+4 + 48 = 4 (0100)
+4 + 49 = 5 (0101)
+4 + 50 = 6 (0110)
+4 + 51 = 7 (0111)
+4 + 52 = 8 (1000)
+4 + 53 = 9 (1001)
+4 + 54 = 10 (1010)
+4 + 55 = 11 (1011)
+4 + 56 = 12 (1100)
+4 + 57 = 13 (1101)
+4 + 58 = 14 (1110)
+4 + 59 = 15 (1111)
+4 + 60 = 0 (0000)
+4 + 61 = 1 (0001)
+4 + 62 = 2 (0010)
+4 + 63 = 3 (0011)
+5 + 0 = 5 (0101)
+5 + 1 = 6 (0110)
+5 + 2 = 7 (0111)
+5 + 3 = 8 (1000)
+5 + 4 = 9 (1001)
+5 + 5 = 10 (1010)
+5 + 6 = 11 (1011)
+5 + 7 = 12 (1100)
+5 + 8 = 13 (1101)
+5 + 9 = 14 (1110)
+5 + 10 = 15 (1111)
+5 + 11 = 0 (0000)
+5 + 12 = 1 (0001)
+5 + 13 = 2 (0010)
+5 + 14 = 3 (0011)
+5 + 15 = 4 (0100)
+5 + 16 = 5 (0101)
+5 + 17 = 6 (0110)
+5 + 18 = 7 (0111)
+5 + 19 = 8 (1000)
+5 + 20 = 9 (1001)
+5 + 21 = 10 (1010)
+5 + 22 = 11 (1011)
+5 + 23 = 12 (1100)
+5 + 24 = 13 (1101)
+5 + 25 = 14 (1110)
+5 + 26 = 15 (1111)
+5 + 27 = 0 (0000)
+5 + 28 = 1 (0001)
+5 + 29 = 2 (0010)
+5 + 30 = 3 (0011)
+5 + 31 = 4 (0100)
+5 + 32 = 5 (0101)
+5 + 33 = 6 (0110)
+5 + 34 = 7 (0111)
+5 + 35 = 8 (1000)
+5 + 36 = 9 (1001)
+5 + 37 = 10 (1010)
+5 + 38 = 11 (1011)
+5 + 39 = 12 (1100)
+5 + 40 = 13 (1101)
+5 + 41 = 14 (1110)
+5 + 42 = 15 (1111)
+5 + 43 = 0 (0000)
+5 + 44 = 1 (0001)
+5 + 45 = 2 (0010)
+5 + 46 = 3 (0011)
+5 + 47 = 4 (0100)
+5 + 48 = 5 (0101)
+5 + 49 = 6 (0110)
+5 + 50 = 7 (0111)
+5 + 51 = 8 (1000)
+5 + 52 = 9 (1001)
+5 + 53 = 10 (1010)
+5 + 54 = 11 (1011)
+5 + 55 = 12 (1100)
+5 + 56 = 13 (1101)
+5 + 57 = 14 (1110)
+5 + 58 = 15 (1111)
+5 + 59 = 0 (0000)
+5 + 60 = 1 (0001)
+5 + 61 = 2 (0010)
+5 + 62 = 3 (0011)
+5 + 63 = 4 (0100)
+6 + 0 = 6 (0110)
+6 + 1 = 7 (0111)
+6 + 2 = 8 (1000)
+6 + 3 = 9 (1001)
+6 + 4 = 10 (1010)
+6 + 5 = 11 (1011)
+6 + 6 = 12 (1100)
+6 + 7 = 13 (1101)
+6 + 8 = 14 (1110)
+6 + 9 = 15 (1111)
+6 + 10 = 0 (0000)
+6 + 11 = 1 (0001)
+6 + 12 = 2 (0010)
+6 + 13 = 3 (0011)
+6 + 14 = 4 (0100)
+6 + 15 = 5 (0101)
+6 + 16 = 6 (0110)
+6 + 17 = 7 (0111)
+6 + 18 = 8 (1000)
+6 + 19 = 9 (1001)
+6 + 20 = 10 (1010)
+6 + 21 = 11 (1011)
+6 + 22 = 12 (1100)
+6 + 23 = 13 (1101)
+6 + 24 = 14 (1110)
+6 + 25 = 15 (1111)
+6 + 26 = 0 (0000)
+6 + 27 = 1 (0001)
+6 + 28 = 2 (0010)
+6 + 29 = 3 (0011)
+6 + 30 = 4 (0100)
+6 + 31 = 5 (0101)
+6 + 32 = 6 (0110)
+6 + 33 = 7 (0111)
+6 + 34 = 8 (1000)
+6 + 35 = 9 (1001)
+6 + 36 = 10 (1010)
+6 + 37 = 11 (1011)
+6 + 38 = 12 (1100)
+6 + 39 = 13 (1101)
+6 + 40 = 14 (1110)
+6 + 41 = 15 (1111)
+6 + 42 = 0 (0000)
+6 + 43 = 1 (0001)
+6 + 44 = 2 (0010)
+6 + 45 = 3 (0011)
+6 + 46 = 4 (0100)
+6 + 47 = 5 (0101)
+6 + 48 = 6 (0110)
+6 + 49 = 7 (0111)
+6 + 50 = 8 (1000)
+6 + 51 = 9 (1001)
+6 + 52 = 10 (1010)
+6 + 53 = 11 (1011)
+6 + 54 = 12 (1100)
+6 + 55 = 13 (1101)
+6 + 56 = 14 (1110)
+6 + 57 = 15 (1111)
+6 + 58 = 0 (0000)
+6 + 59 = 1 (0001)
+6 + 60 = 2 (0010)
+6 + 61 = 3 (0011)
+6 + 62 = 4 (0100)
+6 + 63 = 5 (0101)
+7 + 0 = 7 (0111)
+7 + 1 = 8 (1000)
+7 + 2 = 9 (1001)
+7 + 3 = 10 (1010)
+7 + 4 = 11 (1011)
+7 + 5 = 12 (1100)
+7 + 6 = 13 (1101)
+7 + 7 = 14 (1110)
+7 + 8 = 15 (1111)
+7 + 9 = 0 (0000)
+7 + 10 = 1 (0001)
+7 + 11 = 2 (0010)
+7 + 12 = 3 (0011)
+7 + 13 = 4 (0100)
+7 + 14 = 5 (0101)
+7 + 15 = 6 (0110)
+7 + 16 = 7 (0111)
+7 + 17 = 8 (1000)
+7 + 18 = 9 (1001)
+7 + 19 = 10 (1010)
+7 + 20 = 11 (1011)
+7 + 21 = 12 (1100)
+7 + 22 = 13 (1101)
+7 + 23 = 14 (1110)
+7 + 24 = 15 (1111)
+7 + 25 = 0 (0000)
+7 + 26 = 1 (0001)
+7 + 27 = 2 (0010)
+7 + 28 = 3 (0011)
+7 + 29 = 4 (0100)
+7 + 30 = 5 (0101)
+7 + 31 = 6 (0110)
+7 + 32 = 7 (0111)
+7 + 33 = 8 (1000)
+7 + 34 = 9 (1001)
+7 + 35 = 10 (1010)
+7 + 36 = 11 (1011)
+7 + 37 = 12 (1100)
+7 + 38 = 13 (1101)
+7 + 39 = 14 (1110)
+7 + 40 = 15 (1111)
+7 + 41 = 0 (0000)
+7 + 42 = 1 (0001)
+7 + 43 = 2 (0010)
+7 + 44 = 3 (0011)
+7 + 45 = 4 (0100)
+7 + 46 = 5 (0101)
+7 + 47 = 6 (0110)
+7 + 48 = 7 (0111)
+7 + 49 = 8 (1000)
+7 + 50 = 9 (1001)
+7 + 51 = 10 (1010)
+7 + 52 = 11 (1011)
+7 + 53 = 12 (1100)
+7 + 54 = 13 (1101)
+7 + 55 = 14 (1110)
+7 + 56 = 15 (1111)
+7 + 57 = 0 (0000)
+7 + 58 = 1 (0001)
+7 + 59 = 2 (0010)
+7 + 60 = 3 (0011)
+7 + 61 = 4 (0100)
+7 + 62 = 5 (0101)
+7 + 63 = 6 (0110)
+8 + 0 = 8 (1000)
+8 + 1 = 9 (1001)
+8 + 2 = 10 (1010)
+8 + 3 = 11 (1011)
+8 + 4 = 12 (1100)
+8 + 5 = 13 (1101)
+8 + 6 = 14 (1110)
+8 + 7 = 15 (1111)
+8 + 8 = 0 (0000)
+8 + 9 = 1 (0001)
+8 + 10 = 2 (0010)
+8 + 11 = 3 (0011)
+8 + 12 = 4 (0100)
+8 + 13 = 5 (0101)
+8 + 14 = 6 (0110)
+8 + 15 = 7 (0111)
+8 + 16 = 8 (1000)
+8 + 17 = 9 (1001)
+8 + 18 = 10 (1010)
+8 + 19 = 11 (1011)
+8 + 20 = 12 (1100)
+8 + 21 = 13 (1101)
+8 + 22 = 14 (1110)
+8 + 23 = 15 (1111)
+8 + 24 = 0 (0000)
+8 + 25 = 1 (0001)
+8 + 26 = 2 (0010)
+8 + 27 = 3 (0011)
+8 + 28 = 4 (0100)
+8 + 29 = 5 (0101)
+8 + 30 = 6 (0110)
+8 + 31 = 7 (0111)
+8 + 32 = 8 (1000)
+8 + 33 = 9 (1001)
+8 + 34 = 10 (1010)
+8 + 35 = 11 (1011)
+8 + 36 = 12 (1100)
+8 + 37 = 13 (1101)
+8 + 38 = 14 (1110)
+8 + 39 = 15 (1111)
+8 + 40 = 0 (0000)
+8 + 41 = 1 (0001)
+8 + 42 = 2 (0010)
+8 + 43 = 3 (0011)
+8 + 44 = 4 (0100)
+8 + 45 = 5 (0101)
+8 + 46 = 6 (0110)
+8 + 47 = 7 (0111)
+8 + 48 = 8 (1000)
+8 + 49 = 9 (1001)
+8 + 50 = 10 (1010)
+8 + 51 = 11 (1011)
+8 + 52 = 12 (1100)
+8 + 53 = 13 (1101)
+8 + 54 = 14 (1110)
+8 + 55 = 15 (1111)
+8 + 56 = 0 (0000)
+8 + 57 = 1 (0001)
+8 + 58 = 2 (0010)
+8 + 59 = 3 (0011)
+8 + 60 = 4 (0100)
+8 + 61 = 5 (0101)
+8 + 62 = 6 (0110)
+8 + 63 = 7 (0111)
+9 + 0 = 9 (1001)
+9 + 1 = 10 (1010)
+9 + 2 = 11 (1011)
+9 + 3 = 12 (1100)
+9 + 4 = 13 (1101)
+9 + 5 = 14 (1110)
+9 + 6 = 15 (1111)
+9 + 7 = 0 (0000)
+9 + 8 = 1 (0001)
+9 + 9 = 2 (0010)
+9 + 10 = 3 (0011)
+9 + 11 = 4 (0100)
+9 + 12 = 5 (0101)
+9 + 13 = 6 (0110)
+9 + 14 = 7 (0111)
+9 + 15 = 8 (1000)
+9 + 16 = 9 (1001)
+9 + 17 = 10 (1010)
+9 + 18 = 11 (1011)
+9 + 19 = 12 (1100)
+9 + 20 = 13 (1101)
+9 + 21 = 14 (1110)
+9 + 22 = 15 (1111)
+9 + 23 = 0 (0000)
+9 + 24 = 1 (0001)
+9 + 25 = 2 (0010)
+9 + 26 = 3 (0011)
+9 + 27 = 4 (0100)
+9 + 28 = 5 (0101)
+9 + 29 = 6 (0110)
+9 + 30 = 7 (0111)
+9 + 31 = 8 (1000)
+9 + 32 = 9 (1001)
+9 + 33 = 10 (1010)
+9 + 34 = 11 (1011)
+9 + 35 = 12 (1100)
+9 + 36 = 13 (1101)
+9 + 37 = 14 (1110)
+9 + 38 = 15 (1111)
+9 + 39 = 0 (0000)
+9 + 40 = 1 (0001)
+9 + 41 = 2 (0010)
+9 + 42 = 3 (0011)
+9 + 43 = 4 (0100)
+9 + 44 = 5 (0101)
+9 + 45 = 6 (0110)
+9 + 46 = 7 (0111)
+9 + 47 = 8 (1000)
+9 + 48 = 9 (1001)
+9 + 49 = 10 (1010)
+9 + 50 = 11 (1011)
+9 + 51 = 12 (1100)
+9 + 52 = 13 (1101)
+9 + 53 = 14 (1110)
+9 + 54 = 15 (1111)
+9 + 55 = 0 (0000)
+9 + 56 = 1 (0001)
+9 + 57 = 2 (0010)
+9 + 58 = 3 (0011)
+9 + 59 = 4 (0100)
+9 + 60 = 5 (0101)
+9 + 61 = 6 (0110)
+9 + 62 = 7 (0111)
+9 + 63 = 8 (1000)
+10 + 0 = 10 (1010)
+10 + 1 = 11 (1011)
+10 + 2 = 12 (1100)
+10 + 3 = 13 (1101)
+10 + 4 = 14 (1110)
+10 + 5 = 15 (1111)
+10 + 6 = 0 (0000)
+10 + 7 = 1 (0001)
+10 + 8 = 2 (0010)
+10 + 9 = 3 (0011)
+10 + 10 = 4 (0100)
+10 + 11 = 5 (0101)
+10 + 12 = 6 (0110)
+10 + 13 = 7 (0111)
+10 + 14 = 8 (1000)
+10 + 15 = 9 (1001)
+10 + 16 = 10 (1010)
+10 + 17 = 11 (1011)
+10 + 18 = 12 (1100)
+10 + 19 = 13 (1101)
+10 + 20 = 14 (1110)
+10 + 21 = 15 (1111)
+10 + 22 = 0 (0000)
+10 + 23 = 1 (0001)
+10 + 24 = 2 (0010)
+10 + 25 = 3 (0011)
+10 + 26 = 4 (0100)
+10 + 27 = 5 (0101)
+10 + 28 = 6 (0110)
+10 + 29 = 7 (0111)
+10 + 30 = 8 (1000)
+10 + 31 = 9 (1001)
+10 + 32 = 10 (1010)
+10 + 33 = 11 (1011)
+10 + 34 = 12 (1100)
+10 + 35 = 13 (1101)
+10 + 36 = 14 (1110)
+10 + 37 = 15 (1111)
+10 + 38 = 0 (0000)
+10 + 39 = 1 (0001)
+10 + 40 = 2 (0010)
+10 + 41 = 3 (0011)
+10 + 42 = 4 (0100)
+10 + 43 = 5 (0101)
+10 + 44 = 6 (0110)
+10 + 45 = 7 (0111)
+10 + 46 = 8 (1000)
+10 + 47 = 9 (1001)
+10 + 48 = 10 (1010)
+10 + 49 = 11 (1011)
+10 + 50 = 12 (1100)
+10 + 51 = 13 (1101)
+10 + 52 = 14 (1110)
+10 + 53 = 15 (1111)
+10 + 54 = 0 (0000)
+10 + 55 = 1 (0001)
+10 + 56 = 2 (0010)
+10 + 57 = 3 (0011)
+10 + 58 = 4 (0100)
+10 + 59 = 5 (0101)
+10 + 60 = 6 (0110)
+10 + 61 = 7 (0111)
+10 + 62 = 8 (1000)
+10 + 63 = 9 (1001)
+11 + 0 = 11 (1011)
+11 + 1 = 12 (1100)
+11 + 2 = 13 (1101)
+11 + 3 = 14 (1110)
+11 + 4 = 15 (1111)
+11 + 5 = 0 (0000)
+11 + 6 = 1 (0001)
+11 + 7 = 2 (0010)
+11 + 8 = 3 (0011)
+11 + 9 = 4 (0100)
+11 + 10 = 5 (0101)
+11 + 11 = 6 (0110)
+11 + 12 = 7 (0111)
+11 + 13 = 8 (1000)
+11 + 14 = 9 (1001)
+11 + 15 = 10 (1010)
+11 + 16 = 11 (1011)
+11 + 17 = 12 (1100)
+11 + 18 = 13 (1101)
+11 + 19 = 14 (1110)
+11 + 20 = 15 (1111)
+11 + 21 = 0 (0000)
+11 + 22 = 1 (0001)
+11 + 23 = 2 (0010)
+11 + 24 = 3 (0011)
+11 + 25 = 4 (0100)
+11 + 26 = 5 (0101)
+11 + 27 = 6 (0110)
+11 + 28 = 7 (0111)
+11 + 29 = 8 (1000)
+11 + 30 = 9 (1001)
+11 + 31 = 10 (1010)
+11 + 32 = 11 (1011)
+11 + 33 = 12 (1100)
+11 + 34 = 13 (1101)
+11 + 35 = 14 (1110)
+11 + 36 = 15 (1111)
+11 + 37 = 0 (0000)
+11 + 38 = 1 (0001)
+11 + 39 = 2 (0010)
+11 + 40 = 3 (0011)
+11 + 41 = 4 (0100)
+11 + 42 = 5 (0101)
+11 + 43 = 6 (0110)
+11 + 44 = 7 (0111)
+11 + 45 = 8 (1000)
+11 + 46 = 9 (1001)
+11 + 47 = 10 (1010)
+11 + 48 = 11 (1011)
+11 + 49 = 12 (1100)
+11 + 50 = 13 (1101)
+11 + 51 = 14 (1110)
+11 + 52 = 15 (1111)
+11 + 53 = 0 (0000)
+11 + 54 = 1 (0001)
+11 + 55 = 2 (0010)
+11 + 56 = 3 (0011)
+11 + 57 = 4 (0100)
+11 + 58 = 5 (0101)
+11 + 59 = 6 (0110)
+11 + 60 = 7 (0111)
+11 + 61 = 8 (1000)
+11 + 62 = 9 (1001)
+11 + 63 = 10 (1010)
+12 + 0 = 12 (1100)
+12 + 1 = 13 (1101)
+12 + 2 = 14 (1110)
+12 + 3 = 15 (1111)
+12 + 4 = 0 (0000)
+12 + 5 = 1 (0001)
+12 + 6 = 2 (0010)
+12 + 7 = 3 (0011)
+12 + 8 = 4 (0100)
+12 + 9 = 5 (0101)
+12 + 10 = 6 (0110)
+12 + 11 = 7 (0111)
+12 + 12 = 8 (1000)
+12 + 13 = 9 (1001)
+12 + 14 = 10 (1010)
+12 + 15 = 11 (1011)
+12 + 16 = 12 (1100)
+12 + 17 = 13 (1101)
+12 + 18 = 14 (1110)
+12 + 19 = 15 (1111)
+12 + 20 = 0 (0000)
+12 + 21 = 1 (0001)
+12 + 22 = 2 (0010)
+12 + 23 = 3 (0011)
+12 + 24 = 4 (0100)
+12 + 25 = 5 (0101)
+12 + 26 = 6 (0110)
+12 + 27 = 7 (0111)
+12 + 28 = 8 (1000)
+12 + 29 = 9 (1001)
+12 + 30 = 10 (1010)
+12 + 31 = 11 (1011)
+12 + 32 = 12 (1100)
+12 + 33 = 13 (1101)
+12 + 34 = 14 (1110)
+12 + 35 = 15 (1111)
+12 + 36 = 0 (0000)
+12 + 37 = 1 (0001)
+12 + 38 = 2 (0010)
+12 + 39 = 3 (0011)
+12 + 40 = 4 (0100)
+12 + 41 = 5 (0101)
+12 + 42 = 6 (0110)
+12 + 43 = 7 (0111)
+12 + 44 = 8 (1000)
+12 + 45 = 9 (1001)
+12 + 46 = 10 (1010)
+12 + 47 = 11 (1011)
+12 + 48 = 12 (1100)
+12 + 49 = 13 (1101)
+12 + 50 = 14 (1110)
+12 + 51 = 15 (1111)
+12 + 52 = 0 (0000)
+12 + 53 = 1 (0001)
+12 + 54 = 2 (0010)
+12 + 55 = 3 (0011)
+12 + 56 = 4 (0100)
+12 + 57 = 5 (0101)
+12 + 58 = 6 (0110)
+12 + 59 = 7 (0111)
+12 + 60 = 8 (1000)
+12 + 61 = 9 (1001)
+12 + 62 = 10 (1010)
+12 + 63 = 11 (1011)
+13 + 0 = 13 (1101)
+13 + 1 = 14 (1110)
+13 + 2 = 15 (1111)
+13 + 3 = 0 (0000)
+13 + 4 = 1 (0001)
+13 + 5 = 2 (0010)
+13 + 6 = 3 (0011)
+13 + 7 = 4 (0100)
+13 + 8 = 5 (0101)
+13 + 9 = 6 (0110)
+13 + 10 = 7 (0111)
+13 + 11 = 8 (1000)
+13 + 12 = 9 (1001)
+13 + 13 = 10 (1010)
+13 + 14 = 11 (1011)
+13 + 15 = 12 (1100)
+13 + 16 = 13 (1101)
+13 + 17 = 14 (1110)
+13 + 18 = 15 (1111)
+13 + 19 = 0 (0000)
+13 + 20 = 1 (0001)
+13 + 21 = 2 (0010)
+13 + 22 = 3 (0011)
+13 + 23 = 4 (0100)
+13 + 24 = 5 (0101)
+13 + 25 = 6 (0110)
+13 + 26 = 7 (0111)
+13 + 27 = 8 (1000)
+13 + 28 = 9 (1001)
+13 + 29 = 10 (1010)
+13 + 30 = 11 (1011)
+13 + 31 = 12 (1100)
+13 + 32 = 13 (1101)
+13 + 33 = 14 (1110)
+13 + 34 = 15 (1111)
+13 + 35 = 0 (0000)
+13 + 36 = 1 (0001)
+13 + 37 = 2 (0010)
+13 + 38 = 3 (0011)
+13 + 39 = 4 (0100)
+13 + 40 = 5 (0101)
+13 + 41 = 6 (0110)
+13 + 42 = 7 (0111)
+13 + 43 = 8 (1000)
+13 + 44 = 9 (1001)
+13 + 45 = 10 (1010)
+13 + 46 = 11 (1011)
+13 + 47 = 12 (1100)
+13 + 48 = 13 (1101)
+13 + 49 = 14 (1110)
+13 + 50 = 15 (1111)
+13 + 51 = 0 (0000)
+13 + 52 = 1 (0001)
+13 + 53 = 2 (0010)
+13 + 54 = 3 (0011)
+13 + 55 = 4 (0100)
+13 + 56 = 5 (0101)
+13 + 57 = 6 (0110)
+13 + 58 = 7 (0111)
+13 + 59 = 8 (1000)
+13 + 60 = 9 (1001)
+13 + 61 = 10 (1010)
+13 + 62 = 11 (1011)
+13 + 63 = 12 (1100)
+14 + 0 = 14 (1110)
+14 + 1 = 15 (1111)
+14 + 2 = 0 (0000)
+14 + 3 = 1 (0001)
+14 + 4 = 2 (0010)
+14 + 5 = 3 (0011)
+14 + 6 = 4 (0100)
+14 + 7 = 5 (0101)
+14 + 8 = 6 (0110)
+14 + 9 = 7 (0111)
+14 + 10 = 8 (1000)
+14 + 11 = 9 (1001)
+14 + 12 = 10 (1010)
+14 + 13 = 11 (1011)
+14 + 14 = 12 (1100)
+14 + 15 = 13 (1101)
+14 + 16 = 14 (1110)
+14 + 17 = 15 (1111)
+14 + 18 = 0 (0000)
+14 + 19 = 1 (0001)
+14 + 20 = 2 (0010)
+14 + 21 = 3 (0011)
+14 + 22 = 4 (0100)
+14 + 23 = 5 (0101)
+14 + 24 = 6 (0110)
+14 + 25 = 7 (0111)
+14 + 26 = 8 (1000)
+14 + 27 = 9 (1001)
+14 + 28 = 10 (1010)
+14 + 29 = 11 (1011)
+14 + 30 = 12 (1100)
+14 + 31 = 13 (1101)
+14 + 32 = 14 (1110)
+14 + 33 = 15 (1111)
+14 + 34 = 0 (0000)
+14 + 35 = 1 (0001)
+14 + 36 = 2 (0010)
+14 + 37 = 3 (0011)
+14 + 38 = 4 (0100)
+14 + 39 = 5 (0101)
+14 + 40 = 6 (0110)
+14 + 41 = 7 (0111)
+14 + 42 = 8 (1000)
+14 + 43 = 9 (1001)
+14 + 44 = 10 (1010)
+14 + 45 = 11 (1011)
+14 + 46 = 12 (1100)
+14 + 47 = 13 (1101)
+14 + 48 = 14 (1110)
+14 + 49 = 15 (1111)
+14 + 50 = 0 (0000)
+14 + 51 = 1 (0001)
+14 + 52 = 2 (0010)
+14 + 53 = 3 (0011)
+14 + 54 = 4 (0100)
+14 + 55 = 5 (0101)
+14 + 56 = 6 (0110)
+14 + 57 = 7 (0111)
+14 + 58 = 8 (1000)
+14 + 59 = 9 (1001)
+14 + 60 = 10 (1010)
+14 + 61 = 11 (1011)
+14 + 62 = 12 (1100)
+14 + 63 = 13 (1101)
+15 + 0 = 15 (1111)
+15 + 1 = 0 (0000)
+15 + 2 = 1 (0001)
+15 + 3 = 2 (0010)
+15 + 4 = 3 (0011)
+15 + 5 = 4 (0100)
+15 + 6 = 5 (0101)
+15 + 7 = 6 (0110)
+15 + 8 = 7 (0111)
+15 + 9 = 8 (1000)
+15 + 10 = 9 (1001)
+15 + 11 = 10 (1010)
+15 + 12 = 11 (1011)
+15 + 13 = 12 (1100)
+15 + 14 = 13 (1101)
+15 + 15 = 14 (1110)
+15 + 16 = 15 (1111)
+15 + 17 = 0 (0000)
+15 + 18 = 1 (0001)
+15 + 19 = 2 (0010)
+15 + 20 = 3 (0011)
+15 + 21 = 4 (0100)
+15 + 22 = 5 (0101)
+15 + 23 = 6 (0110)
+15 + 24 = 7 (0111)
+15 + 25 = 8 (1000)
+15 + 26 = 9 (1001)
+15 + 27 = 10 (1010)
+15 + 28 = 11 (1011)
+15 + 29 = 12 (1100)
+15 + 30 = 13 (1101)
+15 + 31 = 14 (1110)
+15 + 32 = 15 (1111)
+15 + 33 = 0 (0000)
+15 + 34 = 1 (0001)
+15 + 35 = 2 (0010)
+15 + 36 = 3 (0011)
+15 + 37 = 4 (0100)
+15 + 38 = 5 (0101)
+15 + 39 = 6 (0110)
+15 + 40 = 7 (0111)
+15 + 41 = 8 (1000)
+15 + 42 = 9 (1001)
+15 + 43 = 10 (1010)
+15 + 44 = 11 (1011)
+15 + 45 = 12 (1100)
+15 + 46 = 13 (1101)
+15 + 47 = 14 (1110)
+15 + 48 = 15 (1111)
+15 + 49 = 0 (0000)
+15 + 50 = 1 (0001)
+15 + 51 = 2 (0010)
+15 + 52 = 3 (0011)
+15 + 53 = 4 (0100)
+15 + 54 = 5 (0101)
+15 + 55 = 6 (0110)
+15 + 56 = 7 (0111)
+15 + 57 = 8 (1000)
+15 + 58 = 9 (1001)
+15 + 59 = 10 (1010)
+15 + 60 = 11 (1011)
+15 + 61 = 12 (1100)
+15 + 62 = 13 (1101)
+15 + 63 = 14 (1110)
+16 + 0 = 0 (0000)
+16 + 1 = 1 (0001)
+16 + 2 = 2 (0010)
+16 + 3 = 3 (0011)
+16 + 4 = 4 (0100)
+16 + 5 = 5 (0101)
+16 + 6 = 6 (0110)
+16 + 7 = 7 (0111)
+16 + 8 = 8 (1000)
+16 + 9 = 9 (1001)
+16 + 10 = 10 (1010)
+16 + 11 = 11 (1011)
+16 + 12 = 12 (1100)
+16 + 13 = 13 (1101)
+16 + 14 = 14 (1110)
+16 + 15 = 15 (1111)
+16 + 16 = 0 (0000)
+16 + 17 = 1 (0001)
+16 + 18 = 2 (0010)
+16 + 19 = 3 (0011)
+16 + 20 = 4 (0100)
+16 + 21 = 5 (0101)
+16 + 22 = 6 (0110)
+16 + 23 = 7 (0111)
+16 + 24 = 8 (1000)
+16 + 25 = 9 (1001)
+16 + 26 = 10 (1010)
+16 + 27 = 11 (1011)
+16 + 28 = 12 (1100)
+16 + 29 = 13 (1101)
+16 + 30 = 14 (1110)
+16 + 31 = 15 (1111)
+16 + 32 = 0 (0000)
+16 + 33 = 1 (0001)
+16 + 34 = 2 (0010)
+16 + 35 = 3 (0011)
+16 + 36 = 4 (0100)
+16 + 37 = 5 (0101)
+16 + 38 = 6 (0110)
+16 + 39 = 7 (0111)
+16 + 40 = 8 (1000)
+16 + 41 = 9 (1001)
+16 + 42 = 10 (1010)
+16 + 43 = 11 (1011)
+16 + 44 = 12 (1100)
+16 + 45 = 13 (1101)
+16 + 46 = 14 (1110)
+16 + 47 = 15 (1111)
+16 + 48 = 0 (0000)
+16 + 49 = 1 (0001)
+16 + 50 = 2 (0010)
+16 + 51 = 3 (0011)
+16 + 52 = 4 (0100)
+16 + 53 = 5 (0101)
+16 + 54 = 6 (0110)
+16 + 55 = 7 (0111)
+16 + 56 = 8 (1000)
+16 + 57 = 9 (1001)
+16 + 58 = 10 (1010)
+16 + 59 = 11 (1011)
+16 + 60 = 12 (1100)
+16 + 61 = 13 (1101)
+16 + 62 = 14 (1110)
+16 + 63 = 15 (1111)
+17 + 0 = 1 (0001)
+17 + 1 = 2 (0010)
+17 + 2 = 3 (0011)
+17 + 3 = 4 (0100)
+17 + 4 = 5 (0101)
+17 + 5 = 6 (0110)
+17 + 6 = 7 (0111)
+17 + 7 = 8 (1000)
+17 + 8 = 9 (1001)
+17 + 9 = 10 (1010)
+17 + 10 = 11 (1011)
+17 + 11 = 12 (1100)
+17 + 12 = 13 (1101)
+17 + 13 = 14 (1110)
+17 + 14 = 15 (1111)
+17 + 15 = 0 (0000)
+17 + 16 = 1 (0001)
+17 + 17 = 2 (0010)
+17 + 18 = 3 (0011)
+17 + 19 = 4 (0100)
+17 + 20 = 5 (0101)
+17 + 21 = 6 (0110)
+17 + 22 = 7 (0111)
+17 + 23 = 8 (1000)
+17 + 24 = 9 (1001)
+17 + 25 = 10 (1010)
+17 + 26 = 11 (1011)
+17 + 27 = 12 (1100)
+17 + 28 = 13 (1101)
+17 + 29 = 14 (1110)
+17 + 30 = 15 (1111)
+17 + 31 = 0 (0000)
+17 + 32 = 1 (0001)
+17 + 33 = 2 (0010)
+17 + 34 = 3 (0011)
+17 + 35 = 4 (0100)
+17 + 36 = 5 (0101)
+17 + 37 = 6 (0110)
+17 + 38 = 7 (0111)
+17 + 39 = 8 (1000)
+17 + 40 = 9 (1001)
+17 + 41 = 10 (1010)
+17 + 42 = 11 (1011)
+17 + 43 = 12 (1100)
+17 + 44 = 13 (1101)
+17 + 45 = 14 (1110)
+17 + 46 = 15 (1111)
+17 + 47 = 0 (0000)
+17 + 48 = 1 (0001)
+17 + 49 = 2 (0010)
+17 + 50 = 3 (0011)
+17 + 51 = 4 (0100)
+17 + 52 = 5 (0101)
+17 + 53 = 6 (0110)
+17 + 54 = 7 (0111)
+17 + 55 = 8 (1000)
+17 + 56 = 9 (1001)
+17 + 57 = 10 (1010)
+17 + 58 = 11 (1011)
+17 + 59 = 12 (1100)
+17 + 60 = 13 (1101)
+17 + 61 = 14 (1110)
+17 + 62 = 15 (1111)
+17 + 63 = 0 (0000)
+18 + 0 = 2 (0010)
+18 + 1 = 3 (0011)
+18 + 2 = 4 (0100)
+18 + 3 = 5 (0101)
+18 + 4 = 6 (0110)
+18 + 5 = 7 (0111)
+18 + 6 = 8 (1000)
+18 + 7 = 9 (1001)
+18 + 8 = 10 (1010)
+18 + 9 = 11 (1011)
+18 + 10 = 12 (1100)
+18 + 11 = 13 (1101)
+18 + 12 = 14 (1110)
+18 + 13 = 15 (1111)
+18 + 14 = 0 (0000)
+18 + 15 = 1 (0001)
+18 + 16 = 2 (0010)
+18 + 17 = 3 (0011)
+18 + 18 = 4 (0100)
+18 + 19 = 5 (0101)
+18 + 20 = 6 (0110)
+18 + 21 = 7 (0111)
+18 + 22 = 8 (1000)
+18 + 23 = 9 (1001)
+18 + 24 = 10 (1010)
+18 + 25 = 11 (1011)
+18 + 26 = 12 (1100)
+18 + 27 = 13 (1101)
+18 + 28 = 14 (1110)
+18 + 29 = 15 (1111)
+18 + 30 = 0 (0000)
+18 + 31 = 1 (0001)
+18 + 32 = 2 (0010)
+18 + 33 = 3 (0011)
+18 + 34 = 4 (0100)
+18 + 35 = 5 (0101)
+18 + 36 = 6 (0110)
+18 + 37 = 7 (0111)
+18 + 38 = 8 (1000)
+18 + 39 = 9 (1001)
+18 + 40 = 10 (1010)
+18 + 41 = 11 (1011)
+18 + 42 = 12 (1100)
+18 + 43 = 13 (1101)
+18 + 44 = 14 (1110)
+18 + 45 = 15 (1111)
+18 + 46 = 0 (0000)
+18 + 47 = 1 (0001)
+18 + 48 = 2 (0010)
+18 + 49 = 3 (0011)
+18 + 50 = 4 (0100)
+18 + 51 = 5 (0101)
+18 + 52 = 6 (0110)
+18 + 53 = 7 (0111)
+18 + 54 = 8 (1000)
+18 + 55 = 9 (1001)
+18 + 56 = 10 (1010)
+18 + 57 = 11 (1011)
+18 + 58 = 12 (1100)
+18 + 59 = 13 (1101)
+18 + 60 = 14 (1110)
+18 + 61 = 15 (1111)
+18 + 62 = 0 (0000)
+18 + 63 = 1 (0001)
+19 + 0 = 3 (0011)
+19 + 1 = 4 (0100)
+19 + 2 = 5 (0101)
+19 + 3 = 6 (0110)
+19 + 4 = 7 (0111)
+19 + 5 = 8 (1000)
+19 + 6 = 9 (1001)
+19 + 7 = 10 (1010)
+19 + 8 = 11 (1011)
+19 + 9 = 12 (1100)
+19 + 10 = 13 (1101)
+19 + 11 = 14 (1110)
+19 + 12 = 15 (1111)
+19 + 13 = 0 (0000)
+19 + 14 = 1 (0001)
+19 + 15 = 2 (0010)
+19 + 16 = 3 (0011)
+19 + 17 = 4 (0100)
+19 + 18 = 5 (0101)
+19 + 19 = 6 (0110)
+19 + 20 = 7 (0111)
+19 + 21 = 8 (1000)
+19 + 22 = 9 (1001)
+19 + 23 = 10 (1010)
+19 + 24 = 11 (1011)
+19 + 25 = 12 (1100)
+19 + 26 = 13 (1101)
+19 + 27 = 14 (1110)
+19 + 28 = 15 (1111)
+19 + 29 = 0 (0000)
+19 + 30 = 1 (0001)
+19 + 31 = 2 (0010)
+19 + 32 = 3 (0011)
+19 + 33 = 4 (0100)
+19 + 34 = 5 (0101)
+19 + 35 = 6 (0110)
+19 + 36 = 7 (0111)
+19 + 37 = 8 (1000)
+19 + 38 = 9 (1001)
+19 + 39 = 10 (1010)
+19 + 40 = 11 (1011)
+19 + 41 = 12 (1100)
+19 + 42 = 13 (1101)
+19 + 43 = 14 (1110)
+19 + 44 = 15 (1111)
+19 + 45 = 0 (0000)
+19 + 46 = 1 (0001)
+19 + 47 = 2 (0010)
+19 + 48 = 3 (0011)
+19 + 49 = 4 (0100)
+19 + 50 = 5 (0101)
+19 + 51 = 6 (0110)
+19 + 52 = 7 (0111)
+19 + 53 = 8 (1000)
+19 + 54 = 9 (1001)
+19 + 55 = 10 (1010)
+19 + 56 = 11 (1011)
+19 + 57 = 12 (1100)
+19 + 58 = 13 (1101)
+19 + 59 = 14 (1110)
+19 + 60 = 15 (1111)
+19 + 61 = 0 (0000)
+19 + 62 = 1 (0001)
+19 + 63 = 2 (0010)
+20 + 0 = 4 (0100)
+20 + 1 = 5 (0101)
+20 + 2 = 6 (0110)
+20 + 3 = 7 (0111)
+20 + 4 = 8 (1000)
+20 + 5 = 9 (1001)
+20 + 6 = 10 (1010)
+20 + 7 = 11 (1011)
+20 + 8 = 12 (1100)
+20 + 9 = 13 (1101)
+20 + 10 = 14 (1110)
+20 + 11 = 15 (1111)
+20 + 12 = 0 (0000)
+20 + 13 = 1 (0001)
+20 + 14 = 2 (0010)
+20 + 15 = 3 (0011)
+20 + 16 = 4 (0100)
+20 + 17 = 5 (0101)
+20 + 18 = 6 (0110)
+20 + 19 = 7 (0111)
+20 + 20 = 8 (1000)
+20 + 21 = 9 (1001)
+20 + 22 = 10 (1010)
+20 + 23 = 11 (1011)
+20 + 24 = 12 (1100)
+20 + 25 = 13 (1101)
+20 + 26 = 14 (1110)
+20 + 27 = 15 (1111)
+20 + 28 = 0 (0000)
+20 + 29 = 1 (0001)
+20 + 30 = 2 (0010)
+20 + 31 = 3 (0011)
+20 + 32 = 4 (0100)
+20 + 33 = 5 (0101)
+20 + 34 = 6 (0110)
+20 + 35 = 7 (0111)
+20 + 36 = 8 (1000)
+20 + 37 = 9 (1001)
+20 + 38 = 10 (1010)
+20 + 39 = 11 (1011)
+20 + 40 = 12 (1100)
+20 + 41 = 13 (1101)
+20 + 42 = 14 (1110)
+20 + 43 = 15 (1111)
+20 + 44 = 0 (0000)
+20 + 45 = 1 (0001)
+20 + 46 = 2 (0010)
+20 + 47 = 3 (0011)
+20 + 48 = 4 (0100)
+20 + 49 = 5 (0101)
+20 + 50 = 6 (0110)
+20 + 51 = 7 (0111)
+20 + 52 = 8 (1000)
+20 + 53 = 9 (1001)
+20 + 54 = 10 (1010)
+20 + 55 = 11 (1011)
+20 + 56 = 12 (1100)
+20 + 57 = 13 (1101)
+20 + 58 = 14 (1110)
+20 + 59 = 15 (1111)
+20 + 60 = 0 (0000)
+20 + 61 = 1 (0001)
+20 + 62 = 2 (0010)
+20 + 63 = 3 (0011)
+21 + 0 = 5 (0101)
+21 + 1 = 6 (0110)
+21 + 2 = 7 (0111)
+21 + 3 = 8 (1000)
+21 + 4 = 9 (1001)
+21 + 5 = 10 (1010)
+21 + 6 = 11 (1011)
+21 + 7 = 12 (1100)
+21 + 8 = 13 (1101)
+21 + 9 = 14 (1110)
+21 + 10 = 15 (1111)
+21 + 11 = 0 (0000)
+21 + 12 = 1 (0001)
+21 + 13 = 2 (0010)
+21 + 14 = 3 (0011)
+21 + 15 = 4 (0100)
+21 + 16 = 5 (0101)
+21 + 17 = 6 (0110)
+21 + 18 = 7 (0111)
+21 + 19 = 8 (1000)
+21 + 20 = 9 (1001)
+21 + 21 = 10 (1010)
+21 + 22 = 11 (1011)
+21 + 23 = 12 (1100)
+21 + 24 = 13 (1101)
+21 + 25 = 14 (1110)
+21 + 26 = 15 (1111)
+21 + 27 = 0 (0000)
+21 + 28 = 1 (0001)
+21 + 29 = 2 (0010)
+21 + 30 = 3 (0011)
+21 + 31 = 4 (0100)
+21 + 32 = 5 (0101)
+21 + 33 = 6 (0110)
+21 + 34 = 7 (0111)
+21 + 35 = 8 (1000)
+21 + 36 = 9 (1001)
+21 + 37 = 10 (1010)
+21 + 38 = 11 (1011)
+21 + 39 = 12 (1100)
+21 + 40 = 13 (1101)
+21 + 41 = 14 (1110)
+21 + 42 = 15 (1111)
+21 + 43 = 0 (0000)
+21 + 44 = 1 (0001)
+21 + 45 = 2 (0010)
+21 + 46 = 3 (0011)
+21 + 47 = 4 (0100)
+21 + 48 = 5 (0101)
+21 + 49 = 6 (0110)
+21 + 50 = 7 (0111)
+21 + 51 = 8 (1000)
+21 + 52 = 9 (1001)
+21 + 53 = 10 (1010)
+21 + 54 = 11 (1011)
+21 + 55 = 12 (1100)
+21 + 56 = 13 (1101)
+21 + 57 = 14 (1110)
+21 + 58 = 15 (1111)
+21 + 59 = 0 (0000)
+21 + 60 = 1 (0001)
+21 + 61 = 2 (0010)
+21 + 62 = 3 (0011)
+21 + 63 = 4 (0100)
+22 + 0 = 6 (0110)
+22 + 1 = 7 (0111)
+22 + 2 = 8 (1000)
+22 + 3 = 9 (1001)
+22 + 4 = 10 (1010)
+22 + 5 = 11 (1011)
+22 + 6 = 12 (1100)
+22 + 7 = 13 (1101)
+22 + 8 = 14 (1110)
+22 + 9 = 15 (1111)
+22 + 10 = 0 (0000)
+22 + 11 = 1 (0001)
+22 + 12 = 2 (0010)
+22 + 13 = 3 (0011)
+22 + 14 = 4 (0100)
+22 + 15 = 5 (0101)
+22 + 16 = 6 (0110)
+22 + 17 = 7 (0111)
+22 + 18 = 8 (1000)
+22 + 19 = 9 (1001)
+22 + 20 = 10 (1010)
+22 + 21 = 11 (1011)
+22 + 22 = 12 (1100)
+22 + 23 = 13 (1101)
+22 + 24 = 14 (1110)
+22 + 25 = 15 (1111)
+22 + 26 = 0 (0000)
+22 + 27 = 1 (0001)
+22 + 28 = 2 (0010)
+22 + 29 = 3 (0011)
+22 + 30 = 4 (0100)
+22 + 31 = 5 (0101)
+22 + 32 = 6 (0110)
+22 + 33 = 7 (0111)
+22 + 34 = 8 (1000)
+22 + 35 = 9 (1001)
+22 + 36 = 10 (1010)
+22 + 37 = 11 (1011)
+22 + 38 = 12 (1100)
+22 + 39 = 13 (1101)
+22 + 40 = 14 (1110)
+22 + 41 = 15 (1111)
+22 + 42 = 0 (0000)
+22 + 43 = 1 (0001)
+22 + 44 = 2 (0010)
+22 + 45 = 3 (0011)
+22 + 46 = 4 (0100)
+22 + 47 = 5 (0101)
+22 + 48 = 6 (0110)
+22 + 49 = 7 (0111)
+22 + 50 = 8 (1000)
+22 + 51 = 9 (1001)
+22 + 52 = 10 (1010)
+22 + 53 = 11 (1011)
+22 + 54 = 12 (1100)
+22 + 55 = 13 (1101)
+22 + 56 = 14 (1110)
+22 + 57 = 15 (1111)
+22 + 58 = 0 (0000)
+22 + 59 = 1 (0001)
+22 + 60 = 2 (0010)
+22 + 61 = 3 (0011)
+22 + 62 = 4 (0100)
+22 + 63 = 5 (0101)
+23 + 0 = 7 (0111)
+23 + 1 = 8 (1000)
+23 + 2 = 9 (1001)
+23 + 3 = 10 (1010)
+23 + 4 = 11 (1011)
+23 + 5 = 12 (1100)
+23 + 6 = 13 (1101)
+23 + 7 = 14 (1110)
+23 + 8 = 15 (1111)
+23 + 9 = 0 (0000)
+23 + 10 = 1 (0001)
+23 + 11 = 2 (0010)
+23 + 12 = 3 (0011)
+23 + 13 = 4 (0100)
+23 + 14 = 5 (0101)
+23 + 15 = 6 (0110)
+23 + 16 = 7 (0111)
+23 + 17 = 8 (1000)
+23 + 18 = 9 (1001)
+23 + 19 = 10 (1010)
+23 + 20 = 11 (1011)
+23 + 21 = 12 (1100)
+23 + 22 = 13 (1101)
+23 + 23 = 14 (1110)
+23 + 24 = 15 (1111)
+23 + 25 = 0 (0000)
+23 + 26 = 1 (0001)
+23 + 27 = 2 (0010)
+23 + 28 = 3 (0011)
+23 + 29 = 4 (0100)
+23 + 30 = 5 (0101)
+23 + 31 = 6 (0110)
+23 + 32 = 7 (0111)
+23 + 33 = 8 (1000)
+23 + 34 = 9 (1001)
+23 + 35 = 10 (1010)
+23 + 36 = 11 (1011)
+23 + 37 = 12 (1100)
+23 + 38 = 13 (1101)
+23 + 39 = 14 (1110)
+23 + 40 = 15 (1111)
+23 + 41 = 0 (0000)
+23 + 42 = 1 (0001)
+23 + 43 = 2 (0010)
+23 + 44 = 3 (0011)
+23 + 45 = 4 (0100)
+23 + 46 = 5 (0101)
+23 + 47 = 6 (0110)
+23 + 48 = 7 (0111)
+23 + 49 = 8 (1000)
+23 + 50 = 9 (1001)
+23 + 51 = 10 (1010)
+23 + 52 = 11 (1011)
+23 + 53 = 12 (1100)
+23 + 54 = 13 (1101)
+23 + 55 = 14 (1110)
+23 + 56 = 15 (1111)
+23 + 57 = 0 (0000)
+23 + 58 = 1 (0001)
+23 + 59 = 2 (0010)
+23 + 60 = 3 (0011)
+23 + 61 = 4 (0100)
+23 + 62 = 5 (0101)
+23 + 63 = 6 (0110)
+24 + 0 = 8 (1000)
+24 + 1 = 9 (1001)
+24 + 2 = 10 (1010)
+24 + 3 = 11 (1011)
+24 + 4 = 12 (1100)
+24 + 5 = 13 (1101)
+24 + 6 = 14 (1110)
+24 + 7 = 15 (1111)
+24 + 8 = 0 (0000)
+24 + 9 = 1 (0001)
+24 + 10 = 2 (0010)
+24 + 11 = 3 (0011)
+24 + 12 = 4 (0100)
+24 + 13 = 5 (0101)
+24 + 14 = 6 (0110)
+24 + 15 = 7 (0111)
+24 + 16 = 8 (1000)
+24 + 17 = 9 (1001)
+24 + 18 = 10 (1010)
+24 + 19 = 11 (1011)
+24 + 20 = 12 (1100)
+24 + 21 = 13 (1101)
+24 + 22 = 14 (1110)
+24 + 23 = 15 (1111)
+24 + 24 = 0 (0000)
+24 + 25 = 1 (0001)
+24 + 26 = 2 (0010)
+24 + 27 = 3 (0011)
+24 + 28 = 4 (0100)
+24 + 29 = 5 (0101)
+24 + 30 = 6 (0110)
+24 + 31 = 7 (0111)
+24 + 32 = 8 (1000)
+24 + 33 = 9 (1001)
+24 + 34 = 10 (1010)
+24 + 35 = 11 (1011)
+24 + 36 = 12 (1100)
+24 + 37 = 13 (1101)
+24 + 38 = 14 (1110)
+24 + 39 = 15 (1111)
+24 + 40 = 0 (0000)
+24 + 41 = 1 (0001)
+24 + 42 = 2 (0010)
+24 + 43 = 3 (0011)
+24 + 44 = 4 (0100)
+24 + 45 = 5 (0101)
+24 + 46 = 6 (0110)
+24 + 47 = 7 (0111)
+24 + 48 = 8 (1000)
+24 + 49 = 9 (1001)
+24 + 50 = 10 (1010)
+24 + 51 = 11 (1011)
+24 + 52 = 12 (1100)
+24 + 53 = 13 (1101)
+24 + 54 = 14 (1110)
+24 + 55 = 15 (1111)
+24 + 56 = 0 (0000)
+24 + 57 = 1 (0001)
+24 + 58 = 2 (0010)
+24 + 59 = 3 (0011)
+24 + 60 = 4 (0100)
+24 + 61 = 5 (0101)
+24 + 62 = 6 (0110)
+24 + 63 = 7 (0111)
+25 + 0 = 9 (1001)
+25 + 1 = 10 (1010)
+25 + 2 = 11 (1011)
+25 + 3 = 12 (1100)
+25 + 4 = 13 (1101)
+25 + 5 = 14 (1110)
+25 + 6 = 15 (1111)
+25 + 7 = 0 (0000)
+25 + 8 = 1 (0001)
+25 + 9 = 2 (0010)
+25 + 10 = 3 (0011)
+25 + 11 = 4 (0100)
+25 + 12 = 5 (0101)
+25 + 13 = 6 (0110)
+25 + 14 = 7 (0111)
+25 + 15 = 8 (1000)
+25 + 16 = 9 (1001)
+25 + 17 = 10 (1010)
+25 + 18 = 11 (1011)
+25 + 19 = 12 (1100)
+25 + 20 = 13 (1101)
+25 + 21 = 14 (1110)
+25 + 22 = 15 (1111)
+25 + 23 = 0 (0000)
+25 + 24 = 1 (0001)
+25 + 25 = 2 (0010)
+25 + 26 = 3 (0011)
+25 + 27 = 4 (0100)
+25 + 28 = 5 (0101)
+25 + 29 = 6 (0110)
+25 + 30 = 7 (0111)
+25 + 31 = 8 (1000)
+25 + 32 = 9 (1001)
+25 + 33 = 10 (1010)
+25 + 34 = 11 (1011)
+25 + 35 = 12 (1100)
+25 + 36 = 13 (1101)
+25 + 37 = 14 (1110)
+25 + 38 = 15 (1111)
+25 + 39 = 0 (0000)
+25 + 40 = 1 (0001)
+25 + 41 = 2 (0010)
+25 + 42 = 3 (0011)
+25 + 43 = 4 (0100)
+25 + 44 = 5 (0101)
+25 + 45 = 6 (0110)
+25 + 46 = 7 (0111)
+25 + 47 = 8 (1000)
+25 + 48 = 9 (1001)
+25 + 49 = 10 (1010)
+25 + 50 = 11 (1011)
+25 + 51 = 12 (1100)
+25 + 52 = 13 (1101)
+25 + 53 = 14 (1110)
+25 + 54 = 15 (1111)
+25 + 55 = 0 (0000)
+25 + 56 = 1 (0001)
+25 + 57 = 2 (0010)
+25 + 58 = 3 (0011)
+25 + 59 = 4 (0100)
+25 + 60 = 5 (0101)
+25 + 61 = 6 (0110)
+25 + 62 = 7 (0111)
+25 + 63 = 8 (1000)
+26 + 0 = 10 (1010)
+26 + 1 = 11 (1011)
+26 + 2 = 12 (1100)
+26 + 3 = 13 (1101)
+26 + 4 = 14 (1110)
+26 + 5 = 15 (1111)
+26 + 6 = 0 (0000)
+26 + 7 = 1 (0001)
+26 + 8 = 2 (0010)
+26 + 9 = 3 (0011)
+26 + 10 = 4 (0100)
+26 + 11 = 5 (0101)
+26 + 12 = 6 (0110)
+26 + 13 = 7 (0111)
+26 + 14 = 8 (1000)
+26 + 15 = 9 (1001)
+26 + 16 = 10 (1010)
+26 + 17 = 11 (1011)
+26 + 18 = 12 (1100)
+26 + 19 = 13 (1101)
+26 + 20 = 14 (1110)
+26 + 21 = 15 (1111)
+26 + 22 = 0 (0000)
+26 + 23 = 1 (0001)
+26 + 24 = 2 (0010)
+26 + 25 = 3 (0011)
+26 + 26 = 4 (0100)
+26 + 27 = 5 (0101)
+26 + 28 = 6 (0110)
+26 + 29 = 7 (0111)
+26 + 30 = 8 (1000)
+26 + 31 = 9 (1001)
+26 + 32 = 10 (1010)
+26 + 33 = 11 (1011)
+26 + 34 = 12 (1100)
+26 + 35 = 13 (1101)
+26 + 36 = 14 (1110)
+26 + 37 = 15 (1111)
+26 + 38 = 0 (0000)
+26 + 39 = 1 (0001)
+26 + 40 = 2 (0010)
+26 + 41 = 3 (0011)
+26 + 42 = 4 (0100)
+26 + 43 = 5 (0101)
+26 + 44 = 6 (0110)
+26 + 45 = 7 (0111)
+26 + 46 = 8 (1000)
+26 + 47 = 9 (1001)
+26 + 48 = 10 (1010)
+26 + 49 = 11 (1011)
+26 + 50 = 12 (1100)
+26 + 51 = 13 (1101)
+26 + 52 = 14 (1110)
+26 + 53 = 15 (1111)
+26 + 54 = 0 (0000)
+26 + 55 = 1 (0001)
+26 + 56 = 2 (0010)
+26 + 57 = 3 (0011)
+26 + 58 = 4 (0100)
+26 + 59 = 5 (0101)
+26 + 60 = 6 (0110)
+26 + 61 = 7 (0111)
+26 + 62 = 8 (1000)
+26 + 63 = 9 (1001)
+27 + 0 = 11 (1011)
+27 + 1 = 12 (1100)
+27 + 2 = 13 (1101)
+27 + 3 = 14 (1110)
+27 + 4 = 15 (1111)
+27 + 5 = 0 (0000)
+27 + 6 = 1 (0001)
+27 + 7 = 2 (0010)
+27 + 8 = 3 (0011)
+27 + 9 = 4 (0100)
+27 + 10 = 5 (0101)
+27 + 11 = 6 (0110)
+27 + 12 = 7 (0111)
+27 + 13 = 8 (1000)
+27 + 14 = 9 (1001)
+27 + 15 = 10 (1010)
+27 + 16 = 11 (1011)
+27 + 17 = 12 (1100)
+27 + 18 = 13 (1101)
+27 + 19 = 14 (1110)
+27 + 20 = 15 (1111)
+27 + 21 = 0 (0000)
+27 + 22 = 1 (0001)
+27 + 23 = 2 (0010)
+27 + 24 = 3 (0011)
+27 + 25 = 4 (0100)
+27 + 26 = 5 (0101)
+27 + 27 = 6 (0110)
+27 + 28 = 7 (0111)
+27 + 29 = 8 (1000)
+27 + 30 = 9 (1001)
+27 + 31 = 10 (1010)
+27 + 32 = 11 (1011)
+27 + 33 = 12 (1100)
+27 + 34 = 13 (1101)
+27 + 35 = 14 (1110)
+27 + 36 = 15 (1111)
+27 + 37 = 0 (0000)
+27 + 38 = 1 (0001)
+27 + 39 = 2 (0010)
+27 + 40 = 3 (0011)
+27 + 41 = 4 (0100)
+27 + 42 = 5 (0101)
+27 + 43 = 6 (0110)
+27 + 44 = 7 (0111)
+27 + 45 = 8 (1000)
+27 + 46 = 9 (1001)
+27 + 47 = 10 (1010)
+27 + 48 = 11 (1011)
+27 + 49 = 12 (1100)
+27 + 50 = 13 (1101)
+27 + 51 = 14 (1110)
+27 + 52 = 15 (1111)
+27 + 53 = 0 (0000)
+27 + 54 = 1 (0001)
+27 + 55 = 2 (0010)
+27 + 56 = 3 (0011)
+27 + 57 = 4 (0100)
+27 + 58 = 5 (0101)
+27 + 59 = 6 (0110)
+27 + 60 = 7 (0111)
+27 + 61 = 8 (1000)
+27 + 62 = 9 (1001)
+27 + 63 = 10 (1010)
+28 + 0 = 12 (1100)
+28 + 1 = 13 (1101)
+28 + 2 = 14 (1110)
+28 + 3 = 15 (1111)
+28 + 4 = 0 (0000)
+28 + 5 = 1 (0001)
+28 + 6 = 2 (0010)
+28 + 7 = 3 (0011)
+28 + 8 = 4 (0100)
+28 + 9 = 5 (0101)
+28 + 10 = 6 (0110)
+28 + 11 = 7 (0111)
+28 + 12 = 8 (1000)
+28 + 13 = 9 (1001)
+28 + 14 = 10 (1010)
+28 + 15 = 11 (1011)
+28 + 16 = 12 (1100)
+28 + 17 = 13 (1101)
+28 + 18 = 14 (1110)
+28 + 19 = 15 (1111)
+28 + 20 = 0 (0000)
+28 + 21 = 1 (0001)
+28 + 22 = 2 (0010)
+28 + 23 = 3 (0011)
+28 + 24 = 4 (0100)
+28 + 25 = 5 (0101)
+28 + 26 = 6 (0110)
+28 + 27 = 7 (0111)
+28 + 28 = 8 (1000)
+28 + 29 = 9 (1001)
+28 + 30 = 10 (1010)
+28 + 31 = 11 (1011)
+28 + 32 = 12 (1100)
+28 + 33 = 13 (1101)
+28 + 34 = 14 (1110)
+28 + 35 = 15 (1111)
+28 + 36 = 0 (0000)
+28 + 37 = 1 (0001)
+28 + 38 = 2 (0010)
+28 + 39 = 3 (0011)
+28 + 40 = 4 (0100)
+28 + 41 = 5 (0101)
+28 + 42 = 6 (0110)
+28 + 43 = 7 (0111)
+28 + 44 = 8 (1000)
+28 + 45 = 9 (1001)
+28 + 46 = 10 (1010)
+28 + 47 = 11 (1011)
+28 + 48 = 12 (1100)
+28 + 49 = 13 (1101)
+28 + 50 = 14 (1110)
+28 + 51 = 15 (1111)
+28 + 52 = 0 (0000)
+28 + 53 = 1 (0001)
+28 + 54 = 2 (0010)
+28 + 55 = 3 (0011)
+28 + 56 = 4 (0100)
+28 + 57 = 5 (0101)
+28 + 58 = 6 (0110)
+28 + 59 = 7 (0111)
+28 + 60 = 8 (1000)
+28 + 61 = 9 (1001)
+28 + 62 = 10 (1010)
+28 + 63 = 11 (1011)
+29 + 0 = 13 (1101)
+29 + 1 = 14 (1110)
+29 + 2 = 15 (1111)
+29 + 3 = 0 (0000)
+29 + 4 = 1 (0001)
+29 + 5 = 2 (0010)
+29 + 6 = 3 (0011)
+29 + 7 = 4 (0100)
+29 + 8 = 5 (0101)
+29 + 9 = 6 (0110)
+29 + 10 = 7 (0111)
+29 + 11 = 8 (1000)
+29 + 12 = 9 (1001)
+29 + 13 = 10 (1010)
+29 + 14 = 11 (1011)
+29 + 15 = 12 (1100)
+29 + 16 = 13 (1101)
+29 + 17 = 14 (1110)
+29 + 18 = 15 (1111)
+29 + 19 = 0 (0000)
+29 + 20 = 1 (0001)
+29 + 21 = 2 (0010)
+29 + 22 = 3 (0011)
+29 + 23 = 4 (0100)
+29 + 24 = 5 (0101)
+29 + 25 = 6 (0110)
+29 + 26 = 7 (0111)
+29 + 27 = 8 (1000)
+29 + 28 = 9 (1001)
+29 + 29 = 10 (1010)
+29 + 30 = 11 (1011)
+29 + 31 = 12 (1100)
+29 + 32 = 13 (1101)
+29 + 33 = 14 (1110)
+29 + 34 = 15 (1111)
+29 + 35 = 0 (0000)
+29 + 36 = 1 (0001)
+29 + 37 = 2 (0010)
+29 + 38 = 3 (0011)
+29 + 39 = 4 (0100)
+29 + 40 = 5 (0101)
+29 + 41 = 6 (0110)
+29 + 42 = 7 (0111)
+29 + 43 = 8 (1000)
+29 + 44 = 9 (1001)
+29 + 45 = 10 (1010)
+29 + 46 = 11 (1011)
+29 + 47 = 12 (1100)
+29 + 48 = 13 (1101)
+29 + 49 = 14 (1110)
+29 + 50 = 15 (1111)
+29 + 51 = 0 (0000)
+29 + 52 = 1 (0001)
+29 + 53 = 2 (0010)
+29 + 54 = 3 (0011)
+29 + 55 = 4 (0100)
+29 + 56 = 5 (0101)
+29 + 57 = 6 (0110)
+29 + 58 = 7 (0111)
+29 + 59 = 8 (1000)
+29 + 60 = 9 (1001)
+29 + 61 = 10 (1010)
+29 + 62 = 11 (1011)
+29 + 63 = 12 (1100)
+30 + 0 = 14 (1110)
+30 + 1 = 15 (1111)
+30 + 2 = 0 (0000)
+30 + 3 = 1 (0001)
+30 + 4 = 2 (0010)
+30 + 5 = 3 (0011)
+30 + 6 = 4 (0100)
+30 + 7 = 5 (0101)
+30 + 8 = 6 (0110)
+30 + 9 = 7 (0111)
+30 + 10 = 8 (1000)
+30 + 11 = 9 (1001)
+30 + 12 = 10 (1010)
+30 + 13 = 11 (1011)
+30 + 14 = 12 (1100)
+30 + 15 = 13 (1101)
+30 + 16 = 14 (1110)
+30 + 17 = 15 (1111)
+30 + 18 = 0 (0000)
+30 + 19 = 1 (0001)
+30 + 20 = 2 (0010)
+30 + 21 = 3 (0011)
+30 + 22 = 4 (0100)
+30 + 23 = 5 (0101)
+30 + 24 = 6 (0110)
+30 + 25 = 7 (0111)
+30 + 26 = 8 (1000)
+30 + 27 = 9 (1001)
+30 + 28 = 10 (1010)
+30 + 29 = 11 (1011)
+30 + 30 = 12 (1100)
+30 + 31 = 13 (1101)
+30 + 32 = 14 (1110)
+30 + 33 = 15 (1111)
+30 + 34 = 0 (0000)
+30 + 35 = 1 (0001)
+30 + 36 = 2 (0010)
+30 + 37 = 3 (0011)
+30 + 38 = 4 (0100)
+30 + 39 = 5 (0101)
+30 + 40 = 6 (0110)
+30 + 41 = 7 (0111)
+30 + 42 = 8 (1000)
+30 + 43 = 9 (1001)
+30 + 44 = 10 (1010)
+30 + 45 = 11 (1011)
+30 + 46 = 12 (1100)
+30 + 47 = 13 (1101)
+30 + 48 = 14 (1110)
+30 + 49 = 15 (1111)
+30 + 50 = 0 (0000)
+30 + 51 = 1 (0001)
+30 + 52 = 2 (0010)
+30 + 53 = 3 (0011)
+30 + 54 = 4 (0100)
+30 + 55 = 5 (0101)
+30 + 56 = 6 (0110)
+30 + 57 = 7 (0111)
+30 + 58 = 8 (1000)
+30 + 59 = 9 (1001)
+30 + 60 = 10 (1010)
+30 + 61 = 11 (1011)
+30 + 62 = 12 (1100)
+30 + 63 = 13 (1101)
+31 + 0 = 15 (1111)
+31 + 1 = 0 (0000)
+31 + 2 = 1 (0001)
+31 + 3 = 2 (0010)
+31 + 4 = 3 (0011)
+31 + 5 = 4 (0100)
+31 + 6 = 5 (0101)
+31 + 7 = 6 (0110)
+31 + 8 = 7 (0111)
+31 + 9 = 8 (1000)
+31 + 10 = 9 (1001)
+31 + 11 = 10 (1010)
+31 + 12 = 11 (1011)
+31 + 13 = 12 (1100)
+31 + 14 = 13 (1101)
+31 + 15 = 14 (1110)
+31 + 16 = 15 (1111)
+31 + 17 = 0 (0000)
+31 + 18 = 1 (0001)
+31 + 19 = 2 (0010)
+31 + 20 = 3 (0011)
+31 + 21 = 4 (0100)
+31 + 22 = 5 (0101)
+31 + 23 = 6 (0110)
+31 + 24 = 7 (0111)
+31 + 25 = 8 (1000)
+31 + 26 = 9 (1001)
+31 + 27 = 10 (1010)
+31 + 28 = 11 (1011)
+31 + 29 = 12 (1100)
+31 + 30 = 13 (1101)
+31 + 31 = 14 (1110)
+31 + 32 = 15 (1111)
+31 + 33 = 0 (0000)
+31 + 34 = 1 (0001)
+31 + 35 = 2 (0010)
+31 + 36 = 3 (0011)
+31 + 37 = 4 (0100)
+31 + 38 = 5 (0101)
+31 + 39 = 6 (0110)
+31 + 40 = 7 (0111)
+31 + 41 = 8 (1000)
+31 + 42 = 9 (1001)
+31 + 43 = 10 (1010)
+31 + 44 = 11 (1011)
+31 + 45 = 12 (1100)
+31 + 46 = 13 (1101)
+31 + 47 = 14 (1110)
+31 + 48 = 15 (1111)
+31 + 49 = 0 (0000)
+31 + 50 = 1 (0001)
+31 + 51 = 2 (0010)
+31 + 52 = 3 (0011)
+31 + 53 = 4 (0100)
+31 + 54 = 5 (0101)
+31 + 55 = 6 (0110)
+31 + 56 = 7 (0111)
+31 + 57 = 8 (1000)
+31 + 58 = 9 (1001)
+31 + 59 = 10 (1010)
+31 + 60 = 11 (1011)
+31 + 61 = 12 (1100)
+31 + 62 = 13 (1101)
+31 + 63 = 14 (1110)
+32 + 0 = 0 (0000)
+32 + 1 = 1 (0001)
+32 + 2 = 2 (0010)
+32 + 3 = 3 (0011)
+32 + 4 = 4 (0100)
+32 + 5 = 5 (0101)
+32 + 6 = 6 (0110)
+32 + 7 = 7 (0111)
+32 + 8 = 8 (1000)
+32 + 9 = 9 (1001)
+32 + 10 = 10 (1010)
+32 + 11 = 11 (1011)
+32 + 12 = 12 (1100)
+32 + 13 = 13 (1101)
+32 + 14 = 14 (1110)
+32 + 15 = 15 (1111)
+32 + 16 = 0 (0000)
+32 + 17 = 1 (0001)
+32 + 18 = 2 (0010)
+32 + 19 = 3 (0011)
+32 + 20 = 4 (0100)
+32 + 21 = 5 (0101)
+32 + 22 = 6 (0110)
+32 + 23 = 7 (0111)
+32 + 24 = 8 (1000)
+32 + 25 = 9 (1001)
+32 + 26 = 10 (1010)
+32 + 27 = 11 (1011)
+32 + 28 = 12 (1100)
+32 + 29 = 13 (1101)
+32 + 30 = 14 (1110)
+32 + 31 = 15 (1111)
+32 + 32 = 0 (0000)
+32 + 33 = 1 (0001)
+32 + 34 = 2 (0010)
+32 + 35 = 3 (0011)
+32 + 36 = 4 (0100)
+32 + 37 = 5 (0101)
+32 + 38 = 6 (0110)
+32 + 39 = 7 (0111)
+32 + 40 = 8 (1000)
+32 + 41 = 9 (1001)
+32 + 42 = 10 (1010)
+32 + 43 = 11 (1011)
+32 + 44 = 12 (1100)
+32 + 45 = 13 (1101)
+32 + 46 = 14 (1110)
+32 + 47 = 15 (1111)
+32 + 48 = 0 (0000)
+32 + 49 = 1 (0001)
+32 + 50 = 2 (0010)
+32 + 51 = 3 (0011)
+32 + 52 = 4 (0100)
+32 + 53 = 5 (0101)
+32 + 54 = 6 (0110)
+32 + 55 = 7 (0111)
+32 + 56 = 8 (1000)
+32 + 57 = 9 (1001)
+32 + 58 = 10 (1010)
+32 + 59 = 11 (1011)
+32 + 60 = 12 (1100)
+32 + 61 = 13 (1101)
+32 + 62 = 14 (1110)
+32 + 63 = 15 (1111)
+33 + 0 = 1 (0001)
+33 + 1 = 2 (0010)
+33 + 2 = 3 (0011)
+33 + 3 = 4 (0100)
+33 + 4 = 5 (0101)
+33 + 5 = 6 (0110)
+33 + 6 = 7 (0111)
+33 + 7 = 8 (1000)
+33 + 8 = 9 (1001)
+33 + 9 = 10 (1010)
+33 + 10 = 11 (1011)
+33 + 11 = 12 (1100)
+33 + 12 = 13 (1101)
+33 + 13 = 14 (1110)
+33 + 14 = 15 (1111)
+33 + 15 = 0 (0000)
+33 + 16 = 1 (0001)
+33 + 17 = 2 (0010)
+33 + 18 = 3 (0011)
+33 + 19 = 4 (0100)
+33 + 20 = 5 (0101)
+33 + 21 = 6 (0110)
+33 + 22 = 7 (0111)
+33 + 23 = 8 (1000)
+33 + 24 = 9 (1001)
+33 + 25 = 10 (1010)
+33 + 26 = 11 (1011)
+33 + 27 = 12 (1100)
+33 + 28 = 13 (1101)
+33 + 29 = 14 (1110)
+33 + 30 = 15 (1111)
+33 + 31 = 0 (0000)
+33 + 32 = 1 (0001)
+33 + 33 = 2 (0010)
+33 + 34 = 3 (0011)
+33 + 35 = 4 (0100)
+33 + 36 = 5 (0101)
+33 + 37 = 6 (0110)
+33 + 38 = 7 (0111)
+33 + 39 = 8 (1000)
+33 + 40 = 9 (1001)
+33 + 41 = 10 (1010)
+33 + 42 = 11 (1011)
+33 + 43 = 12 (1100)
+33 + 44 = 13 (1101)
+33 + 45 = 14 (1110)
+33 + 46 = 15 (1111)
+33 + 47 = 0 (0000)
+33 + 48 = 1 (0001)
+33 + 49 = 2 (0010)
+33 + 50 = 3 (0011)
+33 + 51 = 4 (0100)
+33 + 52 = 5 (0101)
+33 + 53 = 6 (0110)
+33 + 54 = 7 (0111)
+33 + 55 = 8 (1000)
+33 + 56 = 9 (1001)
+33 + 57 = 10 (1010)
+33 + 58 = 11 (1011)
+33 + 59 = 12 (1100)
+33 + 60 = 13 (1101)
+33 + 61 = 14 (1110)
+33 + 62 = 15 (1111)
+33 + 63 = 0 (0000)
+34 + 0 = 2 (0010)
+34 + 1 = 3 (0011)
+34 + 2 = 4 (0100)
+34 + 3 = 5 (0101)
+34 + 4 = 6 (0110)
+34 + 5 = 7 (0111)
+34 + 6 = 8 (1000)
+34 + 7 = 9 (1001)
+34 + 8 = 10 (1010)
+34 + 9 = 11 (1011)
+34 + 10 = 12 (1100)
+34 + 11 = 13 (1101)
+34 + 12 = 14 (1110)
+34 + 13 = 15 (1111)
+34 + 14 = 0 (0000)
+34 + 15 = 1 (0001)
+34 + 16 = 2 (0010)
+34 + 17 = 3 (0011)
+34 + 18 = 4 (0100)
+34 + 19 = 5 (0101)
+34 + 20 = 6 (0110)
+34 + 21 = 7 (0111)
+34 + 22 = 8 (1000)
+34 + 23 = 9 (1001)
+34 + 24 = 10 (1010)
+34 + 25 = 11 (1011)
+34 + 26 = 12 (1100)
+34 + 27 = 13 (1101)
+34 + 28 = 14 (1110)
+34 + 29 = 15 (1111)
+34 + 30 = 0 (0000)
+34 + 31 = 1 (0001)
+34 + 32 = 2 (0010)
+34 + 33 = 3 (0011)
+34 + 34 = 4 (0100)
+34 + 35 = 5 (0101)
+34 + 36 = 6 (0110)
+34 + 37 = 7 (0111)
+34 + 38 = 8 (1000)
+34 + 39 = 9 (1001)
+34 + 40 = 10 (1010)
+34 + 41 = 11 (1011)
+34 + 42 = 12 (1100)
+34 + 43 = 13 (1101)
+34 + 44 = 14 (1110)
+34 + 45 = 15 (1111)
+34 + 46 = 0 (0000)
+34 + 47 = 1 (0001)
+34 + 48 = 2 (0010)
+34 + 49 = 3 (0011)
+34 + 50 = 4 (0100)
+34 + 51 = 5 (0101)
+34 + 52 = 6 (0110)
+34 + 53 = 7 (0111)
+34 + 54 = 8 (1000)
+34 + 55 = 9 (1001)
+34 + 56 = 10 (1010)
+34 + 57 = 11 (1011)
+34 + 58 = 12 (1100)
+34 + 59 = 13 (1101)
+34 + 60 = 14 (1110)
+34 + 61 = 15 (1111)
+34 + 62 = 0 (0000)
+34 + 63 = 1 (0001)
+35 + 0 = 3 (0011)
+35 + 1 = 4 (0100)
+35 + 2 = 5 (0101)
+35 + 3 = 6 (0110)
+35 + 4 = 7 (0111)
+35 + 5 = 8 (1000)
+35 + 6 = 9 (1001)
+35 + 7 = 10 (1010)
+35 + 8 = 11 (1011)
+35 + 9 = 12 (1100)
+35 + 10 = 13 (1101)
+35 + 11 = 14 (1110)
+35 + 12 = 15 (1111)
+35 + 13 = 0 (0000)
+35 + 14 = 1 (0001)
+35 + 15 = 2 (0010)
+35 + 16 = 3 (0011)
+35 + 17 = 4 (0100)
+35 + 18 = 5 (0101)
+35 + 19 = 6 (0110)
+35 + 20 = 7 (0111)
+35 + 21 = 8 (1000)
+35 + 22 = 9 (1001)
+35 + 23 = 10 (1010)
+35 + 24 = 11 (1011)
+35 + 25 = 12 (1100)
+35 + 26 = 13 (1101)
+35 + 27 = 14 (1110)
+35 + 28 = 15 (1111)
+35 + 29 = 0 (0000)
+35 + 30 = 1 (0001)
+35 + 31 = 2 (0010)
+35 + 32 = 3 (0011)
+35 + 33 = 4 (0100)
+35 + 34 = 5 (0101)
+35 + 35 = 6 (0110)
+35 + 36 = 7 (0111)
+35 + 37 = 8 (1000)
+35 + 38 = 9 (1001)
+35 + 39 = 10 (1010)
+35 + 40 = 11 (1011)
+35 + 41 = 12 (1100)
+35 + 42 = 13 (1101)
+35 + 43 = 14 (1110)
+35 + 44 = 15 (1111)
+35 + 45 = 0 (0000)
+35 + 46 = 1 (0001)
+35 + 47 = 2 (0010)
+35 + 48 = 3 (0011)
+35 + 49 = 4 (0100)
+35 + 50 = 5 (0101)
+35 + 51 = 6 (0110)
+35 + 52 = 7 (0111)
+35 + 53 = 8 (1000)
+35 + 54 = 9 (1001)
+35 + 55 = 10 (1010)
+35 + 56 = 11 (1011)
+35 + 57 = 12 (1100)
+35 + 58 = 13 (1101)
+35 + 59 = 14 (1110)
+35 + 60 = 15 (1111)
+35 + 61 = 0 (0000)
+35 + 62 = 1 (0001)
+35 + 63 = 2 (0010)
+36 + 0 = 4 (0100)
+36 + 1 = 5 (0101)
+36 + 2 = 6 (0110)
+36 + 3 = 7 (0111)
+36 + 4 = 8 (1000)
+36 + 5 = 9 (1001)
+36 + 6 = 10 (1010)
+36 + 7 = 11 (1011)
+36 + 8 = 12 (1100)
+36 + 9 = 13 (1101)
+36 + 10 = 14 (1110)
+36 + 11 = 15 (1111)
+36 + 12 = 0 (0000)
+36 + 13 = 1 (0001)
+36 + 14 = 2 (0010)
+36 + 15 = 3 (0011)
+36 + 16 = 4 (0100)
+36 + 17 = 5 (0101)
+36 + 18 = 6 (0110)
+36 + 19 = 7 (0111)
+36 + 20 = 8 (1000)
+36 + 21 = 9 (1001)
+36 + 22 = 10 (1010)
+36 + 23 = 11 (1011)
+36 + 24 = 12 (1100)
+36 + 25 = 13 (1101)
+36 + 26 = 14 (1110)
+36 + 27 = 15 (1111)
+36 + 28 = 0 (0000)
+36 + 29 = 1 (0001)
+36 + 30 = 2 (0010)
+36 + 31 = 3 (0011)
+36 + 32 = 4 (0100)
+36 + 33 = 5 (0101)
+36 + 34 = 6 (0110)
+36 + 35 = 7 (0111)
+36 + 36 = 8 (1000)
+36 + 37 = 9 (1001)
+36 + 38 = 10 (1010)
+36 + 39 = 11 (1011)
+36 + 40 = 12 (1100)
+36 + 41 = 13 (1101)
+36 + 42 = 14 (1110)
+36 + 43 = 15 (1111)
+36 + 44 = 0 (0000)
+36 + 45 = 1 (0001)
+36 + 46 = 2 (0010)
+36 + 47 = 3 (0011)
+36 + 48 = 4 (0100)
+36 + 49 = 5 (0101)
+36 + 50 = 6 (0110)
+36 + 51 = 7 (0111)
+36 + 52 = 8 (1000)
+36 + 53 = 9 (1001)
+36 + 54 = 10 (1010)
+36 + 55 = 11 (1011)
+36 + 56 = 12 (1100)
+36 + 57 = 13 (1101)
+36 + 58 = 14 (1110)
+36 + 59 = 15 (1111)
+36 + 60 = 0 (0000)
+36 + 61 = 1 (0001)
+36 + 62 = 2 (0010)
+36 + 63 = 3 (0011)
+37 + 0 = 5 (0101)
+37 + 1 = 6 (0110)
+37 + 2 = 7 (0111)
+37 + 3 = 8 (1000)
+37 + 4 = 9 (1001)
+37 + 5 = 10 (1010)
+37 + 6 = 11 (1011)
+37 + 7 = 12 (1100)
+37 + 8 = 13 (1101)
+37 + 9 = 14 (1110)
+37 + 10 = 15 (1111)
+37 + 11 = 0 (0000)
+37 + 12 = 1 (0001)
+37 + 13 = 2 (0010)
+37 + 14 = 3 (0011)
+37 + 15 = 4 (0100)
+37 + 16 = 5 (0101)
+37 + 17 = 6 (0110)
+37 + 18 = 7 (0111)
+37 + 19 = 8 (1000)
+37 + 20 = 9 (1001)
+37 + 21 = 10 (1010)
+37 + 22 = 11 (1011)
+37 + 23 = 12 (1100)
+37 + 24 = 13 (1101)
+37 + 25 = 14 (1110)
+37 + 26 = 15 (1111)
+37 + 27 = 0 (0000)
+37 + 28 = 1 (0001)
+37 + 29 = 2 (0010)
+37 + 30 = 3 (0011)
+37 + 31 = 4 (0100)
+37 + 32 = 5 (0101)
+37 + 33 = 6 (0110)
+37 + 34 = 7 (0111)
+37 + 35 = 8 (1000)
+37 + 36 = 9 (1001)
+37 + 37 = 10 (1010)
+37 + 38 = 11 (1011)
+37 + 39 = 12 (1100)
+37 + 40 = 13 (1101)
+37 + 41 = 14 (1110)
+37 + 42 = 15 (1111)
+37 + 43 = 0 (0000)
+37 + 44 = 1 (0001)
+37 + 45 = 2 (0010)
+37 + 46 = 3 (0011)
+37 + 47 = 4 (0100)
+37 + 48 = 5 (0101)
+37 + 49 = 6 (0110)
+37 + 50 = 7 (0111)
+37 + 51 = 8 (1000)
+37 + 52 = 9 (1001)
+37 + 53 = 10 (1010)
+37 + 54 = 11 (1011)
+37 + 55 = 12 (1100)
+37 + 56 = 13 (1101)
+37 + 57 = 14 (1110)
+37 + 58 = 15 (1111)
+37 + 59 = 0 (0000)
+37 + 60 = 1 (0001)
+37 + 61 = 2 (0010)
+37 + 62 = 3 (0011)
+37 + 63 = 4 (0100)
+38 + 0 = 6 (0110)
+38 + 1 = 7 (0111)
+38 + 2 = 8 (1000)
+38 + 3 = 9 (1001)
+38 + 4 = 10 (1010)
+38 + 5 = 11 (1011)
+38 + 6 = 12 (1100)
+38 + 7 = 13 (1101)
+38 + 8 = 14 (1110)
+38 + 9 = 15 (1111)
+38 + 10 = 0 (0000)
+38 + 11 = 1 (0001)
+38 + 12 = 2 (0010)
+38 + 13 = 3 (0011)
+38 + 14 = 4 (0100)
+38 + 15 = 5 (0101)
+38 + 16 = 6 (0110)
+38 + 17 = 7 (0111)
+38 + 18 = 8 (1000)
+38 + 19 = 9 (1001)
+38 + 20 = 10 (1010)
+38 + 21 = 11 (1011)
+38 + 22 = 12 (1100)
+38 + 23 = 13 (1101)
+38 + 24 = 14 (1110)
+38 + 25 = 15 (1111)
+38 + 26 = 0 (0000)
+38 + 27 = 1 (0001)
+38 + 28 = 2 (0010)
+38 + 29 = 3 (0011)
+38 + 30 = 4 (0100)
+38 + 31 = 5 (0101)
+38 + 32 = 6 (0110)
+38 + 33 = 7 (0111)
+38 + 34 = 8 (1000)
+38 + 35 = 9 (1001)
+38 + 36 = 10 (1010)
+38 + 37 = 11 (1011)
+38 + 38 = 12 (1100)
+38 + 39 = 13 (1101)
+38 + 40 = 14 (1110)
+38 + 41 = 15 (1111)
+38 + 42 = 0 (0000)
+38 + 43 = 1 (0001)
+38 + 44 = 2 (0010)
+38 + 45 = 3 (0011)
+38 + 46 = 4 (0100)
+38 + 47 = 5 (0101)
+38 + 48 = 6 (0110)
+38 + 49 = 7 (0111)
+38 + 50 = 8 (1000)
+38 + 51 = 9 (1001)
+38 + 52 = 10 (1010)
+38 + 53 = 11 (1011)
+38 + 54 = 12 (1100)
+38 + 55 = 13 (1101)
+38 + 56 = 14 (1110)
+38 + 57 = 15 (1111)
+38 + 58 = 0 (0000)
+38 + 59 = 1 (0001)
+38 + 60 = 2 (0010)
+38 + 61 = 3 (0011)
+38 + 62 = 4 (0100)
+38 + 63 = 5 (0101)
+39 + 0 = 7 (0111)
+39 + 1 = 8 (1000)
+39 + 2 = 9 (1001)
+39 + 3 = 10 (1010)
+39 + 4 = 11 (1011)
+39 + 5 = 12 (1100)
+39 + 6 = 13 (1101)
+39 + 7 = 14 (1110)
+39 + 8 = 15 (1111)
+39 + 9 = 0 (0000)
+39 + 10 = 1 (0001)
+39 + 11 = 2 (0010)
+39 + 12 = 3 (0011)
+39 + 13 = 4 (0100)
+39 + 14 = 5 (0101)
+39 + 15 = 6 (0110)
+39 + 16 = 7 (0111)
+39 + 17 = 8 (1000)
+39 + 18 = 9 (1001)
+39 + 19 = 10 (1010)
+39 + 20 = 11 (1011)
+39 + 21 = 12 (1100)
+39 + 22 = 13 (1101)
+39 + 23 = 14 (1110)
+39 + 24 = 15 (1111)
+39 + 25 = 0 (0000)
+39 + 26 = 1 (0001)
+39 + 27 = 2 (0010)
+39 + 28 = 3 (0011)
+39 + 29 = 4 (0100)
+39 + 30 = 5 (0101)
+39 + 31 = 6 (0110)
+39 + 32 = 7 (0111)
+39 + 33 = 8 (1000)
+39 + 34 = 9 (1001)
+39 + 35 = 10 (1010)
+39 + 36 = 11 (1011)
+39 + 37 = 12 (1100)
+39 + 38 = 13 (1101)
+39 + 39 = 14 (1110)
+39 + 40 = 15 (1111)
+39 + 41 = 0 (0000)
+39 + 42 = 1 (0001)
+39 + 43 = 2 (0010)
+39 + 44 = 3 (0011)
+39 + 45 = 4 (0100)
+39 + 46 = 5 (0101)
+39 + 47 = 6 (0110)
+39 + 48 = 7 (0111)
+39 + 49 = 8 (1000)
+39 + 50 = 9 (1001)
+39 + 51 = 10 (1010)
+39 + 52 = 11 (1011)
+39 + 53 = 12 (1100)
+39 + 54 = 13 (1101)
+39 + 55 = 14 (1110)
+39 + 56 = 15 (1111)
+39 + 57 = 0 (0000)
+39 + 58 = 1 (0001)
+39 + 59 = 2 (0010)
+39 + 60 = 3 (0011)
+39 + 61 = 4 (0100)
+39 + 62 = 5 (0101)
+39 + 63 = 6 (0110)
+40 + 0 = 8 (1000)
+40 + 1 = 9 (1001)
+40 + 2 = 10 (1010)
+40 + 3 = 11 (1011)
+40 + 4 = 12 (1100)
+40 + 5 = 13 (1101)
+40 + 6 = 14 (1110)
+40 + 7 = 15 (1111)
+40 + 8 = 0 (0000)
+40 + 9 = 1 (0001)
+40 + 10 = 2 (0010)
+40 + 11 = 3 (0011)
+40 + 12 = 4 (0100)
+40 + 13 = 5 (0101)
+40 + 14 = 6 (0110)
+40 + 15 = 7 (0111)
+40 + 16 = 8 (1000)
+40 + 17 = 9 (1001)
+40 + 18 = 10 (1010)
+40 + 19 = 11 (1011)
+40 + 20 = 12 (1100)
+40 + 21 = 13 (1101)
+40 + 22 = 14 (1110)
+40 + 23 = 15 (1111)
+40 + 24 = 0 (0000)
+40 + 25 = 1 (0001)
+40 + 26 = 2 (0010)
+40 + 27 = 3 (0011)
+40 + 28 = 4 (0100)
+40 + 29 = 5 (0101)
+40 + 30 = 6 (0110)
+40 + 31 = 7 (0111)
+40 + 32 = 8 (1000)
+40 + 33 = 9 (1001)
+40 + 34 = 10 (1010)
+40 + 35 = 11 (1011)
+40 + 36 = 12 (1100)
+40 + 37 = 13 (1101)
+40 + 38 = 14 (1110)
+40 + 39 = 15 (1111)
+40 + 40 = 0 (0000)
+40 + 41 = 1 (0001)
+40 + 42 = 2 (0010)
+40 + 43 = 3 (0011)
+40 + 44 = 4 (0100)
+40 + 45 = 5 (0101)
+40 + 46 = 6 (0110)
+40 + 47 = 7 (0111)
+40 + 48 = 8 (1000)
+40 + 49 = 9 (1001)
+40 + 50 = 10 (1010)
+40 + 51 = 11 (1011)
+40 + 52 = 12 (1100)
+40 + 53 = 13 (1101)
+40 + 54 = 14 (1110)
+40 + 55 = 15 (1111)
+40 + 56 = 0 (0000)
+40 + 57 = 1 (0001)
+40 + 58 = 2 (0010)
+40 + 59 = 3 (0011)
+40 + 60 = 4 (0100)
+40 + 61 = 5 (0101)
+40 + 62 = 6 (0110)
+40 + 63 = 7 (0111)
+41 + 0 = 9 (1001)
+41 + 1 = 10 (1010)
+41 + 2 = 11 (1011)
+41 + 3 = 12 (1100)
+41 + 4 = 13 (1101)
+41 + 5 = 14 (1110)
+41 + 6 = 15 (1111)
+41 + 7 = 0 (0000)
+41 + 8 = 1 (0001)
+41 + 9 = 2 (0010)
+41 + 10 = 3 (0011)
+41 + 11 = 4 (0100)
+41 + 12 = 5 (0101)
+41 + 13 = 6 (0110)
+41 + 14 = 7 (0111)
+41 + 15 = 8 (1000)
+41 + 16 = 9 (1001)
+41 + 17 = 10 (1010)
+41 + 18 = 11 (1011)
+41 + 19 = 12 (1100)
+41 + 20 = 13 (1101)
+41 + 21 = 14 (1110)
+41 + 22 = 15 (1111)
+41 + 23 = 0 (0000)
+41 + 24 = 1 (0001)
+41 + 25 = 2 (0010)
+41 + 26 = 3 (0011)
+41 + 27 = 4 (0100)
+41 + 28 = 5 (0101)
+41 + 29 = 6 (0110)
+41 + 30 = 7 (0111)
+41 + 31 = 8 (1000)
+41 + 32 = 9 (1001)
+41 + 33 = 10 (1010)
+41 + 34 = 11 (1011)
+41 + 35 = 12 (1100)
+41 + 36 = 13 (1101)
+41 + 37 = 14 (1110)
+41 + 38 = 15 (1111)
+41 + 39 = 0 (0000)
+41 + 40 = 1 (0001)
+41 + 41 = 2 (0010)
+41 + 42 = 3 (0011)
+41 + 43 = 4 (0100)
+41 + 44 = 5 (0101)
+41 + 45 = 6 (0110)
+41 + 46 = 7 (0111)
+41 + 47 = 8 (1000)
+41 + 48 = 9 (1001)
+41 + 49 = 10 (1010)
+41 + 50 = 11 (1011)
+41 + 51 = 12 (1100)
+41 + 52 = 13 (1101)
+41 + 53 = 14 (1110)
+41 + 54 = 15 (1111)
+41 + 55 = 0 (0000)
+41 + 56 = 1 (0001)
+41 + 57 = 2 (0010)
+41 + 58 = 3 (0011)
+41 + 59 = 4 (0100)
+41 + 60 = 5 (0101)
+41 + 61 = 6 (0110)
+41 + 62 = 7 (0111)
+41 + 63 = 8 (1000)
+42 + 0 = 10 (1010)
+42 + 1 = 11 (1011)
+42 + 2 = 12 (1100)
+42 + 3 = 13 (1101)
+42 + 4 = 14 (1110)
+42 + 5 = 15 (1111)
+42 + 6 = 0 (0000)
+42 + 7 = 1 (0001)
+42 + 8 = 2 (0010)
+42 + 9 = 3 (0011)
+42 + 10 = 4 (0100)
+42 + 11 = 5 (0101)
+42 + 12 = 6 (0110)
+42 + 13 = 7 (0111)
+42 + 14 = 8 (1000)
+42 + 15 = 9 (1001)
+42 + 16 = 10 (1010)
+42 + 17 = 11 (1011)
+42 + 18 = 12 (1100)
+42 + 19 = 13 (1101)
+42 + 20 = 14 (1110)
+42 + 21 = 15 (1111)
+42 + 22 = 0 (0000)
+42 + 23 = 1 (0001)
+42 + 24 = 2 (0010)
+42 + 25 = 3 (0011)
+42 + 26 = 4 (0100)
+42 + 27 = 5 (0101)
+42 + 28 = 6 (0110)
+42 + 29 = 7 (0111)
+42 + 30 = 8 (1000)
+42 + 31 = 9 (1001)
+42 + 32 = 10 (1010)
+42 + 33 = 11 (1011)
+42 + 34 = 12 (1100)
+42 + 35 = 13 (1101)
+42 + 36 = 14 (1110)
+42 + 37 = 15 (1111)
+42 + 38 = 0 (0000)
+42 + 39 = 1 (0001)
+42 + 40 = 2 (0010)
+42 + 41 = 3 (0011)
+42 + 42 = 4 (0100)
+42 + 43 = 5 (0101)
+42 + 44 = 6 (0110)
+42 + 45 = 7 (0111)
+42 + 46 = 8 (1000)
+42 + 47 = 9 (1001)
+42 + 48 = 10 (1010)
+42 + 49 = 11 (1011)
+42 + 50 = 12 (1100)
+42 + 51 = 13 (1101)
+42 + 52 = 14 (1110)
+42 + 53 = 15 (1111)
+42 + 54 = 0 (0000)
+42 + 55 = 1 (0001)
+42 + 56 = 2 (0010)
+42 + 57 = 3 (0011)
+42 + 58 = 4 (0100)
+42 + 59 = 5 (0101)
+42 + 60 = 6 (0110)
+42 + 61 = 7 (0111)
+42 + 62 = 8 (1000)
+42 + 63 = 9 (1001)
+43 + 0 = 11 (1011)
+43 + 1 = 12 (1100)
+43 + 2 = 13 (1101)
+43 + 3 = 14 (1110)
+43 + 4 = 15 (1111)
+43 + 5 = 0 (0000)
+43 + 6 = 1 (0001)
+43 + 7 = 2 (0010)
+43 + 8 = 3 (0011)
+43 + 9 = 4 (0100)
+43 + 10 = 5 (0101)
+43 + 11 = 6 (0110)
+43 + 12 = 7 (0111)
+43 + 13 = 8 (1000)
+43 + 14 = 9 (1001)
+43 + 15 = 10 (1010)
+43 + 16 = 11 (1011)
+43 + 17 = 12 (1100)
+43 + 18 = 13 (1101)
+43 + 19 = 14 (1110)
+43 + 20 = 15 (1111)
+43 + 21 = 0 (0000)
+43 + 22 = 1 (0001)
+43 + 23 = 2 (0010)
+43 + 24 = 3 (0011)
+43 + 25 = 4 (0100)
+43 + 26 = 5 (0101)
+43 + 27 = 6 (0110)
+43 + 28 = 7 (0111)
+43 + 29 = 8 (1000)
+43 + 30 = 9 (1001)
+43 + 31 = 10 (1010)
+43 + 32 = 11 (1011)
+43 + 33 = 12 (1100)
+43 + 34 = 13 (1101)
+43 + 35 = 14 (1110)
+43 + 36 = 15 (1111)
+43 + 37 = 0 (0000)
+43 + 38 = 1 (0001)
+43 + 39 = 2 (0010)
+43 + 40 = 3 (0011)
+43 + 41 = 4 (0100)
+43 + 42 = 5 (0101)
+43 + 43 = 6 (0110)
+43 + 44 = 7 (0111)
+43 + 45 = 8 (1000)
+43 + 46 = 9 (1001)
+43 + 47 = 10 (1010)
+43 + 48 = 11 (1011)
+43 + 49 = 12 (1100)
+43 + 50 = 13 (1101)
+43 + 51 = 14 (1110)
+43 + 52 = 15 (1111)
+43 + 53 = 0 (0000)
+43 + 54 = 1 (0001)
+43 + 55 = 2 (0010)
+43 + 56 = 3 (0011)
+43 + 57 = 4 (0100)
+43 + 58 = 5 (0101)
+43 + 59 = 6 (0110)
+43 + 60 = 7 (0111)
+43 + 61 = 8 (1000)
+43 + 62 = 9 (1001)
+43 + 63 = 10 (1010)
+44 + 0 = 12 (1100)
+44 + 1 = 13 (1101)
+44 + 2 = 14 (1110)
+44 + 3 = 15 (1111)
+44 + 4 = 0 (0000)
+44 + 5 = 1 (0001)
+44 + 6 = 2 (0010)
+44 + 7 = 3 (0011)
+44 + 8 = 4 (0100)
+44 + 9 = 5 (0101)
+44 + 10 = 6 (0110)
+44 + 11 = 7 (0111)
+44 + 12 = 8 (1000)
+44 + 13 = 9 (1001)
+44 + 14 = 10 (1010)
+44 + 15 = 11 (1011)
+44 + 16 = 12 (1100)
+44 + 17 = 13 (1101)
+44 + 18 = 14 (1110)
+44 + 19 = 15 (1111)
+44 + 20 = 0 (0000)
+44 + 21 = 1 (0001)
+44 + 22 = 2 (0010)
+44 + 23 = 3 (0011)
+44 + 24 = 4 (0100)
+44 + 25 = 5 (0101)
+44 + 26 = 6 (0110)
+44 + 27 = 7 (0111)
+44 + 28 = 8 (1000)
+44 + 29 = 9 (1001)
+44 + 30 = 10 (1010)
+44 + 31 = 11 (1011)
+44 + 32 = 12 (1100)
+44 + 33 = 13 (1101)
+44 + 34 = 14 (1110)
+44 + 35 = 15 (1111)
+44 + 36 = 0 (0000)
+44 + 37 = 1 (0001)
+44 + 38 = 2 (0010)
+44 + 39 = 3 (0011)
+44 + 40 = 4 (0100)
+44 + 41 = 5 (0101)
+44 + 42 = 6 (0110)
+44 + 43 = 7 (0111)
+44 + 44 = 8 (1000)
+44 + 45 = 9 (1001)
+44 + 46 = 10 (1010)
+44 + 47 = 11 (1011)
+44 + 48 = 12 (1100)
+44 + 49 = 13 (1101)
+44 + 50 = 14 (1110)
+44 + 51 = 15 (1111)
+44 + 52 = 0 (0000)
+44 + 53 = 1 (0001)
+44 + 54 = 2 (0010)
+44 + 55 = 3 (0011)
+44 + 56 = 4 (0100)
+44 + 57 = 5 (0101)
+44 + 58 = 6 (0110)
+44 + 59 = 7 (0111)
+44 + 60 = 8 (1000)
+44 + 61 = 9 (1001)
+44 + 62 = 10 (1010)
+44 + 63 = 11 (1011)
+45 + 0 = 13 (1101)
+45 + 1 = 14 (1110)
+45 + 2 = 15 (1111)
+45 + 3 = 0 (0000)
+45 + 4 = 1 (0001)
+45 + 5 = 2 (0010)
+45 + 6 = 3 (0011)
+45 + 7 = 4 (0100)
+45 + 8 = 5 (0101)
+45 + 9 = 6 (0110)
+45 + 10 = 7 (0111)
+45 + 11 = 8 (1000)
+45 + 12 = 9 (1001)
+45 + 13 = 10 (1010)
+45 + 14 = 11 (1011)
+45 + 15 = 12 (1100)
+45 + 16 = 13 (1101)
+45 + 17 = 14 (1110)
+45 + 18 = 15 (1111)
+45 + 19 = 0 (0000)
+45 + 20 = 1 (0001)
+45 + 21 = 2 (0010)
+45 + 22 = 3 (0011)
+45 + 23 = 4 (0100)
+45 + 24 = 5 (0101)
+45 + 25 = 6 (0110)
+45 + 26 = 7 (0111)
+45 + 27 = 8 (1000)
+45 + 28 = 9 (1001)
+45 + 29 = 10 (1010)
+45 + 30 = 11 (1011)
+45 + 31 = 12 (1100)
+45 + 32 = 13 (1101)
+45 + 33 = 14 (1110)
+45 + 34 = 15 (1111)
+45 + 35 = 0 (0000)
+45 + 36 = 1 (0001)
+45 + 37 = 2 (0010)
+45 + 38 = 3 (0011)
+45 + 39 = 4 (0100)
+45 + 40 = 5 (0101)
+45 + 41 = 6 (0110)
+45 + 42 = 7 (0111)
+45 + 43 = 8 (1000)
+45 + 44 = 9 (1001)
+45 + 45 = 10 (1010)
+45 + 46 = 11 (1011)
+45 + 47 = 12 (1100)
+45 + 48 = 13 (1101)
+45 + 49 = 14 (1110)
+45 + 50 = 15 (1111)
+45 + 51 = 0 (0000)
+45 + 52 = 1 (0001)
+45 + 53 = 2 (0010)
+45 + 54 = 3 (0011)
+45 + 55 = 4 (0100)
+45 + 56 = 5 (0101)
+45 + 57 = 6 (0110)
+45 + 58 = 7 (0111)
+45 + 59 = 8 (1000)
+45 + 60 = 9 (1001)
+45 + 61 = 10 (1010)
+45 + 62 = 11 (1011)
+45 + 63 = 12 (1100)
+46 + 0 = 14 (1110)
+46 + 1 = 15 (1111)
+46 + 2 = 0 (0000)
+46 + 3 = 1 (0001)
+46 + 4 = 2 (0010)
+46 + 5 = 3 (0011)
+46 + 6 = 4 (0100)
+46 + 7 = 5 (0101)
+46 + 8 = 6 (0110)
+46 + 9 = 7 (0111)
+46 + 10 = 8 (1000)
+46 + 11 = 9 (1001)
+46 + 12 = 10 (1010)
+46 + 13 = 11 (1011)
+46 + 14 = 12 (1100)
+46 + 15 = 13 (1101)
+46 + 16 = 14 (1110)
+46 + 17 = 15 (1111)
+46 + 18 = 0 (0000)
+46 + 19 = 1 (0001)
+46 + 20 = 2 (0010)
+46 + 21 = 3 (0011)
+46 + 22 = 4 (0100)
+46 + 23 = 5 (0101)
+46 + 24 = 6 (0110)
+46 + 25 = 7 (0111)
+46 + 26 = 8 (1000)
+46 + 27 = 9 (1001)
+46 + 28 = 10 (1010)
+46 + 29 = 11 (1011)
+46 + 30 = 12 (1100)
+46 + 31 = 13 (1101)
+46 + 32 = 14 (1110)
+46 + 33 = 15 (1111)
+46 + 34 = 0 (0000)
+46 + 35 = 1 (0001)
+46 + 36 = 2 (0010)
+46 + 37 = 3 (0011)
+46 + 38 = 4 (0100)
+46 + 39 = 5 (0101)
+46 + 40 = 6 (0110)
+46 + 41 = 7 (0111)
+46 + 42 = 8 (1000)
+46 + 43 = 9 (1001)
+46 + 44 = 10 (1010)
+46 + 45 = 11 (1011)
+46 + 46 = 12 (1100)
+46 + 47 = 13 (1101)
+46 + 48 = 14 (1110)
+46 + 49 = 15 (1111)
+46 + 50 = 0 (0000)
+46 + 51 = 1 (0001)
+46 + 52 = 2 (0010)
+46 + 53 = 3 (0011)
+46 + 54 = 4 (0100)
+46 + 55 = 5 (0101)
+46 + 56 = 6 (0110)
+46 + 57 = 7 (0111)
+46 + 58 = 8 (1000)
+46 + 59 = 9 (1001)
+46 + 60 = 10 (1010)
+46 + 61 = 11 (1011)
+46 + 62 = 12 (1100)
+46 + 63 = 13 (1101)
+47 + 0 = 15 (1111)
+47 + 1 = 0 (0000)
+47 + 2 = 1 (0001)
+47 + 3 = 2 (0010)
+47 + 4 = 3 (0011)
+47 + 5 = 4 (0100)
+47 + 6 = 5 (0101)
+47 + 7 = 6 (0110)
+47 + 8 = 7 (0111)
+47 + 9 = 8 (1000)
+47 + 10 = 9 (1001)
+47 + 11 = 10 (1010)
+47 + 12 = 11 (1011)
+47 + 13 = 12 (1100)
+47 + 14 = 13 (1101)
+47 + 15 = 14 (1110)
+47 + 16 = 15 (1111)
+47 + 17 = 0 (0000)
+47 + 18 = 1 (0001)
+47 + 19 = 2 (0010)
+47 + 20 = 3 (0011)
+47 + 21 = 4 (0100)
+47 + 22 = 5 (0101)
+47 + 23 = 6 (0110)
+47 + 24 = 7 (0111)
+47 + 25 = 8 (1000)
+47 + 26 = 9 (1001)
+47 + 27 = 10 (1010)
+47 + 28 = 11 (1011)
+47 + 29 = 12 (1100)
+47 + 30 = 13 (1101)
+47 + 31 = 14 (1110)
+47 + 32 = 15 (1111)
+47 + 33 = 0 (0000)
+47 + 34 = 1 (0001)
+47 + 35 = 2 (0010)
+47 + 36 = 3 (0011)
+47 + 37 = 4 (0100)
+47 + 38 = 5 (0101)
+47 + 39 = 6 (0110)
+47 + 40 = 7 (0111)
+47 + 41 = 8 (1000)
+47 + 42 = 9 (1001)
+47 + 43 = 10 (1010)
+47 + 44 = 11 (1011)
+47 + 45 = 12 (1100)
+47 + 46 = 13 (1101)
+47 + 47 = 14 (1110)
+47 + 48 = 15 (1111)
+47 + 49 = 0 (0000)
+47 + 50 = 1 (0001)
+47 + 51 = 2 (0010)
+47 + 52 = 3 (0011)
+47 + 53 = 4 (0100)
+47 + 54 = 5 (0101)
+47 + 55 = 6 (0110)
+47 + 56 = 7 (0111)
+47 + 57 = 8 (1000)
+47 + 58 = 9 (1001)
+47 + 59 = 10 (1010)
+47 + 60 = 11 (1011)
+47 + 61 = 12 (1100)
+47 + 62 = 13 (1101)
+47 + 63 = 14 (1110)
+48 + 0 = 0 (0000)
+48 + 1 = 1 (0001)
+48 + 2 = 2 (0010)
+48 + 3 = 3 (0011)
+48 + 4 = 4 (0100)
+48 + 5 = 5 (0101)
+48 + 6 = 6 (0110)
+48 + 7 = 7 (0111)
+48 + 8 = 8 (1000)
+48 + 9 = 9 (1001)
+48 + 10 = 10 (1010)
+48 + 11 = 11 (1011)
+48 + 12 = 12 (1100)
+48 + 13 = 13 (1101)
+48 + 14 = 14 (1110)
+48 + 15 = 15 (1111)
+48 + 16 = 0 (0000)
+48 + 17 = 1 (0001)
+48 + 18 = 2 (0010)
+48 + 19 = 3 (0011)
+48 + 20 = 4 (0100)
+48 + 21 = 5 (0101)
+48 + 22 = 6 (0110)
+48 + 23 = 7 (0111)
+48 + 24 = 8 (1000)
+48 + 25 = 9 (1001)
+48 + 26 = 10 (1010)
+48 + 27 = 11 (1011)
+48 + 28 = 12 (1100)
+48 + 29 = 13 (1101)
+48 + 30 = 14 (1110)
+48 + 31 = 15 (1111)
+48 + 32 = 0 (0000)
+48 + 33 = 1 (0001)
+48 + 34 = 2 (0010)
+48 + 35 = 3 (0011)
+48 + 36 = 4 (0100)
+48 + 37 = 5 (0101)
+48 + 38 = 6 (0110)
+48 + 39 = 7 (0111)
+48 + 40 = 8 (1000)
+48 + 41 = 9 (1001)
+48 + 42 = 10 (1010)
+48 + 43 = 11 (1011)
+48 + 44 = 12 (1100)
+48 + 45 = 13 (1101)
+48 + 46 = 14 (1110)
+48 + 47 = 15 (1111)
+48 + 48 = 0 (0000)
+48 + 49 = 1 (0001)
+48 + 50 = 2 (0010)
+48 + 51 = 3 (0011)
+48 + 52 = 4 (0100)
+48 + 53 = 5 (0101)
+48 + 54 = 6 (0110)
+48 + 55 = 7 (0111)
+48 + 56 = 8 (1000)
+48 + 57 = 9 (1001)
+48 + 58 = 10 (1010)
+48 + 59 = 11 (1011)
+48 + 60 = 12 (1100)
+48 + 61 = 13 (1101)
+48 + 62 = 14 (1110)
+48 + 63 = 15 (1111)
+49 + 0 = 1 (0001)
+49 + 1 = 2 (0010)
+49 + 2 = 3 (0011)
+49 + 3 = 4 (0100)
+49 + 4 = 5 (0101)
+49 + 5 = 6 (0110)
+49 + 6 = 7 (0111)
+49 + 7 = 8 (1000)
+49 + 8 = 9 (1001)
+49 + 9 = 10 (1010)
+49 + 10 = 11 (1011)
+49 + 11 = 12 (1100)
+49 + 12 = 13 (1101)
+49 + 13 = 14 (1110)
+49 + 14 = 15 (1111)
+49 + 15 = 0 (0000)
+49 + 16 = 1 (0001)
+49 + 17 = 2 (0010)
+49 + 18 = 3 (0011)
+49 + 19 = 4 (0100)
+49 + 20 = 5 (0101)
+49 + 21 = 6 (0110)
+49 + 22 = 7 (0111)
+49 + 23 = 8 (1000)
+49 + 24 = 9 (1001)
+49 + 25 = 10 (1010)
+49 + 26 = 11 (1011)
+49 + 27 = 12 (1100)
+49 + 28 = 13 (1101)
+49 + 29 = 14 (1110)
+49 + 30 = 15 (1111)
+49 + 31 = 0 (0000)
+49 + 32 = 1 (0001)
+49 + 33 = 2 (0010)
+49 + 34 = 3 (0011)
+49 + 35 = 4 (0100)
+49 + 36 = 5 (0101)
+49 + 37 = 6 (0110)
+49 + 38 = 7 (0111)
+49 + 39 = 8 (1000)
+49 + 40 = 9 (1001)
+49 + 41 = 10 (1010)
+49 + 42 = 11 (1011)
+49 + 43 = 12 (1100)
+49 + 44 = 13 (1101)
+49 + 45 = 14 (1110)
+49 + 46 = 15 (1111)
+49 + 47 = 0 (0000)
+49 + 48 = 1 (0001)
+49 + 49 = 2 (0010)
+49 + 50 = 3 (0011)
+49 + 51 = 4 (0100)
+49 + 52 = 5 (0101)
+49 + 53 = 6 (0110)
+49 + 54 = 7 (0111)
+49 + 55 = 8 (1000)
+49 + 56 = 9 (1001)
+49 + 57 = 10 (1010)
+49 + 58 = 11 (1011)
+49 + 59 = 12 (1100)
+49 + 60 = 13 (1101)
+49 + 61 = 14 (1110)
+49 + 62 = 15 (1111)
+49 + 63 = 0 (0000)
+50 + 0 = 2 (0010)
+50 + 1 = 3 (0011)
+50 + 2 = 4 (0100)
+50 + 3 = 5 (0101)
+50 + 4 = 6 (0110)
+50 + 5 = 7 (0111)
+50 + 6 = 8 (1000)
+50 + 7 = 9 (1001)
+50 + 8 = 10 (1010)
+50 + 9 = 11 (1011)
+50 + 10 = 12 (1100)
+50 + 11 = 13 (1101)
+50 + 12 = 14 (1110)
+50 + 13 = 15 (1111)
+50 + 14 = 0 (0000)
+50 + 15 = 1 (0001)
+50 + 16 = 2 (0010)
+50 + 17 = 3 (0011)
+50 + 18 = 4 (0100)
+50 + 19 = 5 (0101)
+50 + 20 = 6 (0110)
+50 + 21 = 7 (0111)
+50 + 22 = 8 (1000)
+50 + 23 = 9 (1001)
+50 + 24 = 10 (1010)
+50 + 25 = 11 (1011)
+50 + 26 = 12 (1100)
+50 + 27 = 13 (1101)
+50 + 28 = 14 (1110)
+50 + 29 = 15 (1111)
+50 + 30 = 0 (0000)
+50 + 31 = 1 (0001)
+50 + 32 = 2 (0010)
+50 + 33 = 3 (0011)
+50 + 34 = 4 (0100)
+50 + 35 = 5 (0101)
+50 + 36 = 6 (0110)
+50 + 37 = 7 (0111)
+50 + 38 = 8 (1000)
+50 + 39 = 9 (1001)
+50 + 40 = 10 (1010)
+50 + 41 = 11 (1011)
+50 + 42 = 12 (1100)
+50 + 43 = 13 (1101)
+50 + 44 = 14 (1110)
+50 + 45 = 15 (1111)
+50 + 46 = 0 (0000)
+50 + 47 = 1 (0001)
+50 + 48 = 2 (0010)
+50 + 49 = 3 (0011)
+50 + 50 = 4 (0100)
+50 + 51 = 5 (0101)
+50 + 52 = 6 (0110)
+50 + 53 = 7 (0111)
+50 + 54 = 8 (1000)
+50 + 55 = 9 (1001)
+50 + 56 = 10 (1010)
+50 + 57 = 11 (1011)
+50 + 58 = 12 (1100)
+50 + 59 = 13 (1101)
+50 + 60 = 14 (1110)
+50 + 61 = 15 (1111)
+50 + 62 = 0 (0000)
+50 + 63 = 1 (0001)
+51 + 0 = 3 (0011)
+51 + 1 = 4 (0100)
+51 + 2 = 5 (0101)
+51 + 3 = 6 (0110)
+51 + 4 = 7 (0111)
+51 + 5 = 8 (1000)
+51 + 6 = 9 (1001)
+51 + 7 = 10 (1010)
+51 + 8 = 11 (1011)
+51 + 9 = 12 (1100)
+51 + 10 = 13 (1101)
+51 + 11 = 14 (1110)
+51 + 12 = 15 (1111)
+51 + 13 = 0 (0000)
+51 + 14 = 1 (0001)
+51 + 15 = 2 (0010)
+51 + 16 = 3 (0011)
+51 + 17 = 4 (0100)
+51 + 18 = 5 (0101)
+51 + 19 = 6 (0110)
+51 + 20 = 7 (0111)
+51 + 21 = 8 (1000)
+51 + 22 = 9 (1001)
+51 + 23 = 10 (1010)
+51 + 24 = 11 (1011)
+51 + 25 = 12 (1100)
+51 + 26 = 13 (1101)
+51 + 27 = 14 (1110)
+51 + 28 = 15 (1111)
+51 + 29 = 0 (0000)
+51 + 30 = 1 (0001)
+51 + 31 = 2 (0010)
+51 + 32 = 3 (0011)
+51 + 33 = 4 (0100)
+51 + 34 = 5 (0101)
+51 + 35 = 6 (0110)
+51 + 36 = 7 (0111)
+51 + 37 = 8 (1000)
+51 + 38 = 9 (1001)
+51 + 39 = 10 (1010)
+51 + 40 = 11 (1011)
+51 + 41 = 12 (1100)
+51 + 42 = 13 (1101)
+51 + 43 = 14 (1110)
+51 + 44 = 15 (1111)
+51 + 45 = 0 (0000)
+51 + 46 = 1 (0001)
+51 + 47 = 2 (0010)
+51 + 48 = 3 (0011)
+51 + 49 = 4 (0100)
+51 + 50 = 5 (0101)
+51 + 51 = 6 (0110)
+51 + 52 = 7 (0111)
+51 + 53 = 8 (1000)
+51 + 54 = 9 (1001)
+51 + 55 = 10 (1010)
+51 + 56 = 11 (1011)
+51 + 57 = 12 (1100)
+51 + 58 = 13 (1101)
+51 + 59 = 14 (1110)
+51 + 60 = 15 (1111)
+51 + 61 = 0 (0000)
+51 + 62 = 1 (0001)
+51 + 63 = 2 (0010)
+52 + 0 = 4 (0100)
+52 + 1 = 5 (0101)
+52 + 2 = 6 (0110)
+52 + 3 = 7 (0111)
+52 + 4 = 8 (1000)
+52 + 5 = 9 (1001)
+52 + 6 = 10 (1010)
+52 + 7 = 11 (1011)
+52 + 8 = 12 (1100)
+52 + 9 = 13 (1101)
+52 + 10 = 14 (1110)
+52 + 11 = 15 (1111)
+52 + 12 = 0 (0000)
+52 + 13 = 1 (0001)
+52 + 14 = 2 (0010)
+52 + 15 = 3 (0011)
+52 + 16 = 4 (0100)
+52 + 17 = 5 (0101)
+52 + 18 = 6 (0110)
+52 + 19 = 7 (0111)
+52 + 20 = 8 (1000)
+52 + 21 = 9 (1001)
+52 + 22 = 10 (1010)
+52 + 23 = 11 (1011)
+52 + 24 = 12 (1100)
+52 + 25 = 13 (1101)
+52 + 26 = 14 (1110)
+52 + 27 = 15 (1111)
+52 + 28 = 0 (0000)
+52 + 29 = 1 (0001)
+52 + 30 = 2 (0010)
+52 + 31 = 3 (0011)
+52 + 32 = 4 (0100)
+52 + 33 = 5 (0101)
+52 + 34 = 6 (0110)
+52 + 35 = 7 (0111)
+52 + 36 = 8 (1000)
+52 + 37 = 9 (1001)
+52 + 38 = 10 (1010)
+52 + 39 = 11 (1011)
+52 + 40 = 12 (1100)
+52 + 41 = 13 (1101)
+52 + 42 = 14 (1110)
+52 + 43 = 15 (1111)
+52 + 44 = 0 (0000)
+52 + 45 = 1 (0001)
+52 + 46 = 2 (0010)
+52 + 47 = 3 (0011)
+52 + 48 = 4 (0100)
+52 + 49 = 5 (0101)
+52 + 50 = 6 (0110)
+52 + 51 = 7 (0111)
+52 + 52 = 8 (1000)
+52 + 53 = 9 (1001)
+52 + 54 = 10 (1010)
+52 + 55 = 11 (1011)
+52 + 56 = 12 (1100)
+52 + 57 = 13 (1101)
+52 + 58 = 14 (1110)
+52 + 59 = 15 (1111)
+52 + 60 = 0 (0000)
+52 + 61 = 1 (0001)
+52 + 62 = 2 (0010)
+52 + 63 = 3 (0011)
+53 + 0 = 5 (0101)
+53 + 1 = 6 (0110)
+53 + 2 = 7 (0111)
+53 + 3 = 8 (1000)
+53 + 4 = 9 (1001)
+53 + 5 = 10 (1010)
+53 + 6 = 11 (1011)
+53 + 7 = 12 (1100)
+53 + 8 = 13 (1101)
+53 + 9 = 14 (1110)
+53 + 10 = 15 (1111)
+53 + 11 = 0 (0000)
+53 + 12 = 1 (0001)
+53 + 13 = 2 (0010)
+53 + 14 = 3 (0011)
+53 + 15 = 4 (0100)
+53 + 16 = 5 (0101)
+53 + 17 = 6 (0110)
+53 + 18 = 7 (0111)
+53 + 19 = 8 (1000)
+53 + 20 = 9 (1001)
+53 + 21 = 10 (1010)
+53 + 22 = 11 (1011)
+53 + 23 = 12 (1100)
+53 + 24 = 13 (1101)
+53 + 25 = 14 (1110)
+53 + 26 = 15 (1111)
+53 + 27 = 0 (0000)
+53 + 28 = 1 (0001)
+53 + 29 = 2 (0010)
+53 + 30 = 3 (0011)
+53 + 31 = 4 (0100)
+53 + 32 = 5 (0101)
+53 + 33 = 6 (0110)
+53 + 34 = 7 (0111)
+53 + 35 = 8 (1000)
+53 + 36 = 9 (1001)
+53 + 37 = 10 (1010)
+53 + 38 = 11 (1011)
+53 + 39 = 12 (1100)
+53 + 40 = 13 (1101)
+53 + 41 = 14 (1110)
+53 + 42 = 15 (1111)
+53 + 43 = 0 (0000)
+53 + 44 = 1 (0001)
+53 + 45 = 2 (0010)
+53 + 46 = 3 (0011)
+53 + 47 = 4 (0100)
+53 + 48 = 5 (0101)
+53 + 49 = 6 (0110)
+53 + 50 = 7 (0111)
+53 + 51 = 8 (1000)
+53 + 52 = 9 (1001)
+53 + 53 = 10 (1010)
+53 + 54 = 11 (1011)
+53 + 55 = 12 (1100)
+53 + 56 = 13 (1101)
+53 + 57 = 14 (1110)
+53 + 58 = 15 (1111)
+53 + 59 = 0 (0000)
+53 + 60 = 1 (0001)
+53 + 61 = 2 (0010)
+53 + 62 = 3 (0011)
+53 + 63 = 4 (0100)
+54 + 0 = 6 (0110)
+54 + 1 = 7 (0111)
+54 + 2 = 8 (1000)
+54 + 3 = 9 (1001)
+54 + 4 = 10 (1010)
+54 + 5 = 11 (1011)
+54 + 6 = 12 (1100)
+54 + 7 = 13 (1101)
+54 + 8 = 14 (1110)
+54 + 9 = 15 (1111)
+54 + 10 = 0 (0000)
+54 + 11 = 1 (0001)
+54 + 12 = 2 (0010)
+54 + 13 = 3 (0011)
+54 + 14 = 4 (0100)
+54 + 15 = 5 (0101)
+54 + 16 = 6 (0110)
+54 + 17 = 7 (0111)
+54 + 18 = 8 (1000)
+54 + 19 = 9 (1001)
+54 + 20 = 10 (1010)
+54 + 21 = 11 (1011)
+54 + 22 = 12 (1100)
+54 + 23 = 13 (1101)
+54 + 24 = 14 (1110)
+54 + 25 = 15 (1111)
+54 + 26 = 0 (0000)
+54 + 27 = 1 (0001)
+54 + 28 = 2 (0010)
+54 + 29 = 3 (0011)
+54 + 30 = 4 (0100)
+54 + 31 = 5 (0101)
+54 + 32 = 6 (0110)
+54 + 33 = 7 (0111)
+54 + 34 = 8 (1000)
+54 + 35 = 9 (1001)
+54 + 36 = 10 (1010)
+54 + 37 = 11 (1011)
+54 + 38 = 12 (1100)
+54 + 39 = 13 (1101)
+54 + 40 = 14 (1110)
+54 + 41 = 15 (1111)
+54 + 42 = 0 (0000)
+54 + 43 = 1 (0001)
+54 + 44 = 2 (0010)
+54 + 45 = 3 (0011)
+54 + 46 = 4 (0100)
+54 + 47 = 5 (0101)
+54 + 48 = 6 (0110)
+54 + 49 = 7 (0111)
+54 + 50 = 8 (1000)
+54 + 51 = 9 (1001)
+54 + 52 = 10 (1010)
+54 + 53 = 11 (1011)
+54 + 54 = 12 (1100)
+54 + 55 = 13 (1101)
+54 + 56 = 14 (1110)
+54 + 57 = 15 (1111)
+54 + 58 = 0 (0000)
+54 + 59 = 1 (0001)
+54 + 60 = 2 (0010)
+54 + 61 = 3 (0011)
+54 + 62 = 4 (0100)
+54 + 63 = 5 (0101)
+55 + 0 = 7 (0111)
+55 + 1 = 8 (1000)
+55 + 2 = 9 (1001)
+55 + 3 = 10 (1010)
+55 + 4 = 11 (1011)
+55 + 5 = 12 (1100)
+55 + 6 = 13 (1101)
+55 + 7 = 14 (1110)
+55 + 8 = 15 (1111)
+55 + 9 = 0 (0000)
+55 + 10 = 1 (0001)
+55 + 11 = 2 (0010)
+55 + 12 = 3 (0011)
+55 + 13 = 4 (0100)
+55 + 14 = 5 (0101)
+55 + 15 = 6 (0110)
+55 + 16 = 7 (0111)
+55 + 17 = 8 (1000)
+55 + 18 = 9 (1001)
+55 + 19 = 10 (1010)
+55 + 20 = 11 (1011)
+55 + 21 = 12 (1100)
+55 + 22 = 13 (1101)
+55 + 23 = 14 (1110)
+55 + 24 = 15 (1111)
+55 + 25 = 0 (0000)
+55 + 26 = 1 (0001)
+55 + 27 = 2 (0010)
+55 + 28 = 3 (0011)
+55 + 29 = 4 (0100)
+55 + 30 = 5 (0101)
+55 + 31 = 6 (0110)
+55 + 32 = 7 (0111)
+55 + 33 = 8 (1000)
+55 + 34 = 9 (1001)
+55 + 35 = 10 (1010)
+55 + 36 = 11 (1011)
+55 + 37 = 12 (1100)
+55 + 38 = 13 (1101)
+55 + 39 = 14 (1110)
+55 + 40 = 15 (1111)
+55 + 41 = 0 (0000)
+55 + 42 = 1 (0001)
+55 + 43 = 2 (0010)
+55 + 44 = 3 (0011)
+55 + 45 = 4 (0100)
+55 + 46 = 5 (0101)
+55 + 47 = 6 (0110)
+55 + 48 = 7 (0111)
+55 + 49 = 8 (1000)
+55 + 50 = 9 (1001)
+55 + 51 = 10 (1010)
+55 + 52 = 11 (1011)
+55 + 53 = 12 (1100)
+55 + 54 = 13 (1101)
+55 + 55 = 14 (1110)
+55 + 56 = 15 (1111)
+55 + 57 = 0 (0000)
+55 + 58 = 1 (0001)
+55 + 59 = 2 (0010)
+55 + 60 = 3 (0011)
+55 + 61 = 4 (0100)
+55 + 62 = 5 (0101)
+55 + 63 = 6 (0110)
+56 + 0 = 8 (1000)
+56 + 1 = 9 (1001)
+56 + 2 = 10 (1010)
+56 + 3 = 11 (1011)
+56 + 4 = 12 (1100)
+56 + 5 = 13 (1101)
+56 + 6 = 14 (1110)
+56 + 7 = 15 (1111)
+56 + 8 = 0 (0000)
+56 + 9 = 1 (0001)
+56 + 10 = 2 (0010)
+56 + 11 = 3 (0011)
+56 + 12 = 4 (0100)
+56 + 13 = 5 (0101)
+56 + 14 = 6 (0110)
+56 + 15 = 7 (0111)
+56 + 16 = 8 (1000)
+56 + 17 = 9 (1001)
+56 + 18 = 10 (1010)
+56 + 19 = 11 (1011)
+56 + 20 = 12 (1100)
+56 + 21 = 13 (1101)
+56 + 22 = 14 (1110)
+56 + 23 = 15 (1111)
+56 + 24 = 0 (0000)
+56 + 25 = 1 (0001)
+56 + 26 = 2 (0010)
+56 + 27 = 3 (0011)
+56 + 28 = 4 (0100)
+56 + 29 = 5 (0101)
+56 + 30 = 6 (0110)
+56 + 31 = 7 (0111)
+56 + 32 = 8 (1000)
+56 + 33 = 9 (1001)
+56 + 34 = 10 (1010)
+56 + 35 = 11 (1011)
+56 + 36 = 12 (1100)
+56 + 37 = 13 (1101)
+56 + 38 = 14 (1110)
+56 + 39 = 15 (1111)
+56 + 40 = 0 (0000)
+56 + 41 = 1 (0001)
+56 + 42 = 2 (0010)
+56 + 43 = 3 (0011)
+56 + 44 = 4 (0100)
+56 + 45 = 5 (0101)
+56 + 46 = 6 (0110)
+56 + 47 = 7 (0111)
+56 + 48 = 8 (1000)
+56 + 49 = 9 (1001)
+56 + 50 = 10 (1010)
+56 + 51 = 11 (1011)
+56 + 52 = 12 (1100)
+56 + 53 = 13 (1101)
+56 + 54 = 14 (1110)
+56 + 55 = 15 (1111)
+56 + 56 = 0 (0000)
+56 + 57 = 1 (0001)
+56 + 58 = 2 (0010)
+56 + 59 = 3 (0011)
+56 + 60 = 4 (0100)
+56 + 61 = 5 (0101)
+56 + 62 = 6 (0110)
+56 + 63 = 7 (0111)
+57 + 0 = 9 (1001)
+57 + 1 = 10 (1010)
+57 + 2 = 11 (1011)
+57 + 3 = 12 (1100)
+57 + 4 = 13 (1101)
+57 + 5 = 14 (1110)
+57 + 6 = 15 (1111)
+57 + 7 = 0 (0000)
+57 + 8 = 1 (0001)
+57 + 9 = 2 (0010)
+57 + 10 = 3 (0011)
+57 + 11 = 4 (0100)
+57 + 12 = 5 (0101)
+57 + 13 = 6 (0110)
+57 + 14 = 7 (0111)
+57 + 15 = 8 (1000)
+57 + 16 = 9 (1001)
+57 + 17 = 10 (1010)
+57 + 18 = 11 (1011)
+57 + 19 = 12 (1100)
+57 + 20 = 13 (1101)
+57 + 21 = 14 (1110)
+57 + 22 = 15 (1111)
+57 + 23 = 0 (0000)
+57 + 24 = 1 (0001)
+57 + 25 = 2 (0010)
+57 + 26 = 3 (0011)
+57 + 27 = 4 (0100)
+57 + 28 = 5 (0101)
+57 + 29 = 6 (0110)
+57 + 30 = 7 (0111)
+57 + 31 = 8 (1000)
+57 + 32 = 9 (1001)
+57 + 33 = 10 (1010)
+57 + 34 = 11 (1011)
+57 + 35 = 12 (1100)
+57 + 36 = 13 (1101)
+57 + 37 = 14 (1110)
+57 + 38 = 15 (1111)
+57 + 39 = 0 (0000)
+57 + 40 = 1 (0001)
+57 + 41 = 2 (0010)
+57 + 42 = 3 (0011)
+57 + 43 = 4 (0100)
+57 + 44 = 5 (0101)
+57 + 45 = 6 (0110)
+57 + 46 = 7 (0111)
+57 + 47 = 8 (1000)
+57 + 48 = 9 (1001)
+57 + 49 = 10 (1010)
+57 + 50 = 11 (1011)
+57 + 51 = 12 (1100)
+57 + 52 = 13 (1101)
+57 + 53 = 14 (1110)
+57 + 54 = 15 (1111)
+57 + 55 = 0 (0000)
+57 + 56 = 1 (0001)
+57 + 57 = 2 (0010)
+57 + 58 = 3 (0011)
+57 + 59 = 4 (0100)
+57 + 60 = 5 (0101)
+57 + 61 = 6 (0110)
+57 + 62 = 7 (0111)
+57 + 63 = 8 (1000)
+58 + 0 = 10 (1010)
+58 + 1 = 11 (1011)
+58 + 2 = 12 (1100)
+58 + 3 = 13 (1101)
+58 + 4 = 14 (1110)
+58 + 5 = 15 (1111)
+58 + 6 = 0 (0000)
+58 + 7 = 1 (0001)
+58 + 8 = 2 (0010)
+58 + 9 = 3 (0011)
+58 + 10 = 4 (0100)
+58 + 11 = 5 (0101)
+58 + 12 = 6 (0110)
+58 + 13 = 7 (0111)
+58 + 14 = 8 (1000)
+58 + 15 = 9 (1001)
+58 + 16 = 10 (1010)
+58 + 17 = 11 (1011)
+58 + 18 = 12 (1100)
+58 + 19 = 13 (1101)
+58 + 20 = 14 (1110)
+58 + 21 = 15 (1111)
+58 + 22 = 0 (0000)
+58 + 23 = 1 (0001)
+58 + 24 = 2 (0010)
+58 + 25 = 3 (0011)
+58 + 26 = 4 (0100)
+58 + 27 = 5 (0101)
+58 + 28 = 6 (0110)
+58 + 29 = 7 (0111)
+58 + 30 = 8 (1000)
+58 + 31 = 9 (1001)
+58 + 32 = 10 (1010)
+58 + 33 = 11 (1011)
+58 + 34 = 12 (1100)
+58 + 35 = 13 (1101)
+58 + 36 = 14 (1110)
+58 + 37 = 15 (1111)
+58 + 38 = 0 (0000)
+58 + 39 = 1 (0001)
+58 + 40 = 2 (0010)
+58 + 41 = 3 (0011)
+58 + 42 = 4 (0100)
+58 + 43 = 5 (0101)
+58 + 44 = 6 (0110)
+58 + 45 = 7 (0111)
+58 + 46 = 8 (1000)
+58 + 47 = 9 (1001)
+58 + 48 = 10 (1010)
+58 + 49 = 11 (1011)
+58 + 50 = 12 (1100)
+58 + 51 = 13 (1101)
+58 + 52 = 14 (1110)
+58 + 53 = 15 (1111)
+58 + 54 = 0 (0000)
+58 + 55 = 1 (0001)
+58 + 56 = 2 (0010)
+58 + 57 = 3 (0011)
+58 + 58 = 4 (0100)
+58 + 59 = 5 (0101)
+58 + 60 = 6 (0110)
+58 + 61 = 7 (0111)
+58 + 62 = 8 (1000)
+58 + 63 = 9 (1001)
+59 + 0 = 11 (1011)
+59 + 1 = 12 (1100)
+59 + 2 = 13 (1101)
+59 + 3 = 14 (1110)
+59 + 4 = 15 (1111)
+59 + 5 = 0 (0000)
+59 + 6 = 1 (0001)
+59 + 7 = 2 (0010)
+59 + 8 = 3 (0011)
+59 + 9 = 4 (0100)
+59 + 10 = 5 (0101)
+59 + 11 = 6 (0110)
+59 + 12 = 7 (0111)
+59 + 13 = 8 (1000)
+59 + 14 = 9 (1001)
+59 + 15 = 10 (1010)
+59 + 16 = 11 (1011)
+59 + 17 = 12 (1100)
+59 + 18 = 13 (1101)
+59 + 19 = 14 (1110)
+59 + 20 = 15 (1111)
+59 + 21 = 0 (0000)
+59 + 22 = 1 (0001)
+59 + 23 = 2 (0010)
+59 + 24 = 3 (0011)
+59 + 25 = 4 (0100)
+59 + 26 = 5 (0101)
+59 + 27 = 6 (0110)
+59 + 28 = 7 (0111)
+59 + 29 = 8 (1000)
+59 + 30 = 9 (1001)
+59 + 31 = 10 (1010)
+59 + 32 = 11 (1011)
+59 + 33 = 12 (1100)
+59 + 34 = 13 (1101)
+59 + 35 = 14 (1110)
+59 + 36 = 15 (1111)
+59 + 37 = 0 (0000)
+59 + 38 = 1 (0001)
+59 + 39 = 2 (0010)
+59 + 40 = 3 (0011)
+59 + 41 = 4 (0100)
+59 + 42 = 5 (0101)
+59 + 43 = 6 (0110)
+59 + 44 = 7 (0111)
+59 + 45 = 8 (1000)
+59 + 46 = 9 (1001)
+59 + 47 = 10 (1010)
+59 + 48 = 11 (1011)
+59 + 49 = 12 (1100)
+59 + 50 = 13 (1101)
+59 + 51 = 14 (1110)
+59 + 52 = 15 (1111)
+59 + 53 = 0 (0000)
+59 + 54 = 1 (0001)
+59 + 55 = 2 (0010)
+59 + 56 = 3 (0011)
+59 + 57 = 4 (0100)
+59 + 58 = 5 (0101)
+59 + 59 = 6 (0110)
+59 + 60 = 7 (0111)
+59 + 61 = 8 (1000)
+59 + 62 = 9 (1001)
+59 + 63 = 10 (1010)
+60 + 0 = 12 (1100)
+60 + 1 = 13 (1101)
+60 + 2 = 14 (1110)
+60 + 3 = 15 (1111)
+60 + 4 = 0 (0000)
+60 + 5 = 1 (0001)
+60 + 6 = 2 (0010)
+60 + 7 = 3 (0011)
+60 + 8 = 4 (0100)
+60 + 9 = 5 (0101)
+60 + 10 = 6 (0110)
+60 + 11 = 7 (0111)
+60 + 12 = 8 (1000)
+60 + 13 = 9 (1001)
+60 + 14 = 10 (1010)
+60 + 15 = 11 (1011)
+60 + 16 = 12 (1100)
+60 + 17 = 13 (1101)
+60 + 18 = 14 (1110)
+60 + 19 = 15 (1111)
+60 + 20 = 0 (0000)
+60 + 21 = 1 (0001)
+60 + 22 = 2 (0010)
+60 + 23 = 3 (0011)
+60 + 24 = 4 (0100)
+60 + 25 = 5 (0101)
+60 + 26 = 6 (0110)
+60 + 27 = 7 (0111)
+60 + 28 = 8 (1000)
+60 + 29 = 9 (1001)
+60 + 30 = 10 (1010)
+60 + 31 = 11 (1011)
+60 + 32 = 12 (1100)
+60 + 33 = 13 (1101)
+60 + 34 = 14 (1110)
+60 + 35 = 15 (1111)
+60 + 36 = 0 (0000)
+60 + 37 = 1 (0001)
+60 + 38 = 2 (0010)
+60 + 39 = 3 (0011)
+60 + 40 = 4 (0100)
+60 + 41 = 5 (0101)
+60 + 42 = 6 (0110)
+60 + 43 = 7 (0111)
+60 + 44 = 8 (1000)
+60 + 45 = 9 (1001)
+60 + 46 = 10 (1010)
+60 + 47 = 11 (1011)
+60 + 48 = 12 (1100)
+60 + 49 = 13 (1101)
+60 + 50 = 14 (1110)
+60 + 51 = 15 (1111)
+60 + 52 = 0 (0000)
+60 + 53 = 1 (0001)
+60 + 54 = 2 (0010)
+60 + 55 = 3 (0011)
+60 + 56 = 4 (0100)
+60 + 57 = 5 (0101)
+60 + 58 = 6 (0110)
+60 + 59 = 7 (0111)
+60 + 60 = 8 (1000)
+60 + 61 = 9 (1001)
+60 + 62 = 10 (1010)
+60 + 63 = 11 (1011)
+61 + 0 = 13 (1101)
+61 + 1 = 14 (1110)
+61 + 2 = 15 (1111)
+61 + 3 = 0 (0000)
+61 + 4 = 1 (0001)
+61 + 5 = 2 (0010)
+61 + 6 = 3 (0011)
+61 + 7 = 4 (0100)
+61 + 8 = 5 (0101)
+61 + 9 = 6 (0110)
+61 + 10 = 7 (0111)
+61 + 11 = 8 (1000)
+61 + 12 = 9 (1001)
+61 + 13 = 10 (1010)
+61 + 14 = 11 (1011)
+61 + 15 = 12 (1100)
+61 + 16 = 13 (1101)
+61 + 17 = 14 (1110)
+61 + 18 = 15 (1111)
+61 + 19 = 0 (0000)
+61 + 20 = 1 (0001)
+61 + 21 = 2 (0010)
+61 + 22 = 3 (0011)
+61 + 23 = 4 (0100)
+61 + 24 = 5 (0101)
+61 + 25 = 6 (0110)
+61 + 26 = 7 (0111)
+61 + 27 = 8 (1000)
+61 + 28 = 9 (1001)
+61 + 29 = 10 (1010)
+61 + 30 = 11 (1011)
+61 + 31 = 12 (1100)
+61 + 32 = 13 (1101)
+61 + 33 = 14 (1110)
+61 + 34 = 15 (1111)
+61 + 35 = 0 (0000)
+61 + 36 = 1 (0001)
+61 + 37 = 2 (0010)
+61 + 38 = 3 (0011)
+61 + 39 = 4 (0100)
+61 + 40 = 5 (0101)
+61 + 41 = 6 (0110)
+61 + 42 = 7 (0111)
+61 + 43 = 8 (1000)
+61 + 44 = 9 (1001)
+61 + 45 = 10 (1010)
+61 + 46 = 11 (1011)
+61 + 47 = 12 (1100)
+61 + 48 = 13 (1101)
+61 + 49 = 14 (1110)
+61 + 50 = 15 (1111)
+61 + 51 = 0 (0000)
+61 + 52 = 1 (0001)
+61 + 53 = 2 (0010)
+61 + 54 = 3 (0011)
+61 + 55 = 4 (0100)
+61 + 56 = 5 (0101)
+61 + 57 = 6 (0110)
+61 + 58 = 7 (0111)
+61 + 59 = 8 (1000)
+61 + 60 = 9 (1001)
+61 + 61 = 10 (1010)
+61 + 62 = 11 (1011)
+61 + 63 = 12 (1100)
+62 + 0 = 14 (1110)
+62 + 1 = 15 (1111)
+62 + 2 = 0 (0000)
+62 + 3 = 1 (0001)
+62 + 4 = 2 (0010)
+62 + 5 = 3 (0011)
+62 + 6 = 4 (0100)
+62 + 7 = 5 (0101)
+62 + 8 = 6 (0110)
+62 + 9 = 7 (0111)
+62 + 10 = 8 (1000)
+62 + 11 = 9 (1001)
+62 + 12 = 10 (1010)
+62 + 13 = 11 (1011)
+62 + 14 = 12 (1100)
+62 + 15 = 13 (1101)
+62 + 16 = 14 (1110)
+62 + 17 = 15 (1111)
+62 + 18 = 0 (0000)
+62 + 19 = 1 (0001)
+62 + 20 = 2 (0010)
+62 + 21 = 3 (0011)
+62 + 22 = 4 (0100)
+62 + 23 = 5 (0101)
+62 + 24 = 6 (0110)
+62 + 25 = 7 (0111)
+62 + 26 = 8 (1000)
+62 + 27 = 9 (1001)
+62 + 28 = 10 (1010)
+62 + 29 = 11 (1011)
+62 + 30 = 12 (1100)
+62 + 31 = 13 (1101)
+62 + 32 = 14 (1110)
+62 + 33 = 15 (1111)
+62 + 34 = 0 (0000)
+62 + 35 = 1 (0001)
+62 + 36 = 2 (0010)
+62 + 37 = 3 (0011)
+62 + 38 = 4 (0100)
+62 + 39 = 5 (0101)
+62 + 40 = 6 (0110)
+62 + 41 = 7 (0111)
+62 + 42 = 8 (1000)
+62 + 43 = 9 (1001)
+62 + 44 = 10 (1010)
+62 + 45 = 11 (1011)
+62 + 46 = 12 (1100)
+62 + 47 = 13 (1101)
+62 + 48 = 14 (1110)
+62 + 49 = 15 (1111)
+62 + 50 = 0 (0000)
+62 + 51 = 1 (0001)
+62 + 52 = 2 (0010)
+62 + 53 = 3 (0011)
+62 + 54 = 4 (0100)
+62 + 55 = 5 (0101)
+62 + 56 = 6 (0110)
+62 + 57 = 7 (0111)
+62 + 58 = 8 (1000)
+62 + 59 = 9 (1001)
+62 + 60 = 10 (1010)
+62 + 61 = 11 (1011)
+62 + 62 = 12 (1100)
+62 + 63 = 13 (1101)
+63 + 0 = 15 (1111)
+63 + 1 = 0 (0000)
+63 + 2 = 1 (0001)
+63 + 3 = 2 (0010)
+63 + 4 = 3 (0011)
+63 + 5 = 4 (0100)
+63 + 6 = 5 (0101)
+63 + 7 = 6 (0110)
+63 + 8 = 7 (0111)
+63 + 9 = 8 (1000)
+63 + 10 = 9 (1001)
+63 + 11 = 10 (1010)
+63 + 12 = 11 (1011)
+63 + 13 = 12 (1100)
+63 + 14 = 13 (1101)
+63 + 15 = 14 (1110)
+63 + 16 = 15 (1111)
+63 + 17 = 0 (0000)
+63 + 18 = 1 (0001)
+63 + 19 = 2 (0010)
+63 + 20 = 3 (0011)
+63 + 21 = 4 (0100)
+63 + 22 = 5 (0101)
+63 + 23 = 6 (0110)
+63 + 24 = 7 (0111)
+63 + 25 = 8 (1000)
+63 + 26 = 9 (1001)
+63 + 27 = 10 (1010)
+63 + 28 = 11 (1011)
+63 + 29 = 12 (1100)
+63 + 30 = 13 (1101)
+63 + 31 = 14 (1110)
+63 + 32 = 15 (1111)
+63 + 33 = 0 (0000)
+63 + 34 = 1 (0001)
+63 + 35 = 2 (0010)
+63 + 36 = 3 (0011)
+63 + 37 = 4 (0100)
+63 + 38 = 5 (0101)
+63 + 39 = 6 (0110)
+63 + 40 = 7 (0111)
+63 + 41 = 8 (1000)
+63 + 42 = 9 (1001)
+63 + 43 = 10 (1010)
+63 + 44 = 11 (1011)
+63 + 45 = 12 (1100)
+63 + 46 = 13 (1101)
+63 + 47 = 14 (1110)
+63 + 48 = 15 (1111)
+63 + 49 = 0 (0000)
+63 + 50 = 1 (0001)
+63 + 51 = 2 (0010)
+63 + 52 = 3 (0011)
+63 + 53 = 4 (0100)
+63 + 54 = 5 (0101)
+63 + 55 = 6 (0110)
+63 + 56 = 7 (0111)
+63 + 57 = 8 (1000)
+63 + 58 = 9 (1001)
+63 + 59 = 10 (1010)
+63 + 60 = 11 (1011)
+63 + 61 = 12 (1100)
+63 + 62 = 13 (1101)
+63 + 63 = 14 (1110)
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/main.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/main.cpp
new file mode 100644
index 000000000..be64495c4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/main.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /****************************************/
+ /* Main Filename: main.cc */
+ /****************************************/
+ /* */
+ /* 4-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /****************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Parameter Settings
+ int result_size = 4;
+ int in1_size = 6;
+ int in2_size = 6;
+
+// Signal Instantiation
+ signal_bool_vector6 in1 ("in1");
+ signal_bool_vector6 in2 ("in2");
+ signal_bool_vector4 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result,
+ in1_size, in2_size, result_size);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/stimgen.cpp
new file mode 100644
index 000000000..68f982721
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/stimgen.cpp
@@ -0,0 +1,69 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint()
+ << " (" << result << ")" << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/stimgen.h
new file mode 100644
index 000000000..5a95ce7a8
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& result;
+ // Outputs
+ signal_bool_vector6& in1;
+ signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& RESULT,
+ signal_bool_vector6& IN1,
+ signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/truncation.f b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/truncation.f
new file mode 100644
index 000000000..d35040a90
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/datawidth_unsigned/truncation/truncation.f
@@ -0,0 +1,3 @@
+truncation/datawidth.cpp
+truncation/stimgen.cpp
+truncation/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/add_promote/add_promote.f b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/add_promote.f
new file mode 100644
index 000000000..889c75e0f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/add_promote.f
@@ -0,0 +1,3 @@
+add_promote/datawidth.cpp
+add_promote/stimgen.cpp
+add_promote/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/add_promote/common.h b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/common.h
new file mode 100644
index 000000000..004591939
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/common.h
@@ -0,0 +1,48 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<7> bool_vector7;
+typedef sc_signal<bool_vector6> sc_signal_bool_vector6;
+typedef sc_signal<bool_vector7> sc_signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/add_promote/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/datawidth.cpp
new file mode 100644
index 000000000..c2a747ae0
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/datawidth.cpp
@@ -0,0 +1,67 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector6 tmp_a;
+ bool_vector6 tmp_b;
+ bool_vector7 tmp_result;
+ bool_vector6 tmp_add;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_add = tmp_a.to_uint() + tmp_b.to_uint();
+ tmp_result = ("0", tmp_add);
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/add_promote/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/datawidth.h
new file mode 100644
index 000000000..fd6be47a7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/datawidth.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const sc_signal_bool_vector6& in1 ;
+ const sc_signal_bool_vector6& in2 ;
+ const sc_signal<bool>& ready;
+ // Outputs
+ sc_signal_bool_vector7& result;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const sc_signal_bool_vector6& IN1,
+ const sc_signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ sc_signal_bool_vector7& RESULT )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/add_promote/golden/add_promote.log b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/golden/add_promote.log
new file mode 100644
index 000000000..f215d98f2
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/golden/add_promote.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0
+0 + 1 = 1
+0 + 2 = 2
+0 + 3 = 3
+0 + 4 = 4
+0 + 5 = 5
+0 + 6 = 6
+0 + 7 = 7
+0 + 8 = 8
+0 + 9 = 9
+0 + 10 = 10
+0 + 11 = 11
+0 + 12 = 12
+0 + 13 = 13
+0 + 14 = 14
+0 + 15 = 15
+0 + 16 = 16
+0 + 17 = 17
+0 + 18 = 18
+0 + 19 = 19
+0 + 20 = 20
+0 + 21 = 21
+0 + 22 = 22
+0 + 23 = 23
+0 + 24 = 24
+0 + 25 = 25
+0 + 26 = 26
+0 + 27 = 27
+0 + 28 = 28
+0 + 29 = 29
+0 + 30 = 30
+0 + 31 = 31
+0 + 32 = 32
+0 + 33 = 33
+0 + 34 = 34
+0 + 35 = 35
+0 + 36 = 36
+0 + 37 = 37
+0 + 38 = 38
+0 + 39 = 39
+0 + 40 = 40
+0 + 41 = 41
+0 + 42 = 42
+0 + 43 = 43
+0 + 44 = 44
+0 + 45 = 45
+0 + 46 = 46
+0 + 47 = 47
+0 + 48 = 48
+0 + 49 = 49
+0 + 50 = 50
+0 + 51 = 51
+0 + 52 = 52
+0 + 53 = 53
+0 + 54 = 54
+0 + 55 = 55
+0 + 56 = 56
+0 + 57 = 57
+0 + 58 = 58
+0 + 59 = 59
+0 + 60 = 60
+0 + 61 = 61
+0 + 62 = 62
+0 + 63 = 63
+1 + 0 = 1
+1 + 1 = 2
+1 + 2 = 3
+1 + 3 = 4
+1 + 4 = 5
+1 + 5 = 6
+1 + 6 = 7
+1 + 7 = 8
+1 + 8 = 9
+1 + 9 = 10
+1 + 10 = 11
+1 + 11 = 12
+1 + 12 = 13
+1 + 13 = 14
+1 + 14 = 15
+1 + 15 = 16
+1 + 16 = 17
+1 + 17 = 18
+1 + 18 = 19
+1 + 19 = 20
+1 + 20 = 21
+1 + 21 = 22
+1 + 22 = 23
+1 + 23 = 24
+1 + 24 = 25
+1 + 25 = 26
+1 + 26 = 27
+1 + 27 = 28
+1 + 28 = 29
+1 + 29 = 30
+1 + 30 = 31
+1 + 31 = 32
+1 + 32 = 33
+1 + 33 = 34
+1 + 34 = 35
+1 + 35 = 36
+1 + 36 = 37
+1 + 37 = 38
+1 + 38 = 39
+1 + 39 = 40
+1 + 40 = 41
+1 + 41 = 42
+1 + 42 = 43
+1 + 43 = 44
+1 + 44 = 45
+1 + 45 = 46
+1 + 46 = 47
+1 + 47 = 48
+1 + 48 = 49
+1 + 49 = 50
+1 + 50 = 51
+1 + 51 = 52
+1 + 52 = 53
+1 + 53 = 54
+1 + 54 = 55
+1 + 55 = 56
+1 + 56 = 57
+1 + 57 = 58
+1 + 58 = 59
+1 + 59 = 60
+1 + 60 = 61
+1 + 61 = 62
+1 + 62 = 63
+1 + 63 = 0
+2 + 0 = 2
+2 + 1 = 3
+2 + 2 = 4
+2 + 3 = 5
+2 + 4 = 6
+2 + 5 = 7
+2 + 6 = 8
+2 + 7 = 9
+2 + 8 = 10
+2 + 9 = 11
+2 + 10 = 12
+2 + 11 = 13
+2 + 12 = 14
+2 + 13 = 15
+2 + 14 = 16
+2 + 15 = 17
+2 + 16 = 18
+2 + 17 = 19
+2 + 18 = 20
+2 + 19 = 21
+2 + 20 = 22
+2 + 21 = 23
+2 + 22 = 24
+2 + 23 = 25
+2 + 24 = 26
+2 + 25 = 27
+2 + 26 = 28
+2 + 27 = 29
+2 + 28 = 30
+2 + 29 = 31
+2 + 30 = 32
+2 + 31 = 33
+2 + 32 = 34
+2 + 33 = 35
+2 + 34 = 36
+2 + 35 = 37
+2 + 36 = 38
+2 + 37 = 39
+2 + 38 = 40
+2 + 39 = 41
+2 + 40 = 42
+2 + 41 = 43
+2 + 42 = 44
+2 + 43 = 45
+2 + 44 = 46
+2 + 45 = 47
+2 + 46 = 48
+2 + 47 = 49
+2 + 48 = 50
+2 + 49 = 51
+2 + 50 = 52
+2 + 51 = 53
+2 + 52 = 54
+2 + 53 = 55
+2 + 54 = 56
+2 + 55 = 57
+2 + 56 = 58
+2 + 57 = 59
+2 + 58 = 60
+2 + 59 = 61
+2 + 60 = 62
+2 + 61 = 63
+2 + 62 = 0
+2 + 63 = 1
+3 + 0 = 3
+3 + 1 = 4
+3 + 2 = 5
+3 + 3 = 6
+3 + 4 = 7
+3 + 5 = 8
+3 + 6 = 9
+3 + 7 = 10
+3 + 8 = 11
+3 + 9 = 12
+3 + 10 = 13
+3 + 11 = 14
+3 + 12 = 15
+3 + 13 = 16
+3 + 14 = 17
+3 + 15 = 18
+3 + 16 = 19
+3 + 17 = 20
+3 + 18 = 21
+3 + 19 = 22
+3 + 20 = 23
+3 + 21 = 24
+3 + 22 = 25
+3 + 23 = 26
+3 + 24 = 27
+3 + 25 = 28
+3 + 26 = 29
+3 + 27 = 30
+3 + 28 = 31
+3 + 29 = 32
+3 + 30 = 33
+3 + 31 = 34
+3 + 32 = 35
+3 + 33 = 36
+3 + 34 = 37
+3 + 35 = 38
+3 + 36 = 39
+3 + 37 = 40
+3 + 38 = 41
+3 + 39 = 42
+3 + 40 = 43
+3 + 41 = 44
+3 + 42 = 45
+3 + 43 = 46
+3 + 44 = 47
+3 + 45 = 48
+3 + 46 = 49
+3 + 47 = 50
+3 + 48 = 51
+3 + 49 = 52
+3 + 50 = 53
+3 + 51 = 54
+3 + 52 = 55
+3 + 53 = 56
+3 + 54 = 57
+3 + 55 = 58
+3 + 56 = 59
+3 + 57 = 60
+3 + 58 = 61
+3 + 59 = 62
+3 + 60 = 63
+3 + 61 = 0
+3 + 62 = 1
+3 + 63 = 2
+4 + 0 = 4
+4 + 1 = 5
+4 + 2 = 6
+4 + 3 = 7
+4 + 4 = 8
+4 + 5 = 9
+4 + 6 = 10
+4 + 7 = 11
+4 + 8 = 12
+4 + 9 = 13
+4 + 10 = 14
+4 + 11 = 15
+4 + 12 = 16
+4 + 13 = 17
+4 + 14 = 18
+4 + 15 = 19
+4 + 16 = 20
+4 + 17 = 21
+4 + 18 = 22
+4 + 19 = 23
+4 + 20 = 24
+4 + 21 = 25
+4 + 22 = 26
+4 + 23 = 27
+4 + 24 = 28
+4 + 25 = 29
+4 + 26 = 30
+4 + 27 = 31
+4 + 28 = 32
+4 + 29 = 33
+4 + 30 = 34
+4 + 31 = 35
+4 + 32 = 36
+4 + 33 = 37
+4 + 34 = 38
+4 + 35 = 39
+4 + 36 = 40
+4 + 37 = 41
+4 + 38 = 42
+4 + 39 = 43
+4 + 40 = 44
+4 + 41 = 45
+4 + 42 = 46
+4 + 43 = 47
+4 + 44 = 48
+4 + 45 = 49
+4 + 46 = 50
+4 + 47 = 51
+4 + 48 = 52
+4 + 49 = 53
+4 + 50 = 54
+4 + 51 = 55
+4 + 52 = 56
+4 + 53 = 57
+4 + 54 = 58
+4 + 55 = 59
+4 + 56 = 60
+4 + 57 = 61
+4 + 58 = 62
+4 + 59 = 63
+4 + 60 = 0
+4 + 61 = 1
+4 + 62 = 2
+4 + 63 = 3
+5 + 0 = 5
+5 + 1 = 6
+5 + 2 = 7
+5 + 3 = 8
+5 + 4 = 9
+5 + 5 = 10
+5 + 6 = 11
+5 + 7 = 12
+5 + 8 = 13
+5 + 9 = 14
+5 + 10 = 15
+5 + 11 = 16
+5 + 12 = 17
+5 + 13 = 18
+5 + 14 = 19
+5 + 15 = 20
+5 + 16 = 21
+5 + 17 = 22
+5 + 18 = 23
+5 + 19 = 24
+5 + 20 = 25
+5 + 21 = 26
+5 + 22 = 27
+5 + 23 = 28
+5 + 24 = 29
+5 + 25 = 30
+5 + 26 = 31
+5 + 27 = 32
+5 + 28 = 33
+5 + 29 = 34
+5 + 30 = 35
+5 + 31 = 36
+5 + 32 = 37
+5 + 33 = 38
+5 + 34 = 39
+5 + 35 = 40
+5 + 36 = 41
+5 + 37 = 42
+5 + 38 = 43
+5 + 39 = 44
+5 + 40 = 45
+5 + 41 = 46
+5 + 42 = 47
+5 + 43 = 48
+5 + 44 = 49
+5 + 45 = 50
+5 + 46 = 51
+5 + 47 = 52
+5 + 48 = 53
+5 + 49 = 54
+5 + 50 = 55
+5 + 51 = 56
+5 + 52 = 57
+5 + 53 = 58
+5 + 54 = 59
+5 + 55 = 60
+5 + 56 = 61
+5 + 57 = 62
+5 + 58 = 63
+5 + 59 = 0
+5 + 60 = 1
+5 + 61 = 2
+5 + 62 = 3
+5 + 63 = 4
+6 + 0 = 6
+6 + 1 = 7
+6 + 2 = 8
+6 + 3 = 9
+6 + 4 = 10
+6 + 5 = 11
+6 + 6 = 12
+6 + 7 = 13
+6 + 8 = 14
+6 + 9 = 15
+6 + 10 = 16
+6 + 11 = 17
+6 + 12 = 18
+6 + 13 = 19
+6 + 14 = 20
+6 + 15 = 21
+6 + 16 = 22
+6 + 17 = 23
+6 + 18 = 24
+6 + 19 = 25
+6 + 20 = 26
+6 + 21 = 27
+6 + 22 = 28
+6 + 23 = 29
+6 + 24 = 30
+6 + 25 = 31
+6 + 26 = 32
+6 + 27 = 33
+6 + 28 = 34
+6 + 29 = 35
+6 + 30 = 36
+6 + 31 = 37
+6 + 32 = 38
+6 + 33 = 39
+6 + 34 = 40
+6 + 35 = 41
+6 + 36 = 42
+6 + 37 = 43
+6 + 38 = 44
+6 + 39 = 45
+6 + 40 = 46
+6 + 41 = 47
+6 + 42 = 48
+6 + 43 = 49
+6 + 44 = 50
+6 + 45 = 51
+6 + 46 = 52
+6 + 47 = 53
+6 + 48 = 54
+6 + 49 = 55
+6 + 50 = 56
+6 + 51 = 57
+6 + 52 = 58
+6 + 53 = 59
+6 + 54 = 60
+6 + 55 = 61
+6 + 56 = 62
+6 + 57 = 63
+6 + 58 = 0
+6 + 59 = 1
+6 + 60 = 2
+6 + 61 = 3
+6 + 62 = 4
+6 + 63 = 5
+7 + 0 = 7
+7 + 1 = 8
+7 + 2 = 9
+7 + 3 = 10
+7 + 4 = 11
+7 + 5 = 12
+7 + 6 = 13
+7 + 7 = 14
+7 + 8 = 15
+7 + 9 = 16
+7 + 10 = 17
+7 + 11 = 18
+7 + 12 = 19
+7 + 13 = 20
+7 + 14 = 21
+7 + 15 = 22
+7 + 16 = 23
+7 + 17 = 24
+7 + 18 = 25
+7 + 19 = 26
+7 + 20 = 27
+7 + 21 = 28
+7 + 22 = 29
+7 + 23 = 30
+7 + 24 = 31
+7 + 25 = 32
+7 + 26 = 33
+7 + 27 = 34
+7 + 28 = 35
+7 + 29 = 36
+7 + 30 = 37
+7 + 31 = 38
+7 + 32 = 39
+7 + 33 = 40
+7 + 34 = 41
+7 + 35 = 42
+7 + 36 = 43
+7 + 37 = 44
+7 + 38 = 45
+7 + 39 = 46
+7 + 40 = 47
+7 + 41 = 48
+7 + 42 = 49
+7 + 43 = 50
+7 + 44 = 51
+7 + 45 = 52
+7 + 46 = 53
+7 + 47 = 54
+7 + 48 = 55
+7 + 49 = 56
+7 + 50 = 57
+7 + 51 = 58
+7 + 52 = 59
+7 + 53 = 60
+7 + 54 = 61
+7 + 55 = 62
+7 + 56 = 63
+7 + 57 = 0
+7 + 58 = 1
+7 + 59 = 2
+7 + 60 = 3
+7 + 61 = 4
+7 + 62 = 5
+7 + 63 = 6
+8 + 0 = 8
+8 + 1 = 9
+8 + 2 = 10
+8 + 3 = 11
+8 + 4 = 12
+8 + 5 = 13
+8 + 6 = 14
+8 + 7 = 15
+8 + 8 = 16
+8 + 9 = 17
+8 + 10 = 18
+8 + 11 = 19
+8 + 12 = 20
+8 + 13 = 21
+8 + 14 = 22
+8 + 15 = 23
+8 + 16 = 24
+8 + 17 = 25
+8 + 18 = 26
+8 + 19 = 27
+8 + 20 = 28
+8 + 21 = 29
+8 + 22 = 30
+8 + 23 = 31
+8 + 24 = 32
+8 + 25 = 33
+8 + 26 = 34
+8 + 27 = 35
+8 + 28 = 36
+8 + 29 = 37
+8 + 30 = 38
+8 + 31 = 39
+8 + 32 = 40
+8 + 33 = 41
+8 + 34 = 42
+8 + 35 = 43
+8 + 36 = 44
+8 + 37 = 45
+8 + 38 = 46
+8 + 39 = 47
+8 + 40 = 48
+8 + 41 = 49
+8 + 42 = 50
+8 + 43 = 51
+8 + 44 = 52
+8 + 45 = 53
+8 + 46 = 54
+8 + 47 = 55
+8 + 48 = 56
+8 + 49 = 57
+8 + 50 = 58
+8 + 51 = 59
+8 + 52 = 60
+8 + 53 = 61
+8 + 54 = 62
+8 + 55 = 63
+8 + 56 = 0
+8 + 57 = 1
+8 + 58 = 2
+8 + 59 = 3
+8 + 60 = 4
+8 + 61 = 5
+8 + 62 = 6
+8 + 63 = 7
+9 + 0 = 9
+9 + 1 = 10
+9 + 2 = 11
+9 + 3 = 12
+9 + 4 = 13
+9 + 5 = 14
+9 + 6 = 15
+9 + 7 = 16
+9 + 8 = 17
+9 + 9 = 18
+9 + 10 = 19
+9 + 11 = 20
+9 + 12 = 21
+9 + 13 = 22
+9 + 14 = 23
+9 + 15 = 24
+9 + 16 = 25
+9 + 17 = 26
+9 + 18 = 27
+9 + 19 = 28
+9 + 20 = 29
+9 + 21 = 30
+9 + 22 = 31
+9 + 23 = 32
+9 + 24 = 33
+9 + 25 = 34
+9 + 26 = 35
+9 + 27 = 36
+9 + 28 = 37
+9 + 29 = 38
+9 + 30 = 39
+9 + 31 = 40
+9 + 32 = 41
+9 + 33 = 42
+9 + 34 = 43
+9 + 35 = 44
+9 + 36 = 45
+9 + 37 = 46
+9 + 38 = 47
+9 + 39 = 48
+9 + 40 = 49
+9 + 41 = 50
+9 + 42 = 51
+9 + 43 = 52
+9 + 44 = 53
+9 + 45 = 54
+9 + 46 = 55
+9 + 47 = 56
+9 + 48 = 57
+9 + 49 = 58
+9 + 50 = 59
+9 + 51 = 60
+9 + 52 = 61
+9 + 53 = 62
+9 + 54 = 63
+9 + 55 = 0
+9 + 56 = 1
+9 + 57 = 2
+9 + 58 = 3
+9 + 59 = 4
+9 + 60 = 5
+9 + 61 = 6
+9 + 62 = 7
+9 + 63 = 8
+10 + 0 = 10
+10 + 1 = 11
+10 + 2 = 12
+10 + 3 = 13
+10 + 4 = 14
+10 + 5 = 15
+10 + 6 = 16
+10 + 7 = 17
+10 + 8 = 18
+10 + 9 = 19
+10 + 10 = 20
+10 + 11 = 21
+10 + 12 = 22
+10 + 13 = 23
+10 + 14 = 24
+10 + 15 = 25
+10 + 16 = 26
+10 + 17 = 27
+10 + 18 = 28
+10 + 19 = 29
+10 + 20 = 30
+10 + 21 = 31
+10 + 22 = 32
+10 + 23 = 33
+10 + 24 = 34
+10 + 25 = 35
+10 + 26 = 36
+10 + 27 = 37
+10 + 28 = 38
+10 + 29 = 39
+10 + 30 = 40
+10 + 31 = 41
+10 + 32 = 42
+10 + 33 = 43
+10 + 34 = 44
+10 + 35 = 45
+10 + 36 = 46
+10 + 37 = 47
+10 + 38 = 48
+10 + 39 = 49
+10 + 40 = 50
+10 + 41 = 51
+10 + 42 = 52
+10 + 43 = 53
+10 + 44 = 54
+10 + 45 = 55
+10 + 46 = 56
+10 + 47 = 57
+10 + 48 = 58
+10 + 49 = 59
+10 + 50 = 60
+10 + 51 = 61
+10 + 52 = 62
+10 + 53 = 63
+10 + 54 = 0
+10 + 55 = 1
+10 + 56 = 2
+10 + 57 = 3
+10 + 58 = 4
+10 + 59 = 5
+10 + 60 = 6
+10 + 61 = 7
+10 + 62 = 8
+10 + 63 = 9
+11 + 0 = 11
+11 + 1 = 12
+11 + 2 = 13
+11 + 3 = 14
+11 + 4 = 15
+11 + 5 = 16
+11 + 6 = 17
+11 + 7 = 18
+11 + 8 = 19
+11 + 9 = 20
+11 + 10 = 21
+11 + 11 = 22
+11 + 12 = 23
+11 + 13 = 24
+11 + 14 = 25
+11 + 15 = 26
+11 + 16 = 27
+11 + 17 = 28
+11 + 18 = 29
+11 + 19 = 30
+11 + 20 = 31
+11 + 21 = 32
+11 + 22 = 33
+11 + 23 = 34
+11 + 24 = 35
+11 + 25 = 36
+11 + 26 = 37
+11 + 27 = 38
+11 + 28 = 39
+11 + 29 = 40
+11 + 30 = 41
+11 + 31 = 42
+11 + 32 = 43
+11 + 33 = 44
+11 + 34 = 45
+11 + 35 = 46
+11 + 36 = 47
+11 + 37 = 48
+11 + 38 = 49
+11 + 39 = 50
+11 + 40 = 51
+11 + 41 = 52
+11 + 42 = 53
+11 + 43 = 54
+11 + 44 = 55
+11 + 45 = 56
+11 + 46 = 57
+11 + 47 = 58
+11 + 48 = 59
+11 + 49 = 60
+11 + 50 = 61
+11 + 51 = 62
+11 + 52 = 63
+11 + 53 = 0
+11 + 54 = 1
+11 + 55 = 2
+11 + 56 = 3
+11 + 57 = 4
+11 + 58 = 5
+11 + 59 = 6
+11 + 60 = 7
+11 + 61 = 8
+11 + 62 = 9
+11 + 63 = 10
+12 + 0 = 12
+12 + 1 = 13
+12 + 2 = 14
+12 + 3 = 15
+12 + 4 = 16
+12 + 5 = 17
+12 + 6 = 18
+12 + 7 = 19
+12 + 8 = 20
+12 + 9 = 21
+12 + 10 = 22
+12 + 11 = 23
+12 + 12 = 24
+12 + 13 = 25
+12 + 14 = 26
+12 + 15 = 27
+12 + 16 = 28
+12 + 17 = 29
+12 + 18 = 30
+12 + 19 = 31
+12 + 20 = 32
+12 + 21 = 33
+12 + 22 = 34
+12 + 23 = 35
+12 + 24 = 36
+12 + 25 = 37
+12 + 26 = 38
+12 + 27 = 39
+12 + 28 = 40
+12 + 29 = 41
+12 + 30 = 42
+12 + 31 = 43
+12 + 32 = 44
+12 + 33 = 45
+12 + 34 = 46
+12 + 35 = 47
+12 + 36 = 48
+12 + 37 = 49
+12 + 38 = 50
+12 + 39 = 51
+12 + 40 = 52
+12 + 41 = 53
+12 + 42 = 54
+12 + 43 = 55
+12 + 44 = 56
+12 + 45 = 57
+12 + 46 = 58
+12 + 47 = 59
+12 + 48 = 60
+12 + 49 = 61
+12 + 50 = 62
+12 + 51 = 63
+12 + 52 = 0
+12 + 53 = 1
+12 + 54 = 2
+12 + 55 = 3
+12 + 56 = 4
+12 + 57 = 5
+12 + 58 = 6
+12 + 59 = 7
+12 + 60 = 8
+12 + 61 = 9
+12 + 62 = 10
+12 + 63 = 11
+13 + 0 = 13
+13 + 1 = 14
+13 + 2 = 15
+13 + 3 = 16
+13 + 4 = 17
+13 + 5 = 18
+13 + 6 = 19
+13 + 7 = 20
+13 + 8 = 21
+13 + 9 = 22
+13 + 10 = 23
+13 + 11 = 24
+13 + 12 = 25
+13 + 13 = 26
+13 + 14 = 27
+13 + 15 = 28
+13 + 16 = 29
+13 + 17 = 30
+13 + 18 = 31
+13 + 19 = 32
+13 + 20 = 33
+13 + 21 = 34
+13 + 22 = 35
+13 + 23 = 36
+13 + 24 = 37
+13 + 25 = 38
+13 + 26 = 39
+13 + 27 = 40
+13 + 28 = 41
+13 + 29 = 42
+13 + 30 = 43
+13 + 31 = 44
+13 + 32 = 45
+13 + 33 = 46
+13 + 34 = 47
+13 + 35 = 48
+13 + 36 = 49
+13 + 37 = 50
+13 + 38 = 51
+13 + 39 = 52
+13 + 40 = 53
+13 + 41 = 54
+13 + 42 = 55
+13 + 43 = 56
+13 + 44 = 57
+13 + 45 = 58
+13 + 46 = 59
+13 + 47 = 60
+13 + 48 = 61
+13 + 49 = 62
+13 + 50 = 63
+13 + 51 = 0
+13 + 52 = 1
+13 + 53 = 2
+13 + 54 = 3
+13 + 55 = 4
+13 + 56 = 5
+13 + 57 = 6
+13 + 58 = 7
+13 + 59 = 8
+13 + 60 = 9
+13 + 61 = 10
+13 + 62 = 11
+13 + 63 = 12
+14 + 0 = 14
+14 + 1 = 15
+14 + 2 = 16
+14 + 3 = 17
+14 + 4 = 18
+14 + 5 = 19
+14 + 6 = 20
+14 + 7 = 21
+14 + 8 = 22
+14 + 9 = 23
+14 + 10 = 24
+14 + 11 = 25
+14 + 12 = 26
+14 + 13 = 27
+14 + 14 = 28
+14 + 15 = 29
+14 + 16 = 30
+14 + 17 = 31
+14 + 18 = 32
+14 + 19 = 33
+14 + 20 = 34
+14 + 21 = 35
+14 + 22 = 36
+14 + 23 = 37
+14 + 24 = 38
+14 + 25 = 39
+14 + 26 = 40
+14 + 27 = 41
+14 + 28 = 42
+14 + 29 = 43
+14 + 30 = 44
+14 + 31 = 45
+14 + 32 = 46
+14 + 33 = 47
+14 + 34 = 48
+14 + 35 = 49
+14 + 36 = 50
+14 + 37 = 51
+14 + 38 = 52
+14 + 39 = 53
+14 + 40 = 54
+14 + 41 = 55
+14 + 42 = 56
+14 + 43 = 57
+14 + 44 = 58
+14 + 45 = 59
+14 + 46 = 60
+14 + 47 = 61
+14 + 48 = 62
+14 + 49 = 63
+14 + 50 = 0
+14 + 51 = 1
+14 + 52 = 2
+14 + 53 = 3
+14 + 54 = 4
+14 + 55 = 5
+14 + 56 = 6
+14 + 57 = 7
+14 + 58 = 8
+14 + 59 = 9
+14 + 60 = 10
+14 + 61 = 11
+14 + 62 = 12
+14 + 63 = 13
+15 + 0 = 15
+15 + 1 = 16
+15 + 2 = 17
+15 + 3 = 18
+15 + 4 = 19
+15 + 5 = 20
+15 + 6 = 21
+15 + 7 = 22
+15 + 8 = 23
+15 + 9 = 24
+15 + 10 = 25
+15 + 11 = 26
+15 + 12 = 27
+15 + 13 = 28
+15 + 14 = 29
+15 + 15 = 30
+15 + 16 = 31
+15 + 17 = 32
+15 + 18 = 33
+15 + 19 = 34
+15 + 20 = 35
+15 + 21 = 36
+15 + 22 = 37
+15 + 23 = 38
+15 + 24 = 39
+15 + 25 = 40
+15 + 26 = 41
+15 + 27 = 42
+15 + 28 = 43
+15 + 29 = 44
+15 + 30 = 45
+15 + 31 = 46
+15 + 32 = 47
+15 + 33 = 48
+15 + 34 = 49
+15 + 35 = 50
+15 + 36 = 51
+15 + 37 = 52
+15 + 38 = 53
+15 + 39 = 54
+15 + 40 = 55
+15 + 41 = 56
+15 + 42 = 57
+15 + 43 = 58
+15 + 44 = 59
+15 + 45 = 60
+15 + 46 = 61
+15 + 47 = 62
+15 + 48 = 63
+15 + 49 = 0
+15 + 50 = 1
+15 + 51 = 2
+15 + 52 = 3
+15 + 53 = 4
+15 + 54 = 5
+15 + 55 = 6
+15 + 56 = 7
+15 + 57 = 8
+15 + 58 = 9
+15 + 59 = 10
+15 + 60 = 11
+15 + 61 = 12
+15 + 62 = 13
+15 + 63 = 14
+16 + 0 = 16
+16 + 1 = 17
+16 + 2 = 18
+16 + 3 = 19
+16 + 4 = 20
+16 + 5 = 21
+16 + 6 = 22
+16 + 7 = 23
+16 + 8 = 24
+16 + 9 = 25
+16 + 10 = 26
+16 + 11 = 27
+16 + 12 = 28
+16 + 13 = 29
+16 + 14 = 30
+16 + 15 = 31
+16 + 16 = 32
+16 + 17 = 33
+16 + 18 = 34
+16 + 19 = 35
+16 + 20 = 36
+16 + 21 = 37
+16 + 22 = 38
+16 + 23 = 39
+16 + 24 = 40
+16 + 25 = 41
+16 + 26 = 42
+16 + 27 = 43
+16 + 28 = 44
+16 + 29 = 45
+16 + 30 = 46
+16 + 31 = 47
+16 + 32 = 48
+16 + 33 = 49
+16 + 34 = 50
+16 + 35 = 51
+16 + 36 = 52
+16 + 37 = 53
+16 + 38 = 54
+16 + 39 = 55
+16 + 40 = 56
+16 + 41 = 57
+16 + 42 = 58
+16 + 43 = 59
+16 + 44 = 60
+16 + 45 = 61
+16 + 46 = 62
+16 + 47 = 63
+16 + 48 = 0
+16 + 49 = 1
+16 + 50 = 2
+16 + 51 = 3
+16 + 52 = 4
+16 + 53 = 5
+16 + 54 = 6
+16 + 55 = 7
+16 + 56 = 8
+16 + 57 = 9
+16 + 58 = 10
+16 + 59 = 11
+16 + 60 = 12
+16 + 61 = 13
+16 + 62 = 14
+16 + 63 = 15
+17 + 0 = 17
+17 + 1 = 18
+17 + 2 = 19
+17 + 3 = 20
+17 + 4 = 21
+17 + 5 = 22
+17 + 6 = 23
+17 + 7 = 24
+17 + 8 = 25
+17 + 9 = 26
+17 + 10 = 27
+17 + 11 = 28
+17 + 12 = 29
+17 + 13 = 30
+17 + 14 = 31
+17 + 15 = 32
+17 + 16 = 33
+17 + 17 = 34
+17 + 18 = 35
+17 + 19 = 36
+17 + 20 = 37
+17 + 21 = 38
+17 + 22 = 39
+17 + 23 = 40
+17 + 24 = 41
+17 + 25 = 42
+17 + 26 = 43
+17 + 27 = 44
+17 + 28 = 45
+17 + 29 = 46
+17 + 30 = 47
+17 + 31 = 48
+17 + 32 = 49
+17 + 33 = 50
+17 + 34 = 51
+17 + 35 = 52
+17 + 36 = 53
+17 + 37 = 54
+17 + 38 = 55
+17 + 39 = 56
+17 + 40 = 57
+17 + 41 = 58
+17 + 42 = 59
+17 + 43 = 60
+17 + 44 = 61
+17 + 45 = 62
+17 + 46 = 63
+17 + 47 = 0
+17 + 48 = 1
+17 + 49 = 2
+17 + 50 = 3
+17 + 51 = 4
+17 + 52 = 5
+17 + 53 = 6
+17 + 54 = 7
+17 + 55 = 8
+17 + 56 = 9
+17 + 57 = 10
+17 + 58 = 11
+17 + 59 = 12
+17 + 60 = 13
+17 + 61 = 14
+17 + 62 = 15
+17 + 63 = 16
+18 + 0 = 18
+18 + 1 = 19
+18 + 2 = 20
+18 + 3 = 21
+18 + 4 = 22
+18 + 5 = 23
+18 + 6 = 24
+18 + 7 = 25
+18 + 8 = 26
+18 + 9 = 27
+18 + 10 = 28
+18 + 11 = 29
+18 + 12 = 30
+18 + 13 = 31
+18 + 14 = 32
+18 + 15 = 33
+18 + 16 = 34
+18 + 17 = 35
+18 + 18 = 36
+18 + 19 = 37
+18 + 20 = 38
+18 + 21 = 39
+18 + 22 = 40
+18 + 23 = 41
+18 + 24 = 42
+18 + 25 = 43
+18 + 26 = 44
+18 + 27 = 45
+18 + 28 = 46
+18 + 29 = 47
+18 + 30 = 48
+18 + 31 = 49
+18 + 32 = 50
+18 + 33 = 51
+18 + 34 = 52
+18 + 35 = 53
+18 + 36 = 54
+18 + 37 = 55
+18 + 38 = 56
+18 + 39 = 57
+18 + 40 = 58
+18 + 41 = 59
+18 + 42 = 60
+18 + 43 = 61
+18 + 44 = 62
+18 + 45 = 63
+18 + 46 = 0
+18 + 47 = 1
+18 + 48 = 2
+18 + 49 = 3
+18 + 50 = 4
+18 + 51 = 5
+18 + 52 = 6
+18 + 53 = 7
+18 + 54 = 8
+18 + 55 = 9
+18 + 56 = 10
+18 + 57 = 11
+18 + 58 = 12
+18 + 59 = 13
+18 + 60 = 14
+18 + 61 = 15
+18 + 62 = 16
+18 + 63 = 17
+19 + 0 = 19
+19 + 1 = 20
+19 + 2 = 21
+19 + 3 = 22
+19 + 4 = 23
+19 + 5 = 24
+19 + 6 = 25
+19 + 7 = 26
+19 + 8 = 27
+19 + 9 = 28
+19 + 10 = 29
+19 + 11 = 30
+19 + 12 = 31
+19 + 13 = 32
+19 + 14 = 33
+19 + 15 = 34
+19 + 16 = 35
+19 + 17 = 36
+19 + 18 = 37
+19 + 19 = 38
+19 + 20 = 39
+19 + 21 = 40
+19 + 22 = 41
+19 + 23 = 42
+19 + 24 = 43
+19 + 25 = 44
+19 + 26 = 45
+19 + 27 = 46
+19 + 28 = 47
+19 + 29 = 48
+19 + 30 = 49
+19 + 31 = 50
+19 + 32 = 51
+19 + 33 = 52
+19 + 34 = 53
+19 + 35 = 54
+19 + 36 = 55
+19 + 37 = 56
+19 + 38 = 57
+19 + 39 = 58
+19 + 40 = 59
+19 + 41 = 60
+19 + 42 = 61
+19 + 43 = 62
+19 + 44 = 63
+19 + 45 = 0
+19 + 46 = 1
+19 + 47 = 2
+19 + 48 = 3
+19 + 49 = 4
+19 + 50 = 5
+19 + 51 = 6
+19 + 52 = 7
+19 + 53 = 8
+19 + 54 = 9
+19 + 55 = 10
+19 + 56 = 11
+19 + 57 = 12
+19 + 58 = 13
+19 + 59 = 14
+19 + 60 = 15
+19 + 61 = 16
+19 + 62 = 17
+19 + 63 = 18
+20 + 0 = 20
+20 + 1 = 21
+20 + 2 = 22
+20 + 3 = 23
+20 + 4 = 24
+20 + 5 = 25
+20 + 6 = 26
+20 + 7 = 27
+20 + 8 = 28
+20 + 9 = 29
+20 + 10 = 30
+20 + 11 = 31
+20 + 12 = 32
+20 + 13 = 33
+20 + 14 = 34
+20 + 15 = 35
+20 + 16 = 36
+20 + 17 = 37
+20 + 18 = 38
+20 + 19 = 39
+20 + 20 = 40
+20 + 21 = 41
+20 + 22 = 42
+20 + 23 = 43
+20 + 24 = 44
+20 + 25 = 45
+20 + 26 = 46
+20 + 27 = 47
+20 + 28 = 48
+20 + 29 = 49
+20 + 30 = 50
+20 + 31 = 51
+20 + 32 = 52
+20 + 33 = 53
+20 + 34 = 54
+20 + 35 = 55
+20 + 36 = 56
+20 + 37 = 57
+20 + 38 = 58
+20 + 39 = 59
+20 + 40 = 60
+20 + 41 = 61
+20 + 42 = 62
+20 + 43 = 63
+20 + 44 = 0
+20 + 45 = 1
+20 + 46 = 2
+20 + 47 = 3
+20 + 48 = 4
+20 + 49 = 5
+20 + 50 = 6
+20 + 51 = 7
+20 + 52 = 8
+20 + 53 = 9
+20 + 54 = 10
+20 + 55 = 11
+20 + 56 = 12
+20 + 57 = 13
+20 + 58 = 14
+20 + 59 = 15
+20 + 60 = 16
+20 + 61 = 17
+20 + 62 = 18
+20 + 63 = 19
+21 + 0 = 21
+21 + 1 = 22
+21 + 2 = 23
+21 + 3 = 24
+21 + 4 = 25
+21 + 5 = 26
+21 + 6 = 27
+21 + 7 = 28
+21 + 8 = 29
+21 + 9 = 30
+21 + 10 = 31
+21 + 11 = 32
+21 + 12 = 33
+21 + 13 = 34
+21 + 14 = 35
+21 + 15 = 36
+21 + 16 = 37
+21 + 17 = 38
+21 + 18 = 39
+21 + 19 = 40
+21 + 20 = 41
+21 + 21 = 42
+21 + 22 = 43
+21 + 23 = 44
+21 + 24 = 45
+21 + 25 = 46
+21 + 26 = 47
+21 + 27 = 48
+21 + 28 = 49
+21 + 29 = 50
+21 + 30 = 51
+21 + 31 = 52
+21 + 32 = 53
+21 + 33 = 54
+21 + 34 = 55
+21 + 35 = 56
+21 + 36 = 57
+21 + 37 = 58
+21 + 38 = 59
+21 + 39 = 60
+21 + 40 = 61
+21 + 41 = 62
+21 + 42 = 63
+21 + 43 = 0
+21 + 44 = 1
+21 + 45 = 2
+21 + 46 = 3
+21 + 47 = 4
+21 + 48 = 5
+21 + 49 = 6
+21 + 50 = 7
+21 + 51 = 8
+21 + 52 = 9
+21 + 53 = 10
+21 + 54 = 11
+21 + 55 = 12
+21 + 56 = 13
+21 + 57 = 14
+21 + 58 = 15
+21 + 59 = 16
+21 + 60 = 17
+21 + 61 = 18
+21 + 62 = 19
+21 + 63 = 20
+22 + 0 = 22
+22 + 1 = 23
+22 + 2 = 24
+22 + 3 = 25
+22 + 4 = 26
+22 + 5 = 27
+22 + 6 = 28
+22 + 7 = 29
+22 + 8 = 30
+22 + 9 = 31
+22 + 10 = 32
+22 + 11 = 33
+22 + 12 = 34
+22 + 13 = 35
+22 + 14 = 36
+22 + 15 = 37
+22 + 16 = 38
+22 + 17 = 39
+22 + 18 = 40
+22 + 19 = 41
+22 + 20 = 42
+22 + 21 = 43
+22 + 22 = 44
+22 + 23 = 45
+22 + 24 = 46
+22 + 25 = 47
+22 + 26 = 48
+22 + 27 = 49
+22 + 28 = 50
+22 + 29 = 51
+22 + 30 = 52
+22 + 31 = 53
+22 + 32 = 54
+22 + 33 = 55
+22 + 34 = 56
+22 + 35 = 57
+22 + 36 = 58
+22 + 37 = 59
+22 + 38 = 60
+22 + 39 = 61
+22 + 40 = 62
+22 + 41 = 63
+22 + 42 = 0
+22 + 43 = 1
+22 + 44 = 2
+22 + 45 = 3
+22 + 46 = 4
+22 + 47 = 5
+22 + 48 = 6
+22 + 49 = 7
+22 + 50 = 8
+22 + 51 = 9
+22 + 52 = 10
+22 + 53 = 11
+22 + 54 = 12
+22 + 55 = 13
+22 + 56 = 14
+22 + 57 = 15
+22 + 58 = 16
+22 + 59 = 17
+22 + 60 = 18
+22 + 61 = 19
+22 + 62 = 20
+22 + 63 = 21
+23 + 0 = 23
+23 + 1 = 24
+23 + 2 = 25
+23 + 3 = 26
+23 + 4 = 27
+23 + 5 = 28
+23 + 6 = 29
+23 + 7 = 30
+23 + 8 = 31
+23 + 9 = 32
+23 + 10 = 33
+23 + 11 = 34
+23 + 12 = 35
+23 + 13 = 36
+23 + 14 = 37
+23 + 15 = 38
+23 + 16 = 39
+23 + 17 = 40
+23 + 18 = 41
+23 + 19 = 42
+23 + 20 = 43
+23 + 21 = 44
+23 + 22 = 45
+23 + 23 = 46
+23 + 24 = 47
+23 + 25 = 48
+23 + 26 = 49
+23 + 27 = 50
+23 + 28 = 51
+23 + 29 = 52
+23 + 30 = 53
+23 + 31 = 54
+23 + 32 = 55
+23 + 33 = 56
+23 + 34 = 57
+23 + 35 = 58
+23 + 36 = 59
+23 + 37 = 60
+23 + 38 = 61
+23 + 39 = 62
+23 + 40 = 63
+23 + 41 = 0
+23 + 42 = 1
+23 + 43 = 2
+23 + 44 = 3
+23 + 45 = 4
+23 + 46 = 5
+23 + 47 = 6
+23 + 48 = 7
+23 + 49 = 8
+23 + 50 = 9
+23 + 51 = 10
+23 + 52 = 11
+23 + 53 = 12
+23 + 54 = 13
+23 + 55 = 14
+23 + 56 = 15
+23 + 57 = 16
+23 + 58 = 17
+23 + 59 = 18
+23 + 60 = 19
+23 + 61 = 20
+23 + 62 = 21
+23 + 63 = 22
+24 + 0 = 24
+24 + 1 = 25
+24 + 2 = 26
+24 + 3 = 27
+24 + 4 = 28
+24 + 5 = 29
+24 + 6 = 30
+24 + 7 = 31
+24 + 8 = 32
+24 + 9 = 33
+24 + 10 = 34
+24 + 11 = 35
+24 + 12 = 36
+24 + 13 = 37
+24 + 14 = 38
+24 + 15 = 39
+24 + 16 = 40
+24 + 17 = 41
+24 + 18 = 42
+24 + 19 = 43
+24 + 20 = 44
+24 + 21 = 45
+24 + 22 = 46
+24 + 23 = 47
+24 + 24 = 48
+24 + 25 = 49
+24 + 26 = 50
+24 + 27 = 51
+24 + 28 = 52
+24 + 29 = 53
+24 + 30 = 54
+24 + 31 = 55
+24 + 32 = 56
+24 + 33 = 57
+24 + 34 = 58
+24 + 35 = 59
+24 + 36 = 60
+24 + 37 = 61
+24 + 38 = 62
+24 + 39 = 63
+24 + 40 = 0
+24 + 41 = 1
+24 + 42 = 2
+24 + 43 = 3
+24 + 44 = 4
+24 + 45 = 5
+24 + 46 = 6
+24 + 47 = 7
+24 + 48 = 8
+24 + 49 = 9
+24 + 50 = 10
+24 + 51 = 11
+24 + 52 = 12
+24 + 53 = 13
+24 + 54 = 14
+24 + 55 = 15
+24 + 56 = 16
+24 + 57 = 17
+24 + 58 = 18
+24 + 59 = 19
+24 + 60 = 20
+24 + 61 = 21
+24 + 62 = 22
+24 + 63 = 23
+25 + 0 = 25
+25 + 1 = 26
+25 + 2 = 27
+25 + 3 = 28
+25 + 4 = 29
+25 + 5 = 30
+25 + 6 = 31
+25 + 7 = 32
+25 + 8 = 33
+25 + 9 = 34
+25 + 10 = 35
+25 + 11 = 36
+25 + 12 = 37
+25 + 13 = 38
+25 + 14 = 39
+25 + 15 = 40
+25 + 16 = 41
+25 + 17 = 42
+25 + 18 = 43
+25 + 19 = 44
+25 + 20 = 45
+25 + 21 = 46
+25 + 22 = 47
+25 + 23 = 48
+25 + 24 = 49
+25 + 25 = 50
+25 + 26 = 51
+25 + 27 = 52
+25 + 28 = 53
+25 + 29 = 54
+25 + 30 = 55
+25 + 31 = 56
+25 + 32 = 57
+25 + 33 = 58
+25 + 34 = 59
+25 + 35 = 60
+25 + 36 = 61
+25 + 37 = 62
+25 + 38 = 63
+25 + 39 = 0
+25 + 40 = 1
+25 + 41 = 2
+25 + 42 = 3
+25 + 43 = 4
+25 + 44 = 5
+25 + 45 = 6
+25 + 46 = 7
+25 + 47 = 8
+25 + 48 = 9
+25 + 49 = 10
+25 + 50 = 11
+25 + 51 = 12
+25 + 52 = 13
+25 + 53 = 14
+25 + 54 = 15
+25 + 55 = 16
+25 + 56 = 17
+25 + 57 = 18
+25 + 58 = 19
+25 + 59 = 20
+25 + 60 = 21
+25 + 61 = 22
+25 + 62 = 23
+25 + 63 = 24
+26 + 0 = 26
+26 + 1 = 27
+26 + 2 = 28
+26 + 3 = 29
+26 + 4 = 30
+26 + 5 = 31
+26 + 6 = 32
+26 + 7 = 33
+26 + 8 = 34
+26 + 9 = 35
+26 + 10 = 36
+26 + 11 = 37
+26 + 12 = 38
+26 + 13 = 39
+26 + 14 = 40
+26 + 15 = 41
+26 + 16 = 42
+26 + 17 = 43
+26 + 18 = 44
+26 + 19 = 45
+26 + 20 = 46
+26 + 21 = 47
+26 + 22 = 48
+26 + 23 = 49
+26 + 24 = 50
+26 + 25 = 51
+26 + 26 = 52
+26 + 27 = 53
+26 + 28 = 54
+26 + 29 = 55
+26 + 30 = 56
+26 + 31 = 57
+26 + 32 = 58
+26 + 33 = 59
+26 + 34 = 60
+26 + 35 = 61
+26 + 36 = 62
+26 + 37 = 63
+26 + 38 = 0
+26 + 39 = 1
+26 + 40 = 2
+26 + 41 = 3
+26 + 42 = 4
+26 + 43 = 5
+26 + 44 = 6
+26 + 45 = 7
+26 + 46 = 8
+26 + 47 = 9
+26 + 48 = 10
+26 + 49 = 11
+26 + 50 = 12
+26 + 51 = 13
+26 + 52 = 14
+26 + 53 = 15
+26 + 54 = 16
+26 + 55 = 17
+26 + 56 = 18
+26 + 57 = 19
+26 + 58 = 20
+26 + 59 = 21
+26 + 60 = 22
+26 + 61 = 23
+26 + 62 = 24
+26 + 63 = 25
+27 + 0 = 27
+27 + 1 = 28
+27 + 2 = 29
+27 + 3 = 30
+27 + 4 = 31
+27 + 5 = 32
+27 + 6 = 33
+27 + 7 = 34
+27 + 8 = 35
+27 + 9 = 36
+27 + 10 = 37
+27 + 11 = 38
+27 + 12 = 39
+27 + 13 = 40
+27 + 14 = 41
+27 + 15 = 42
+27 + 16 = 43
+27 + 17 = 44
+27 + 18 = 45
+27 + 19 = 46
+27 + 20 = 47
+27 + 21 = 48
+27 + 22 = 49
+27 + 23 = 50
+27 + 24 = 51
+27 + 25 = 52
+27 + 26 = 53
+27 + 27 = 54
+27 + 28 = 55
+27 + 29 = 56
+27 + 30 = 57
+27 + 31 = 58
+27 + 32 = 59
+27 + 33 = 60
+27 + 34 = 61
+27 + 35 = 62
+27 + 36 = 63
+27 + 37 = 0
+27 + 38 = 1
+27 + 39 = 2
+27 + 40 = 3
+27 + 41 = 4
+27 + 42 = 5
+27 + 43 = 6
+27 + 44 = 7
+27 + 45 = 8
+27 + 46 = 9
+27 + 47 = 10
+27 + 48 = 11
+27 + 49 = 12
+27 + 50 = 13
+27 + 51 = 14
+27 + 52 = 15
+27 + 53 = 16
+27 + 54 = 17
+27 + 55 = 18
+27 + 56 = 19
+27 + 57 = 20
+27 + 58 = 21
+27 + 59 = 22
+27 + 60 = 23
+27 + 61 = 24
+27 + 62 = 25
+27 + 63 = 26
+28 + 0 = 28
+28 + 1 = 29
+28 + 2 = 30
+28 + 3 = 31
+28 + 4 = 32
+28 + 5 = 33
+28 + 6 = 34
+28 + 7 = 35
+28 + 8 = 36
+28 + 9 = 37
+28 + 10 = 38
+28 + 11 = 39
+28 + 12 = 40
+28 + 13 = 41
+28 + 14 = 42
+28 + 15 = 43
+28 + 16 = 44
+28 + 17 = 45
+28 + 18 = 46
+28 + 19 = 47
+28 + 20 = 48
+28 + 21 = 49
+28 + 22 = 50
+28 + 23 = 51
+28 + 24 = 52
+28 + 25 = 53
+28 + 26 = 54
+28 + 27 = 55
+28 + 28 = 56
+28 + 29 = 57
+28 + 30 = 58
+28 + 31 = 59
+28 + 32 = 60
+28 + 33 = 61
+28 + 34 = 62
+28 + 35 = 63
+28 + 36 = 0
+28 + 37 = 1
+28 + 38 = 2
+28 + 39 = 3
+28 + 40 = 4
+28 + 41 = 5
+28 + 42 = 6
+28 + 43 = 7
+28 + 44 = 8
+28 + 45 = 9
+28 + 46 = 10
+28 + 47 = 11
+28 + 48 = 12
+28 + 49 = 13
+28 + 50 = 14
+28 + 51 = 15
+28 + 52 = 16
+28 + 53 = 17
+28 + 54 = 18
+28 + 55 = 19
+28 + 56 = 20
+28 + 57 = 21
+28 + 58 = 22
+28 + 59 = 23
+28 + 60 = 24
+28 + 61 = 25
+28 + 62 = 26
+28 + 63 = 27
+29 + 0 = 29
+29 + 1 = 30
+29 + 2 = 31
+29 + 3 = 32
+29 + 4 = 33
+29 + 5 = 34
+29 + 6 = 35
+29 + 7 = 36
+29 + 8 = 37
+29 + 9 = 38
+29 + 10 = 39
+29 + 11 = 40
+29 + 12 = 41
+29 + 13 = 42
+29 + 14 = 43
+29 + 15 = 44
+29 + 16 = 45
+29 + 17 = 46
+29 + 18 = 47
+29 + 19 = 48
+29 + 20 = 49
+29 + 21 = 50
+29 + 22 = 51
+29 + 23 = 52
+29 + 24 = 53
+29 + 25 = 54
+29 + 26 = 55
+29 + 27 = 56
+29 + 28 = 57
+29 + 29 = 58
+29 + 30 = 59
+29 + 31 = 60
+29 + 32 = 61
+29 + 33 = 62
+29 + 34 = 63
+29 + 35 = 0
+29 + 36 = 1
+29 + 37 = 2
+29 + 38 = 3
+29 + 39 = 4
+29 + 40 = 5
+29 + 41 = 6
+29 + 42 = 7
+29 + 43 = 8
+29 + 44 = 9
+29 + 45 = 10
+29 + 46 = 11
+29 + 47 = 12
+29 + 48 = 13
+29 + 49 = 14
+29 + 50 = 15
+29 + 51 = 16
+29 + 52 = 17
+29 + 53 = 18
+29 + 54 = 19
+29 + 55 = 20
+29 + 56 = 21
+29 + 57 = 22
+29 + 58 = 23
+29 + 59 = 24
+29 + 60 = 25
+29 + 61 = 26
+29 + 62 = 27
+29 + 63 = 28
+30 + 0 = 30
+30 + 1 = 31
+30 + 2 = 32
+30 + 3 = 33
+30 + 4 = 34
+30 + 5 = 35
+30 + 6 = 36
+30 + 7 = 37
+30 + 8 = 38
+30 + 9 = 39
+30 + 10 = 40
+30 + 11 = 41
+30 + 12 = 42
+30 + 13 = 43
+30 + 14 = 44
+30 + 15 = 45
+30 + 16 = 46
+30 + 17 = 47
+30 + 18 = 48
+30 + 19 = 49
+30 + 20 = 50
+30 + 21 = 51
+30 + 22 = 52
+30 + 23 = 53
+30 + 24 = 54
+30 + 25 = 55
+30 + 26 = 56
+30 + 27 = 57
+30 + 28 = 58
+30 + 29 = 59
+30 + 30 = 60
+30 + 31 = 61
+30 + 32 = 62
+30 + 33 = 63
+30 + 34 = 0
+30 + 35 = 1
+30 + 36 = 2
+30 + 37 = 3
+30 + 38 = 4
+30 + 39 = 5
+30 + 40 = 6
+30 + 41 = 7
+30 + 42 = 8
+30 + 43 = 9
+30 + 44 = 10
+30 + 45 = 11
+30 + 46 = 12
+30 + 47 = 13
+30 + 48 = 14
+30 + 49 = 15
+30 + 50 = 16
+30 + 51 = 17
+30 + 52 = 18
+30 + 53 = 19
+30 + 54 = 20
+30 + 55 = 21
+30 + 56 = 22
+30 + 57 = 23
+30 + 58 = 24
+30 + 59 = 25
+30 + 60 = 26
+30 + 61 = 27
+30 + 62 = 28
+30 + 63 = 29
+31 + 0 = 31
+31 + 1 = 32
+31 + 2 = 33
+31 + 3 = 34
+31 + 4 = 35
+31 + 5 = 36
+31 + 6 = 37
+31 + 7 = 38
+31 + 8 = 39
+31 + 9 = 40
+31 + 10 = 41
+31 + 11 = 42
+31 + 12 = 43
+31 + 13 = 44
+31 + 14 = 45
+31 + 15 = 46
+31 + 16 = 47
+31 + 17 = 48
+31 + 18 = 49
+31 + 19 = 50
+31 + 20 = 51
+31 + 21 = 52
+31 + 22 = 53
+31 + 23 = 54
+31 + 24 = 55
+31 + 25 = 56
+31 + 26 = 57
+31 + 27 = 58
+31 + 28 = 59
+31 + 29 = 60
+31 + 30 = 61
+31 + 31 = 62
+31 + 32 = 63
+31 + 33 = 0
+31 + 34 = 1
+31 + 35 = 2
+31 + 36 = 3
+31 + 37 = 4
+31 + 38 = 5
+31 + 39 = 6
+31 + 40 = 7
+31 + 41 = 8
+31 + 42 = 9
+31 + 43 = 10
+31 + 44 = 11
+31 + 45 = 12
+31 + 46 = 13
+31 + 47 = 14
+31 + 48 = 15
+31 + 49 = 16
+31 + 50 = 17
+31 + 51 = 18
+31 + 52 = 19
+31 + 53 = 20
+31 + 54 = 21
+31 + 55 = 22
+31 + 56 = 23
+31 + 57 = 24
+31 + 58 = 25
+31 + 59 = 26
+31 + 60 = 27
+31 + 61 = 28
+31 + 62 = 29
+31 + 63 = 30
+32 + 0 = 32
+32 + 1 = 33
+32 + 2 = 34
+32 + 3 = 35
+32 + 4 = 36
+32 + 5 = 37
+32 + 6 = 38
+32 + 7 = 39
+32 + 8 = 40
+32 + 9 = 41
+32 + 10 = 42
+32 + 11 = 43
+32 + 12 = 44
+32 + 13 = 45
+32 + 14 = 46
+32 + 15 = 47
+32 + 16 = 48
+32 + 17 = 49
+32 + 18 = 50
+32 + 19 = 51
+32 + 20 = 52
+32 + 21 = 53
+32 + 22 = 54
+32 + 23 = 55
+32 + 24 = 56
+32 + 25 = 57
+32 + 26 = 58
+32 + 27 = 59
+32 + 28 = 60
+32 + 29 = 61
+32 + 30 = 62
+32 + 31 = 63
+32 + 32 = 0
+32 + 33 = 1
+32 + 34 = 2
+32 + 35 = 3
+32 + 36 = 4
+32 + 37 = 5
+32 + 38 = 6
+32 + 39 = 7
+32 + 40 = 8
+32 + 41 = 9
+32 + 42 = 10
+32 + 43 = 11
+32 + 44 = 12
+32 + 45 = 13
+32 + 46 = 14
+32 + 47 = 15
+32 + 48 = 16
+32 + 49 = 17
+32 + 50 = 18
+32 + 51 = 19
+32 + 52 = 20
+32 + 53 = 21
+32 + 54 = 22
+32 + 55 = 23
+32 + 56 = 24
+32 + 57 = 25
+32 + 58 = 26
+32 + 59 = 27
+32 + 60 = 28
+32 + 61 = 29
+32 + 62 = 30
+32 + 63 = 31
+33 + 0 = 33
+33 + 1 = 34
+33 + 2 = 35
+33 + 3 = 36
+33 + 4 = 37
+33 + 5 = 38
+33 + 6 = 39
+33 + 7 = 40
+33 + 8 = 41
+33 + 9 = 42
+33 + 10 = 43
+33 + 11 = 44
+33 + 12 = 45
+33 + 13 = 46
+33 + 14 = 47
+33 + 15 = 48
+33 + 16 = 49
+33 + 17 = 50
+33 + 18 = 51
+33 + 19 = 52
+33 + 20 = 53
+33 + 21 = 54
+33 + 22 = 55
+33 + 23 = 56
+33 + 24 = 57
+33 + 25 = 58
+33 + 26 = 59
+33 + 27 = 60
+33 + 28 = 61
+33 + 29 = 62
+33 + 30 = 63
+33 + 31 = 0
+33 + 32 = 1
+33 + 33 = 2
+33 + 34 = 3
+33 + 35 = 4
+33 + 36 = 5
+33 + 37 = 6
+33 + 38 = 7
+33 + 39 = 8
+33 + 40 = 9
+33 + 41 = 10
+33 + 42 = 11
+33 + 43 = 12
+33 + 44 = 13
+33 + 45 = 14
+33 + 46 = 15
+33 + 47 = 16
+33 + 48 = 17
+33 + 49 = 18
+33 + 50 = 19
+33 + 51 = 20
+33 + 52 = 21
+33 + 53 = 22
+33 + 54 = 23
+33 + 55 = 24
+33 + 56 = 25
+33 + 57 = 26
+33 + 58 = 27
+33 + 59 = 28
+33 + 60 = 29
+33 + 61 = 30
+33 + 62 = 31
+33 + 63 = 32
+34 + 0 = 34
+34 + 1 = 35
+34 + 2 = 36
+34 + 3 = 37
+34 + 4 = 38
+34 + 5 = 39
+34 + 6 = 40
+34 + 7 = 41
+34 + 8 = 42
+34 + 9 = 43
+34 + 10 = 44
+34 + 11 = 45
+34 + 12 = 46
+34 + 13 = 47
+34 + 14 = 48
+34 + 15 = 49
+34 + 16 = 50
+34 + 17 = 51
+34 + 18 = 52
+34 + 19 = 53
+34 + 20 = 54
+34 + 21 = 55
+34 + 22 = 56
+34 + 23 = 57
+34 + 24 = 58
+34 + 25 = 59
+34 + 26 = 60
+34 + 27 = 61
+34 + 28 = 62
+34 + 29 = 63
+34 + 30 = 0
+34 + 31 = 1
+34 + 32 = 2
+34 + 33 = 3
+34 + 34 = 4
+34 + 35 = 5
+34 + 36 = 6
+34 + 37 = 7
+34 + 38 = 8
+34 + 39 = 9
+34 + 40 = 10
+34 + 41 = 11
+34 + 42 = 12
+34 + 43 = 13
+34 + 44 = 14
+34 + 45 = 15
+34 + 46 = 16
+34 + 47 = 17
+34 + 48 = 18
+34 + 49 = 19
+34 + 50 = 20
+34 + 51 = 21
+34 + 52 = 22
+34 + 53 = 23
+34 + 54 = 24
+34 + 55 = 25
+34 + 56 = 26
+34 + 57 = 27
+34 + 58 = 28
+34 + 59 = 29
+34 + 60 = 30
+34 + 61 = 31
+34 + 62 = 32
+34 + 63 = 33
+35 + 0 = 35
+35 + 1 = 36
+35 + 2 = 37
+35 + 3 = 38
+35 + 4 = 39
+35 + 5 = 40
+35 + 6 = 41
+35 + 7 = 42
+35 + 8 = 43
+35 + 9 = 44
+35 + 10 = 45
+35 + 11 = 46
+35 + 12 = 47
+35 + 13 = 48
+35 + 14 = 49
+35 + 15 = 50
+35 + 16 = 51
+35 + 17 = 52
+35 + 18 = 53
+35 + 19 = 54
+35 + 20 = 55
+35 + 21 = 56
+35 + 22 = 57
+35 + 23 = 58
+35 + 24 = 59
+35 + 25 = 60
+35 + 26 = 61
+35 + 27 = 62
+35 + 28 = 63
+35 + 29 = 0
+35 + 30 = 1
+35 + 31 = 2
+35 + 32 = 3
+35 + 33 = 4
+35 + 34 = 5
+35 + 35 = 6
+35 + 36 = 7
+35 + 37 = 8
+35 + 38 = 9
+35 + 39 = 10
+35 + 40 = 11
+35 + 41 = 12
+35 + 42 = 13
+35 + 43 = 14
+35 + 44 = 15
+35 + 45 = 16
+35 + 46 = 17
+35 + 47 = 18
+35 + 48 = 19
+35 + 49 = 20
+35 + 50 = 21
+35 + 51 = 22
+35 + 52 = 23
+35 + 53 = 24
+35 + 54 = 25
+35 + 55 = 26
+35 + 56 = 27
+35 + 57 = 28
+35 + 58 = 29
+35 + 59 = 30
+35 + 60 = 31
+35 + 61 = 32
+35 + 62 = 33
+35 + 63 = 34
+36 + 0 = 36
+36 + 1 = 37
+36 + 2 = 38
+36 + 3 = 39
+36 + 4 = 40
+36 + 5 = 41
+36 + 6 = 42
+36 + 7 = 43
+36 + 8 = 44
+36 + 9 = 45
+36 + 10 = 46
+36 + 11 = 47
+36 + 12 = 48
+36 + 13 = 49
+36 + 14 = 50
+36 + 15 = 51
+36 + 16 = 52
+36 + 17 = 53
+36 + 18 = 54
+36 + 19 = 55
+36 + 20 = 56
+36 + 21 = 57
+36 + 22 = 58
+36 + 23 = 59
+36 + 24 = 60
+36 + 25 = 61
+36 + 26 = 62
+36 + 27 = 63
+36 + 28 = 0
+36 + 29 = 1
+36 + 30 = 2
+36 + 31 = 3
+36 + 32 = 4
+36 + 33 = 5
+36 + 34 = 6
+36 + 35 = 7
+36 + 36 = 8
+36 + 37 = 9
+36 + 38 = 10
+36 + 39 = 11
+36 + 40 = 12
+36 + 41 = 13
+36 + 42 = 14
+36 + 43 = 15
+36 + 44 = 16
+36 + 45 = 17
+36 + 46 = 18
+36 + 47 = 19
+36 + 48 = 20
+36 + 49 = 21
+36 + 50 = 22
+36 + 51 = 23
+36 + 52 = 24
+36 + 53 = 25
+36 + 54 = 26
+36 + 55 = 27
+36 + 56 = 28
+36 + 57 = 29
+36 + 58 = 30
+36 + 59 = 31
+36 + 60 = 32
+36 + 61 = 33
+36 + 62 = 34
+36 + 63 = 35
+37 + 0 = 37
+37 + 1 = 38
+37 + 2 = 39
+37 + 3 = 40
+37 + 4 = 41
+37 + 5 = 42
+37 + 6 = 43
+37 + 7 = 44
+37 + 8 = 45
+37 + 9 = 46
+37 + 10 = 47
+37 + 11 = 48
+37 + 12 = 49
+37 + 13 = 50
+37 + 14 = 51
+37 + 15 = 52
+37 + 16 = 53
+37 + 17 = 54
+37 + 18 = 55
+37 + 19 = 56
+37 + 20 = 57
+37 + 21 = 58
+37 + 22 = 59
+37 + 23 = 60
+37 + 24 = 61
+37 + 25 = 62
+37 + 26 = 63
+37 + 27 = 0
+37 + 28 = 1
+37 + 29 = 2
+37 + 30 = 3
+37 + 31 = 4
+37 + 32 = 5
+37 + 33 = 6
+37 + 34 = 7
+37 + 35 = 8
+37 + 36 = 9
+37 + 37 = 10
+37 + 38 = 11
+37 + 39 = 12
+37 + 40 = 13
+37 + 41 = 14
+37 + 42 = 15
+37 + 43 = 16
+37 + 44 = 17
+37 + 45 = 18
+37 + 46 = 19
+37 + 47 = 20
+37 + 48 = 21
+37 + 49 = 22
+37 + 50 = 23
+37 + 51 = 24
+37 + 52 = 25
+37 + 53 = 26
+37 + 54 = 27
+37 + 55 = 28
+37 + 56 = 29
+37 + 57 = 30
+37 + 58 = 31
+37 + 59 = 32
+37 + 60 = 33
+37 + 61 = 34
+37 + 62 = 35
+37 + 63 = 36
+38 + 0 = 38
+38 + 1 = 39
+38 + 2 = 40
+38 + 3 = 41
+38 + 4 = 42
+38 + 5 = 43
+38 + 6 = 44
+38 + 7 = 45
+38 + 8 = 46
+38 + 9 = 47
+38 + 10 = 48
+38 + 11 = 49
+38 + 12 = 50
+38 + 13 = 51
+38 + 14 = 52
+38 + 15 = 53
+38 + 16 = 54
+38 + 17 = 55
+38 + 18 = 56
+38 + 19 = 57
+38 + 20 = 58
+38 + 21 = 59
+38 + 22 = 60
+38 + 23 = 61
+38 + 24 = 62
+38 + 25 = 63
+38 + 26 = 0
+38 + 27 = 1
+38 + 28 = 2
+38 + 29 = 3
+38 + 30 = 4
+38 + 31 = 5
+38 + 32 = 6
+38 + 33 = 7
+38 + 34 = 8
+38 + 35 = 9
+38 + 36 = 10
+38 + 37 = 11
+38 + 38 = 12
+38 + 39 = 13
+38 + 40 = 14
+38 + 41 = 15
+38 + 42 = 16
+38 + 43 = 17
+38 + 44 = 18
+38 + 45 = 19
+38 + 46 = 20
+38 + 47 = 21
+38 + 48 = 22
+38 + 49 = 23
+38 + 50 = 24
+38 + 51 = 25
+38 + 52 = 26
+38 + 53 = 27
+38 + 54 = 28
+38 + 55 = 29
+38 + 56 = 30
+38 + 57 = 31
+38 + 58 = 32
+38 + 59 = 33
+38 + 60 = 34
+38 + 61 = 35
+38 + 62 = 36
+38 + 63 = 37
+39 + 0 = 39
+39 + 1 = 40
+39 + 2 = 41
+39 + 3 = 42
+39 + 4 = 43
+39 + 5 = 44
+39 + 6 = 45
+39 + 7 = 46
+39 + 8 = 47
+39 + 9 = 48
+39 + 10 = 49
+39 + 11 = 50
+39 + 12 = 51
+39 + 13 = 52
+39 + 14 = 53
+39 + 15 = 54
+39 + 16 = 55
+39 + 17 = 56
+39 + 18 = 57
+39 + 19 = 58
+39 + 20 = 59
+39 + 21 = 60
+39 + 22 = 61
+39 + 23 = 62
+39 + 24 = 63
+39 + 25 = 0
+39 + 26 = 1
+39 + 27 = 2
+39 + 28 = 3
+39 + 29 = 4
+39 + 30 = 5
+39 + 31 = 6
+39 + 32 = 7
+39 + 33 = 8
+39 + 34 = 9
+39 + 35 = 10
+39 + 36 = 11
+39 + 37 = 12
+39 + 38 = 13
+39 + 39 = 14
+39 + 40 = 15
+39 + 41 = 16
+39 + 42 = 17
+39 + 43 = 18
+39 + 44 = 19
+39 + 45 = 20
+39 + 46 = 21
+39 + 47 = 22
+39 + 48 = 23
+39 + 49 = 24
+39 + 50 = 25
+39 + 51 = 26
+39 + 52 = 27
+39 + 53 = 28
+39 + 54 = 29
+39 + 55 = 30
+39 + 56 = 31
+39 + 57 = 32
+39 + 58 = 33
+39 + 59 = 34
+39 + 60 = 35
+39 + 61 = 36
+39 + 62 = 37
+39 + 63 = 38
+40 + 0 = 40
+40 + 1 = 41
+40 + 2 = 42
+40 + 3 = 43
+40 + 4 = 44
+40 + 5 = 45
+40 + 6 = 46
+40 + 7 = 47
+40 + 8 = 48
+40 + 9 = 49
+40 + 10 = 50
+40 + 11 = 51
+40 + 12 = 52
+40 + 13 = 53
+40 + 14 = 54
+40 + 15 = 55
+40 + 16 = 56
+40 + 17 = 57
+40 + 18 = 58
+40 + 19 = 59
+40 + 20 = 60
+40 + 21 = 61
+40 + 22 = 62
+40 + 23 = 63
+40 + 24 = 0
+40 + 25 = 1
+40 + 26 = 2
+40 + 27 = 3
+40 + 28 = 4
+40 + 29 = 5
+40 + 30 = 6
+40 + 31 = 7
+40 + 32 = 8
+40 + 33 = 9
+40 + 34 = 10
+40 + 35 = 11
+40 + 36 = 12
+40 + 37 = 13
+40 + 38 = 14
+40 + 39 = 15
+40 + 40 = 16
+40 + 41 = 17
+40 + 42 = 18
+40 + 43 = 19
+40 + 44 = 20
+40 + 45 = 21
+40 + 46 = 22
+40 + 47 = 23
+40 + 48 = 24
+40 + 49 = 25
+40 + 50 = 26
+40 + 51 = 27
+40 + 52 = 28
+40 + 53 = 29
+40 + 54 = 30
+40 + 55 = 31
+40 + 56 = 32
+40 + 57 = 33
+40 + 58 = 34
+40 + 59 = 35
+40 + 60 = 36
+40 + 61 = 37
+40 + 62 = 38
+40 + 63 = 39
+41 + 0 = 41
+41 + 1 = 42
+41 + 2 = 43
+41 + 3 = 44
+41 + 4 = 45
+41 + 5 = 46
+41 + 6 = 47
+41 + 7 = 48
+41 + 8 = 49
+41 + 9 = 50
+41 + 10 = 51
+41 + 11 = 52
+41 + 12 = 53
+41 + 13 = 54
+41 + 14 = 55
+41 + 15 = 56
+41 + 16 = 57
+41 + 17 = 58
+41 + 18 = 59
+41 + 19 = 60
+41 + 20 = 61
+41 + 21 = 62
+41 + 22 = 63
+41 + 23 = 0
+41 + 24 = 1
+41 + 25 = 2
+41 + 26 = 3
+41 + 27 = 4
+41 + 28 = 5
+41 + 29 = 6
+41 + 30 = 7
+41 + 31 = 8
+41 + 32 = 9
+41 + 33 = 10
+41 + 34 = 11
+41 + 35 = 12
+41 + 36 = 13
+41 + 37 = 14
+41 + 38 = 15
+41 + 39 = 16
+41 + 40 = 17
+41 + 41 = 18
+41 + 42 = 19
+41 + 43 = 20
+41 + 44 = 21
+41 + 45 = 22
+41 + 46 = 23
+41 + 47 = 24
+41 + 48 = 25
+41 + 49 = 26
+41 + 50 = 27
+41 + 51 = 28
+41 + 52 = 29
+41 + 53 = 30
+41 + 54 = 31
+41 + 55 = 32
+41 + 56 = 33
+41 + 57 = 34
+41 + 58 = 35
+41 + 59 = 36
+41 + 60 = 37
+41 + 61 = 38
+41 + 62 = 39
+41 + 63 = 40
+42 + 0 = 42
+42 + 1 = 43
+42 + 2 = 44
+42 + 3 = 45
+42 + 4 = 46
+42 + 5 = 47
+42 + 6 = 48
+42 + 7 = 49
+42 + 8 = 50
+42 + 9 = 51
+42 + 10 = 52
+42 + 11 = 53
+42 + 12 = 54
+42 + 13 = 55
+42 + 14 = 56
+42 + 15 = 57
+42 + 16 = 58
+42 + 17 = 59
+42 + 18 = 60
+42 + 19 = 61
+42 + 20 = 62
+42 + 21 = 63
+42 + 22 = 0
+42 + 23 = 1
+42 + 24 = 2
+42 + 25 = 3
+42 + 26 = 4
+42 + 27 = 5
+42 + 28 = 6
+42 + 29 = 7
+42 + 30 = 8
+42 + 31 = 9
+42 + 32 = 10
+42 + 33 = 11
+42 + 34 = 12
+42 + 35 = 13
+42 + 36 = 14
+42 + 37 = 15
+42 + 38 = 16
+42 + 39 = 17
+42 + 40 = 18
+42 + 41 = 19
+42 + 42 = 20
+42 + 43 = 21
+42 + 44 = 22
+42 + 45 = 23
+42 + 46 = 24
+42 + 47 = 25
+42 + 48 = 26
+42 + 49 = 27
+42 + 50 = 28
+42 + 51 = 29
+42 + 52 = 30
+42 + 53 = 31
+42 + 54 = 32
+42 + 55 = 33
+42 + 56 = 34
+42 + 57 = 35
+42 + 58 = 36
+42 + 59 = 37
+42 + 60 = 38
+42 + 61 = 39
+42 + 62 = 40
+42 + 63 = 41
+43 + 0 = 43
+43 + 1 = 44
+43 + 2 = 45
+43 + 3 = 46
+43 + 4 = 47
+43 + 5 = 48
+43 + 6 = 49
+43 + 7 = 50
+43 + 8 = 51
+43 + 9 = 52
+43 + 10 = 53
+43 + 11 = 54
+43 + 12 = 55
+43 + 13 = 56
+43 + 14 = 57
+43 + 15 = 58
+43 + 16 = 59
+43 + 17 = 60
+43 + 18 = 61
+43 + 19 = 62
+43 + 20 = 63
+43 + 21 = 0
+43 + 22 = 1
+43 + 23 = 2
+43 + 24 = 3
+43 + 25 = 4
+43 + 26 = 5
+43 + 27 = 6
+43 + 28 = 7
+43 + 29 = 8
+43 + 30 = 9
+43 + 31 = 10
+43 + 32 = 11
+43 + 33 = 12
+43 + 34 = 13
+43 + 35 = 14
+43 + 36 = 15
+43 + 37 = 16
+43 + 38 = 17
+43 + 39 = 18
+43 + 40 = 19
+43 + 41 = 20
+43 + 42 = 21
+43 + 43 = 22
+43 + 44 = 23
+43 + 45 = 24
+43 + 46 = 25
+43 + 47 = 26
+43 + 48 = 27
+43 + 49 = 28
+43 + 50 = 29
+43 + 51 = 30
+43 + 52 = 31
+43 + 53 = 32
+43 + 54 = 33
+43 + 55 = 34
+43 + 56 = 35
+43 + 57 = 36
+43 + 58 = 37
+43 + 59 = 38
+43 + 60 = 39
+43 + 61 = 40
+43 + 62 = 41
+43 + 63 = 42
+44 + 0 = 44
+44 + 1 = 45
+44 + 2 = 46
+44 + 3 = 47
+44 + 4 = 48
+44 + 5 = 49
+44 + 6 = 50
+44 + 7 = 51
+44 + 8 = 52
+44 + 9 = 53
+44 + 10 = 54
+44 + 11 = 55
+44 + 12 = 56
+44 + 13 = 57
+44 + 14 = 58
+44 + 15 = 59
+44 + 16 = 60
+44 + 17 = 61
+44 + 18 = 62
+44 + 19 = 63
+44 + 20 = 0
+44 + 21 = 1
+44 + 22 = 2
+44 + 23 = 3
+44 + 24 = 4
+44 + 25 = 5
+44 + 26 = 6
+44 + 27 = 7
+44 + 28 = 8
+44 + 29 = 9
+44 + 30 = 10
+44 + 31 = 11
+44 + 32 = 12
+44 + 33 = 13
+44 + 34 = 14
+44 + 35 = 15
+44 + 36 = 16
+44 + 37 = 17
+44 + 38 = 18
+44 + 39 = 19
+44 + 40 = 20
+44 + 41 = 21
+44 + 42 = 22
+44 + 43 = 23
+44 + 44 = 24
+44 + 45 = 25
+44 + 46 = 26
+44 + 47 = 27
+44 + 48 = 28
+44 + 49 = 29
+44 + 50 = 30
+44 + 51 = 31
+44 + 52 = 32
+44 + 53 = 33
+44 + 54 = 34
+44 + 55 = 35
+44 + 56 = 36
+44 + 57 = 37
+44 + 58 = 38
+44 + 59 = 39
+44 + 60 = 40
+44 + 61 = 41
+44 + 62 = 42
+44 + 63 = 43
+45 + 0 = 45
+45 + 1 = 46
+45 + 2 = 47
+45 + 3 = 48
+45 + 4 = 49
+45 + 5 = 50
+45 + 6 = 51
+45 + 7 = 52
+45 + 8 = 53
+45 + 9 = 54
+45 + 10 = 55
+45 + 11 = 56
+45 + 12 = 57
+45 + 13 = 58
+45 + 14 = 59
+45 + 15 = 60
+45 + 16 = 61
+45 + 17 = 62
+45 + 18 = 63
+45 + 19 = 0
+45 + 20 = 1
+45 + 21 = 2
+45 + 22 = 3
+45 + 23 = 4
+45 + 24 = 5
+45 + 25 = 6
+45 + 26 = 7
+45 + 27 = 8
+45 + 28 = 9
+45 + 29 = 10
+45 + 30 = 11
+45 + 31 = 12
+45 + 32 = 13
+45 + 33 = 14
+45 + 34 = 15
+45 + 35 = 16
+45 + 36 = 17
+45 + 37 = 18
+45 + 38 = 19
+45 + 39 = 20
+45 + 40 = 21
+45 + 41 = 22
+45 + 42 = 23
+45 + 43 = 24
+45 + 44 = 25
+45 + 45 = 26
+45 + 46 = 27
+45 + 47 = 28
+45 + 48 = 29
+45 + 49 = 30
+45 + 50 = 31
+45 + 51 = 32
+45 + 52 = 33
+45 + 53 = 34
+45 + 54 = 35
+45 + 55 = 36
+45 + 56 = 37
+45 + 57 = 38
+45 + 58 = 39
+45 + 59 = 40
+45 + 60 = 41
+45 + 61 = 42
+45 + 62 = 43
+45 + 63 = 44
+46 + 0 = 46
+46 + 1 = 47
+46 + 2 = 48
+46 + 3 = 49
+46 + 4 = 50
+46 + 5 = 51
+46 + 6 = 52
+46 + 7 = 53
+46 + 8 = 54
+46 + 9 = 55
+46 + 10 = 56
+46 + 11 = 57
+46 + 12 = 58
+46 + 13 = 59
+46 + 14 = 60
+46 + 15 = 61
+46 + 16 = 62
+46 + 17 = 63
+46 + 18 = 0
+46 + 19 = 1
+46 + 20 = 2
+46 + 21 = 3
+46 + 22 = 4
+46 + 23 = 5
+46 + 24 = 6
+46 + 25 = 7
+46 + 26 = 8
+46 + 27 = 9
+46 + 28 = 10
+46 + 29 = 11
+46 + 30 = 12
+46 + 31 = 13
+46 + 32 = 14
+46 + 33 = 15
+46 + 34 = 16
+46 + 35 = 17
+46 + 36 = 18
+46 + 37 = 19
+46 + 38 = 20
+46 + 39 = 21
+46 + 40 = 22
+46 + 41 = 23
+46 + 42 = 24
+46 + 43 = 25
+46 + 44 = 26
+46 + 45 = 27
+46 + 46 = 28
+46 + 47 = 29
+46 + 48 = 30
+46 + 49 = 31
+46 + 50 = 32
+46 + 51 = 33
+46 + 52 = 34
+46 + 53 = 35
+46 + 54 = 36
+46 + 55 = 37
+46 + 56 = 38
+46 + 57 = 39
+46 + 58 = 40
+46 + 59 = 41
+46 + 60 = 42
+46 + 61 = 43
+46 + 62 = 44
+46 + 63 = 45
+47 + 0 = 47
+47 + 1 = 48
+47 + 2 = 49
+47 + 3 = 50
+47 + 4 = 51
+47 + 5 = 52
+47 + 6 = 53
+47 + 7 = 54
+47 + 8 = 55
+47 + 9 = 56
+47 + 10 = 57
+47 + 11 = 58
+47 + 12 = 59
+47 + 13 = 60
+47 + 14 = 61
+47 + 15 = 62
+47 + 16 = 63
+47 + 17 = 0
+47 + 18 = 1
+47 + 19 = 2
+47 + 20 = 3
+47 + 21 = 4
+47 + 22 = 5
+47 + 23 = 6
+47 + 24 = 7
+47 + 25 = 8
+47 + 26 = 9
+47 + 27 = 10
+47 + 28 = 11
+47 + 29 = 12
+47 + 30 = 13
+47 + 31 = 14
+47 + 32 = 15
+47 + 33 = 16
+47 + 34 = 17
+47 + 35 = 18
+47 + 36 = 19
+47 + 37 = 20
+47 + 38 = 21
+47 + 39 = 22
+47 + 40 = 23
+47 + 41 = 24
+47 + 42 = 25
+47 + 43 = 26
+47 + 44 = 27
+47 + 45 = 28
+47 + 46 = 29
+47 + 47 = 30
+47 + 48 = 31
+47 + 49 = 32
+47 + 50 = 33
+47 + 51 = 34
+47 + 52 = 35
+47 + 53 = 36
+47 + 54 = 37
+47 + 55 = 38
+47 + 56 = 39
+47 + 57 = 40
+47 + 58 = 41
+47 + 59 = 42
+47 + 60 = 43
+47 + 61 = 44
+47 + 62 = 45
+47 + 63 = 46
+48 + 0 = 48
+48 + 1 = 49
+48 + 2 = 50
+48 + 3 = 51
+48 + 4 = 52
+48 + 5 = 53
+48 + 6 = 54
+48 + 7 = 55
+48 + 8 = 56
+48 + 9 = 57
+48 + 10 = 58
+48 + 11 = 59
+48 + 12 = 60
+48 + 13 = 61
+48 + 14 = 62
+48 + 15 = 63
+48 + 16 = 0
+48 + 17 = 1
+48 + 18 = 2
+48 + 19 = 3
+48 + 20 = 4
+48 + 21 = 5
+48 + 22 = 6
+48 + 23 = 7
+48 + 24 = 8
+48 + 25 = 9
+48 + 26 = 10
+48 + 27 = 11
+48 + 28 = 12
+48 + 29 = 13
+48 + 30 = 14
+48 + 31 = 15
+48 + 32 = 16
+48 + 33 = 17
+48 + 34 = 18
+48 + 35 = 19
+48 + 36 = 20
+48 + 37 = 21
+48 + 38 = 22
+48 + 39 = 23
+48 + 40 = 24
+48 + 41 = 25
+48 + 42 = 26
+48 + 43 = 27
+48 + 44 = 28
+48 + 45 = 29
+48 + 46 = 30
+48 + 47 = 31
+48 + 48 = 32
+48 + 49 = 33
+48 + 50 = 34
+48 + 51 = 35
+48 + 52 = 36
+48 + 53 = 37
+48 + 54 = 38
+48 + 55 = 39
+48 + 56 = 40
+48 + 57 = 41
+48 + 58 = 42
+48 + 59 = 43
+48 + 60 = 44
+48 + 61 = 45
+48 + 62 = 46
+48 + 63 = 47
+49 + 0 = 49
+49 + 1 = 50
+49 + 2 = 51
+49 + 3 = 52
+49 + 4 = 53
+49 + 5 = 54
+49 + 6 = 55
+49 + 7 = 56
+49 + 8 = 57
+49 + 9 = 58
+49 + 10 = 59
+49 + 11 = 60
+49 + 12 = 61
+49 + 13 = 62
+49 + 14 = 63
+49 + 15 = 0
+49 + 16 = 1
+49 + 17 = 2
+49 + 18 = 3
+49 + 19 = 4
+49 + 20 = 5
+49 + 21 = 6
+49 + 22 = 7
+49 + 23 = 8
+49 + 24 = 9
+49 + 25 = 10
+49 + 26 = 11
+49 + 27 = 12
+49 + 28 = 13
+49 + 29 = 14
+49 + 30 = 15
+49 + 31 = 16
+49 + 32 = 17
+49 + 33 = 18
+49 + 34 = 19
+49 + 35 = 20
+49 + 36 = 21
+49 + 37 = 22
+49 + 38 = 23
+49 + 39 = 24
+49 + 40 = 25
+49 + 41 = 26
+49 + 42 = 27
+49 + 43 = 28
+49 + 44 = 29
+49 + 45 = 30
+49 + 46 = 31
+49 + 47 = 32
+49 + 48 = 33
+49 + 49 = 34
+49 + 50 = 35
+49 + 51 = 36
+49 + 52 = 37
+49 + 53 = 38
+49 + 54 = 39
+49 + 55 = 40
+49 + 56 = 41
+49 + 57 = 42
+49 + 58 = 43
+49 + 59 = 44
+49 + 60 = 45
+49 + 61 = 46
+49 + 62 = 47
+49 + 63 = 48
+50 + 0 = 50
+50 + 1 = 51
+50 + 2 = 52
+50 + 3 = 53
+50 + 4 = 54
+50 + 5 = 55
+50 + 6 = 56
+50 + 7 = 57
+50 + 8 = 58
+50 + 9 = 59
+50 + 10 = 60
+50 + 11 = 61
+50 + 12 = 62
+50 + 13 = 63
+50 + 14 = 0
+50 + 15 = 1
+50 + 16 = 2
+50 + 17 = 3
+50 + 18 = 4
+50 + 19 = 5
+50 + 20 = 6
+50 + 21 = 7
+50 + 22 = 8
+50 + 23 = 9
+50 + 24 = 10
+50 + 25 = 11
+50 + 26 = 12
+50 + 27 = 13
+50 + 28 = 14
+50 + 29 = 15
+50 + 30 = 16
+50 + 31 = 17
+50 + 32 = 18
+50 + 33 = 19
+50 + 34 = 20
+50 + 35 = 21
+50 + 36 = 22
+50 + 37 = 23
+50 + 38 = 24
+50 + 39 = 25
+50 + 40 = 26
+50 + 41 = 27
+50 + 42 = 28
+50 + 43 = 29
+50 + 44 = 30
+50 + 45 = 31
+50 + 46 = 32
+50 + 47 = 33
+50 + 48 = 34
+50 + 49 = 35
+50 + 50 = 36
+50 + 51 = 37
+50 + 52 = 38
+50 + 53 = 39
+50 + 54 = 40
+50 + 55 = 41
+50 + 56 = 42
+50 + 57 = 43
+50 + 58 = 44
+50 + 59 = 45
+50 + 60 = 46
+50 + 61 = 47
+50 + 62 = 48
+50 + 63 = 49
+51 + 0 = 51
+51 + 1 = 52
+51 + 2 = 53
+51 + 3 = 54
+51 + 4 = 55
+51 + 5 = 56
+51 + 6 = 57
+51 + 7 = 58
+51 + 8 = 59
+51 + 9 = 60
+51 + 10 = 61
+51 + 11 = 62
+51 + 12 = 63
+51 + 13 = 0
+51 + 14 = 1
+51 + 15 = 2
+51 + 16 = 3
+51 + 17 = 4
+51 + 18 = 5
+51 + 19 = 6
+51 + 20 = 7
+51 + 21 = 8
+51 + 22 = 9
+51 + 23 = 10
+51 + 24 = 11
+51 + 25 = 12
+51 + 26 = 13
+51 + 27 = 14
+51 + 28 = 15
+51 + 29 = 16
+51 + 30 = 17
+51 + 31 = 18
+51 + 32 = 19
+51 + 33 = 20
+51 + 34 = 21
+51 + 35 = 22
+51 + 36 = 23
+51 + 37 = 24
+51 + 38 = 25
+51 + 39 = 26
+51 + 40 = 27
+51 + 41 = 28
+51 + 42 = 29
+51 + 43 = 30
+51 + 44 = 31
+51 + 45 = 32
+51 + 46 = 33
+51 + 47 = 34
+51 + 48 = 35
+51 + 49 = 36
+51 + 50 = 37
+51 + 51 = 38
+51 + 52 = 39
+51 + 53 = 40
+51 + 54 = 41
+51 + 55 = 42
+51 + 56 = 43
+51 + 57 = 44
+51 + 58 = 45
+51 + 59 = 46
+51 + 60 = 47
+51 + 61 = 48
+51 + 62 = 49
+51 + 63 = 50
+52 + 0 = 52
+52 + 1 = 53
+52 + 2 = 54
+52 + 3 = 55
+52 + 4 = 56
+52 + 5 = 57
+52 + 6 = 58
+52 + 7 = 59
+52 + 8 = 60
+52 + 9 = 61
+52 + 10 = 62
+52 + 11 = 63
+52 + 12 = 0
+52 + 13 = 1
+52 + 14 = 2
+52 + 15 = 3
+52 + 16 = 4
+52 + 17 = 5
+52 + 18 = 6
+52 + 19 = 7
+52 + 20 = 8
+52 + 21 = 9
+52 + 22 = 10
+52 + 23 = 11
+52 + 24 = 12
+52 + 25 = 13
+52 + 26 = 14
+52 + 27 = 15
+52 + 28 = 16
+52 + 29 = 17
+52 + 30 = 18
+52 + 31 = 19
+52 + 32 = 20
+52 + 33 = 21
+52 + 34 = 22
+52 + 35 = 23
+52 + 36 = 24
+52 + 37 = 25
+52 + 38 = 26
+52 + 39 = 27
+52 + 40 = 28
+52 + 41 = 29
+52 + 42 = 30
+52 + 43 = 31
+52 + 44 = 32
+52 + 45 = 33
+52 + 46 = 34
+52 + 47 = 35
+52 + 48 = 36
+52 + 49 = 37
+52 + 50 = 38
+52 + 51 = 39
+52 + 52 = 40
+52 + 53 = 41
+52 + 54 = 42
+52 + 55 = 43
+52 + 56 = 44
+52 + 57 = 45
+52 + 58 = 46
+52 + 59 = 47
+52 + 60 = 48
+52 + 61 = 49
+52 + 62 = 50
+52 + 63 = 51
+53 + 0 = 53
+53 + 1 = 54
+53 + 2 = 55
+53 + 3 = 56
+53 + 4 = 57
+53 + 5 = 58
+53 + 6 = 59
+53 + 7 = 60
+53 + 8 = 61
+53 + 9 = 62
+53 + 10 = 63
+53 + 11 = 0
+53 + 12 = 1
+53 + 13 = 2
+53 + 14 = 3
+53 + 15 = 4
+53 + 16 = 5
+53 + 17 = 6
+53 + 18 = 7
+53 + 19 = 8
+53 + 20 = 9
+53 + 21 = 10
+53 + 22 = 11
+53 + 23 = 12
+53 + 24 = 13
+53 + 25 = 14
+53 + 26 = 15
+53 + 27 = 16
+53 + 28 = 17
+53 + 29 = 18
+53 + 30 = 19
+53 + 31 = 20
+53 + 32 = 21
+53 + 33 = 22
+53 + 34 = 23
+53 + 35 = 24
+53 + 36 = 25
+53 + 37 = 26
+53 + 38 = 27
+53 + 39 = 28
+53 + 40 = 29
+53 + 41 = 30
+53 + 42 = 31
+53 + 43 = 32
+53 + 44 = 33
+53 + 45 = 34
+53 + 46 = 35
+53 + 47 = 36
+53 + 48 = 37
+53 + 49 = 38
+53 + 50 = 39
+53 + 51 = 40
+53 + 52 = 41
+53 + 53 = 42
+53 + 54 = 43
+53 + 55 = 44
+53 + 56 = 45
+53 + 57 = 46
+53 + 58 = 47
+53 + 59 = 48
+53 + 60 = 49
+53 + 61 = 50
+53 + 62 = 51
+53 + 63 = 52
+54 + 0 = 54
+54 + 1 = 55
+54 + 2 = 56
+54 + 3 = 57
+54 + 4 = 58
+54 + 5 = 59
+54 + 6 = 60
+54 + 7 = 61
+54 + 8 = 62
+54 + 9 = 63
+54 + 10 = 0
+54 + 11 = 1
+54 + 12 = 2
+54 + 13 = 3
+54 + 14 = 4
+54 + 15 = 5
+54 + 16 = 6
+54 + 17 = 7
+54 + 18 = 8
+54 + 19 = 9
+54 + 20 = 10
+54 + 21 = 11
+54 + 22 = 12
+54 + 23 = 13
+54 + 24 = 14
+54 + 25 = 15
+54 + 26 = 16
+54 + 27 = 17
+54 + 28 = 18
+54 + 29 = 19
+54 + 30 = 20
+54 + 31 = 21
+54 + 32 = 22
+54 + 33 = 23
+54 + 34 = 24
+54 + 35 = 25
+54 + 36 = 26
+54 + 37 = 27
+54 + 38 = 28
+54 + 39 = 29
+54 + 40 = 30
+54 + 41 = 31
+54 + 42 = 32
+54 + 43 = 33
+54 + 44 = 34
+54 + 45 = 35
+54 + 46 = 36
+54 + 47 = 37
+54 + 48 = 38
+54 + 49 = 39
+54 + 50 = 40
+54 + 51 = 41
+54 + 52 = 42
+54 + 53 = 43
+54 + 54 = 44
+54 + 55 = 45
+54 + 56 = 46
+54 + 57 = 47
+54 + 58 = 48
+54 + 59 = 49
+54 + 60 = 50
+54 + 61 = 51
+54 + 62 = 52
+54 + 63 = 53
+55 + 0 = 55
+55 + 1 = 56
+55 + 2 = 57
+55 + 3 = 58
+55 + 4 = 59
+55 + 5 = 60
+55 + 6 = 61
+55 + 7 = 62
+55 + 8 = 63
+55 + 9 = 0
+55 + 10 = 1
+55 + 11 = 2
+55 + 12 = 3
+55 + 13 = 4
+55 + 14 = 5
+55 + 15 = 6
+55 + 16 = 7
+55 + 17 = 8
+55 + 18 = 9
+55 + 19 = 10
+55 + 20 = 11
+55 + 21 = 12
+55 + 22 = 13
+55 + 23 = 14
+55 + 24 = 15
+55 + 25 = 16
+55 + 26 = 17
+55 + 27 = 18
+55 + 28 = 19
+55 + 29 = 20
+55 + 30 = 21
+55 + 31 = 22
+55 + 32 = 23
+55 + 33 = 24
+55 + 34 = 25
+55 + 35 = 26
+55 + 36 = 27
+55 + 37 = 28
+55 + 38 = 29
+55 + 39 = 30
+55 + 40 = 31
+55 + 41 = 32
+55 + 42 = 33
+55 + 43 = 34
+55 + 44 = 35
+55 + 45 = 36
+55 + 46 = 37
+55 + 47 = 38
+55 + 48 = 39
+55 + 49 = 40
+55 + 50 = 41
+55 + 51 = 42
+55 + 52 = 43
+55 + 53 = 44
+55 + 54 = 45
+55 + 55 = 46
+55 + 56 = 47
+55 + 57 = 48
+55 + 58 = 49
+55 + 59 = 50
+55 + 60 = 51
+55 + 61 = 52
+55 + 62 = 53
+55 + 63 = 54
+56 + 0 = 56
+56 + 1 = 57
+56 + 2 = 58
+56 + 3 = 59
+56 + 4 = 60
+56 + 5 = 61
+56 + 6 = 62
+56 + 7 = 63
+56 + 8 = 0
+56 + 9 = 1
+56 + 10 = 2
+56 + 11 = 3
+56 + 12 = 4
+56 + 13 = 5
+56 + 14 = 6
+56 + 15 = 7
+56 + 16 = 8
+56 + 17 = 9
+56 + 18 = 10
+56 + 19 = 11
+56 + 20 = 12
+56 + 21 = 13
+56 + 22 = 14
+56 + 23 = 15
+56 + 24 = 16
+56 + 25 = 17
+56 + 26 = 18
+56 + 27 = 19
+56 + 28 = 20
+56 + 29 = 21
+56 + 30 = 22
+56 + 31 = 23
+56 + 32 = 24
+56 + 33 = 25
+56 + 34 = 26
+56 + 35 = 27
+56 + 36 = 28
+56 + 37 = 29
+56 + 38 = 30
+56 + 39 = 31
+56 + 40 = 32
+56 + 41 = 33
+56 + 42 = 34
+56 + 43 = 35
+56 + 44 = 36
+56 + 45 = 37
+56 + 46 = 38
+56 + 47 = 39
+56 + 48 = 40
+56 + 49 = 41
+56 + 50 = 42
+56 + 51 = 43
+56 + 52 = 44
+56 + 53 = 45
+56 + 54 = 46
+56 + 55 = 47
+56 + 56 = 48
+56 + 57 = 49
+56 + 58 = 50
+56 + 59 = 51
+56 + 60 = 52
+56 + 61 = 53
+56 + 62 = 54
+56 + 63 = 55
+57 + 0 = 57
+57 + 1 = 58
+57 + 2 = 59
+57 + 3 = 60
+57 + 4 = 61
+57 + 5 = 62
+57 + 6 = 63
+57 + 7 = 0
+57 + 8 = 1
+57 + 9 = 2
+57 + 10 = 3
+57 + 11 = 4
+57 + 12 = 5
+57 + 13 = 6
+57 + 14 = 7
+57 + 15 = 8
+57 + 16 = 9
+57 + 17 = 10
+57 + 18 = 11
+57 + 19 = 12
+57 + 20 = 13
+57 + 21 = 14
+57 + 22 = 15
+57 + 23 = 16
+57 + 24 = 17
+57 + 25 = 18
+57 + 26 = 19
+57 + 27 = 20
+57 + 28 = 21
+57 + 29 = 22
+57 + 30 = 23
+57 + 31 = 24
+57 + 32 = 25
+57 + 33 = 26
+57 + 34 = 27
+57 + 35 = 28
+57 + 36 = 29
+57 + 37 = 30
+57 + 38 = 31
+57 + 39 = 32
+57 + 40 = 33
+57 + 41 = 34
+57 + 42 = 35
+57 + 43 = 36
+57 + 44 = 37
+57 + 45 = 38
+57 + 46 = 39
+57 + 47 = 40
+57 + 48 = 41
+57 + 49 = 42
+57 + 50 = 43
+57 + 51 = 44
+57 + 52 = 45
+57 + 53 = 46
+57 + 54 = 47
+57 + 55 = 48
+57 + 56 = 49
+57 + 57 = 50
+57 + 58 = 51
+57 + 59 = 52
+57 + 60 = 53
+57 + 61 = 54
+57 + 62 = 55
+57 + 63 = 56
+58 + 0 = 58
+58 + 1 = 59
+58 + 2 = 60
+58 + 3 = 61
+58 + 4 = 62
+58 + 5 = 63
+58 + 6 = 0
+58 + 7 = 1
+58 + 8 = 2
+58 + 9 = 3
+58 + 10 = 4
+58 + 11 = 5
+58 + 12 = 6
+58 + 13 = 7
+58 + 14 = 8
+58 + 15 = 9
+58 + 16 = 10
+58 + 17 = 11
+58 + 18 = 12
+58 + 19 = 13
+58 + 20 = 14
+58 + 21 = 15
+58 + 22 = 16
+58 + 23 = 17
+58 + 24 = 18
+58 + 25 = 19
+58 + 26 = 20
+58 + 27 = 21
+58 + 28 = 22
+58 + 29 = 23
+58 + 30 = 24
+58 + 31 = 25
+58 + 32 = 26
+58 + 33 = 27
+58 + 34 = 28
+58 + 35 = 29
+58 + 36 = 30
+58 + 37 = 31
+58 + 38 = 32
+58 + 39 = 33
+58 + 40 = 34
+58 + 41 = 35
+58 + 42 = 36
+58 + 43 = 37
+58 + 44 = 38
+58 + 45 = 39
+58 + 46 = 40
+58 + 47 = 41
+58 + 48 = 42
+58 + 49 = 43
+58 + 50 = 44
+58 + 51 = 45
+58 + 52 = 46
+58 + 53 = 47
+58 + 54 = 48
+58 + 55 = 49
+58 + 56 = 50
+58 + 57 = 51
+58 + 58 = 52
+58 + 59 = 53
+58 + 60 = 54
+58 + 61 = 55
+58 + 62 = 56
+58 + 63 = 57
+59 + 0 = 59
+59 + 1 = 60
+59 + 2 = 61
+59 + 3 = 62
+59 + 4 = 63
+59 + 5 = 0
+59 + 6 = 1
+59 + 7 = 2
+59 + 8 = 3
+59 + 9 = 4
+59 + 10 = 5
+59 + 11 = 6
+59 + 12 = 7
+59 + 13 = 8
+59 + 14 = 9
+59 + 15 = 10
+59 + 16 = 11
+59 + 17 = 12
+59 + 18 = 13
+59 + 19 = 14
+59 + 20 = 15
+59 + 21 = 16
+59 + 22 = 17
+59 + 23 = 18
+59 + 24 = 19
+59 + 25 = 20
+59 + 26 = 21
+59 + 27 = 22
+59 + 28 = 23
+59 + 29 = 24
+59 + 30 = 25
+59 + 31 = 26
+59 + 32 = 27
+59 + 33 = 28
+59 + 34 = 29
+59 + 35 = 30
+59 + 36 = 31
+59 + 37 = 32
+59 + 38 = 33
+59 + 39 = 34
+59 + 40 = 35
+59 + 41 = 36
+59 + 42 = 37
+59 + 43 = 38
+59 + 44 = 39
+59 + 45 = 40
+59 + 46 = 41
+59 + 47 = 42
+59 + 48 = 43
+59 + 49 = 44
+59 + 50 = 45
+59 + 51 = 46
+59 + 52 = 47
+59 + 53 = 48
+59 + 54 = 49
+59 + 55 = 50
+59 + 56 = 51
+59 + 57 = 52
+59 + 58 = 53
+59 + 59 = 54
+59 + 60 = 55
+59 + 61 = 56
+59 + 62 = 57
+59 + 63 = 58
+60 + 0 = 60
+60 + 1 = 61
+60 + 2 = 62
+60 + 3 = 63
+60 + 4 = 0
+60 + 5 = 1
+60 + 6 = 2
+60 + 7 = 3
+60 + 8 = 4
+60 + 9 = 5
+60 + 10 = 6
+60 + 11 = 7
+60 + 12 = 8
+60 + 13 = 9
+60 + 14 = 10
+60 + 15 = 11
+60 + 16 = 12
+60 + 17 = 13
+60 + 18 = 14
+60 + 19 = 15
+60 + 20 = 16
+60 + 21 = 17
+60 + 22 = 18
+60 + 23 = 19
+60 + 24 = 20
+60 + 25 = 21
+60 + 26 = 22
+60 + 27 = 23
+60 + 28 = 24
+60 + 29 = 25
+60 + 30 = 26
+60 + 31 = 27
+60 + 32 = 28
+60 + 33 = 29
+60 + 34 = 30
+60 + 35 = 31
+60 + 36 = 32
+60 + 37 = 33
+60 + 38 = 34
+60 + 39 = 35
+60 + 40 = 36
+60 + 41 = 37
+60 + 42 = 38
+60 + 43 = 39
+60 + 44 = 40
+60 + 45 = 41
+60 + 46 = 42
+60 + 47 = 43
+60 + 48 = 44
+60 + 49 = 45
+60 + 50 = 46
+60 + 51 = 47
+60 + 52 = 48
+60 + 53 = 49
+60 + 54 = 50
+60 + 55 = 51
+60 + 56 = 52
+60 + 57 = 53
+60 + 58 = 54
+60 + 59 = 55
+60 + 60 = 56
+60 + 61 = 57
+60 + 62 = 58
+60 + 63 = 59
+61 + 0 = 61
+61 + 1 = 62
+61 + 2 = 63
+61 + 3 = 0
+61 + 4 = 1
+61 + 5 = 2
+61 + 6 = 3
+61 + 7 = 4
+61 + 8 = 5
+61 + 9 = 6
+61 + 10 = 7
+61 + 11 = 8
+61 + 12 = 9
+61 + 13 = 10
+61 + 14 = 11
+61 + 15 = 12
+61 + 16 = 13
+61 + 17 = 14
+61 + 18 = 15
+61 + 19 = 16
+61 + 20 = 17
+61 + 21 = 18
+61 + 22 = 19
+61 + 23 = 20
+61 + 24 = 21
+61 + 25 = 22
+61 + 26 = 23
+61 + 27 = 24
+61 + 28 = 25
+61 + 29 = 26
+61 + 30 = 27
+61 + 31 = 28
+61 + 32 = 29
+61 + 33 = 30
+61 + 34 = 31
+61 + 35 = 32
+61 + 36 = 33
+61 + 37 = 34
+61 + 38 = 35
+61 + 39 = 36
+61 + 40 = 37
+61 + 41 = 38
+61 + 42 = 39
+61 + 43 = 40
+61 + 44 = 41
+61 + 45 = 42
+61 + 46 = 43
+61 + 47 = 44
+61 + 48 = 45
+61 + 49 = 46
+61 + 50 = 47
+61 + 51 = 48
+61 + 52 = 49
+61 + 53 = 50
+61 + 54 = 51
+61 + 55 = 52
+61 + 56 = 53
+61 + 57 = 54
+61 + 58 = 55
+61 + 59 = 56
+61 + 60 = 57
+61 + 61 = 58
+61 + 62 = 59
+61 + 63 = 60
+62 + 0 = 62
+62 + 1 = 63
+62 + 2 = 0
+62 + 3 = 1
+62 + 4 = 2
+62 + 5 = 3
+62 + 6 = 4
+62 + 7 = 5
+62 + 8 = 6
+62 + 9 = 7
+62 + 10 = 8
+62 + 11 = 9
+62 + 12 = 10
+62 + 13 = 11
+62 + 14 = 12
+62 + 15 = 13
+62 + 16 = 14
+62 + 17 = 15
+62 + 18 = 16
+62 + 19 = 17
+62 + 20 = 18
+62 + 21 = 19
+62 + 22 = 20
+62 + 23 = 21
+62 + 24 = 22
+62 + 25 = 23
+62 + 26 = 24
+62 + 27 = 25
+62 + 28 = 26
+62 + 29 = 27
+62 + 30 = 28
+62 + 31 = 29
+62 + 32 = 30
+62 + 33 = 31
+62 + 34 = 32
+62 + 35 = 33
+62 + 36 = 34
+62 + 37 = 35
+62 + 38 = 36
+62 + 39 = 37
+62 + 40 = 38
+62 + 41 = 39
+62 + 42 = 40
+62 + 43 = 41
+62 + 44 = 42
+62 + 45 = 43
+62 + 46 = 44
+62 + 47 = 45
+62 + 48 = 46
+62 + 49 = 47
+62 + 50 = 48
+62 + 51 = 49
+62 + 52 = 50
+62 + 53 = 51
+62 + 54 = 52
+62 + 55 = 53
+62 + 56 = 54
+62 + 57 = 55
+62 + 58 = 56
+62 + 59 = 57
+62 + 60 = 58
+62 + 61 = 59
+62 + 62 = 60
+62 + 63 = 61
+63 + 0 = 63
+63 + 1 = 0
+63 + 2 = 1
+63 + 3 = 2
+63 + 4 = 3
+63 + 5 = 4
+63 + 6 = 5
+63 + 7 = 6
+63 + 8 = 7
+63 + 9 = 8
+63 + 10 = 9
+63 + 11 = 10
+63 + 12 = 11
+63 + 13 = 12
+63 + 14 = 13
+63 + 15 = 14
+63 + 16 = 15
+63 + 17 = 16
+63 + 18 = 17
+63 + 19 = 18
+63 + 20 = 19
+63 + 21 = 20
+63 + 22 = 21
+63 + 23 = 22
+63 + 24 = 23
+63 + 25 = 24
+63 + 26 = 25
+63 + 27 = 26
+63 + 28 = 27
+63 + 29 = 28
+63 + 30 = 29
+63 + 31 = 30
+63 + 32 = 31
+63 + 33 = 32
+63 + 34 = 33
+63 + 35 = 34
+63 + 36 = 35
+63 + 37 = 36
+63 + 38 = 37
+63 + 39 = 38
+63 + 40 = 39
+63 + 41 = 40
+63 + 42 = 41
+63 + 43 = 42
+63 + 44 = 43
+63 + 45 = 44
+63 + 46 = 45
+63 + 47 = 46
+63 + 48 = 47
+63 + 49 = 48
+63 + 50 = 49
+63 + 51 = 50
+63 + 52 = 51
+63 + 53 = 52
+63 + 54 = 53
+63 + 55 = 54
+63 + 56 = 55
+63 + 57 = 56
+63 + 58 = 57
+63 + 59 = 58
+63 + 60 = 59
+63 + 61 = 60
+63 + 62 = 61
+63 + 63 = 62
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/add_promote/main.cpp b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/main.cpp
new file mode 100644
index 000000000..8fc9415da
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/main.cpp
@@ -0,0 +1,79 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /******************************************/
+ /* Main Filename: main.cc */
+ /******************************************/
+ /* */
+ /* 7-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /* This example adds the two 6-bit */
+ /* numbers and then promotes the result */
+ /* to 7-bits before assigned to the */
+ /* output */
+ /* */
+ /* This matches C semantics. */
+ /* */
+ /******************************************/
+
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Signal Instantiation
+ sc_signal_bool_vector6 in1 ("in1");
+ sc_signal_bool_vector6 in2 ("in2");
+ sc_signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/add_promote/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/stimgen.cpp
new file mode 100644
index 000000000..6c8c0a149
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/stimgen.cpp
@@ -0,0 +1,68 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint() << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/add_promote/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/stimgen.h
new file mode 100644
index 000000000..d9f04847f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/add_promote/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const sc_signal_bool_vector7& result;
+ // Outputs
+ sc_signal_bool_vector6& in1 ;
+ sc_signal_bool_vector6& in2 ;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const sc_signal_bool_vector7& RESULT,
+ sc_signal_bool_vector6& IN1,
+ sc_signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.cpp b/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.cpp
new file mode 100644
index 000000000..b8ea63ebc
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.cpp
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ array_range.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: array_range.cc */
+ /*******************************************/
+
+#include "array_range.h"
+
+void
+array_range::entry()
+{
+ bool_vector8 a;
+ bool_vector4 b;
+ bool_vector4 c;
+ bool_vector8 d;
+ bool_vector8 e;
+ bool_vector8 f;
+ // bool_vector0 nullbv; // Null vector to make scalar concat work
+
+ wait();
+
+ a = in1.read();
+
+ b = a.range(7,4); c = a.range(3,0); // sub vectors
+
+ d = a.range(0,7); // bit reverse
+
+ // e = (nullbv, a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]);
+ e = (a[0], a[1], a[2], a[3], a[4], a[5], a[6], a[7]);
+ // bit reverse concat
+
+ f = (a.range(3,1), a.range(7,6), a[0], a.range(4,5)); // shuffle
+
+ o1.write(b);
+ o2.write(c);
+ o3.write(d);
+ o4.write(e);
+ o5.write(f);
+
+ wait();
+
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.f b/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.f
new file mode 100644
index 000000000..4eb297dac
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.f
@@ -0,0 +1,3 @@
+array_range/array_range.cpp
+array_range/stimgen.cpp
+array_range/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.h b/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.h
new file mode 100644
index 000000000..e4916ca3e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/array_range/array_range.h
@@ -0,0 +1,83 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ array_range.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: array_range.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( array_range )
+{
+ SC_HAS_PROCESS( array_range );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector8& in1;
+ // Outputs
+ signal_bool_vector4& o1;
+ signal_bool_vector4& o2;
+ signal_bool_vector8& o3;
+ signal_bool_vector8& o4;
+ signal_bool_vector8& o5;
+
+ // Constructor
+ array_range (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector8& IN1,
+ signal_bool_vector4& O1,
+ signal_bool_vector4& O2,
+ signal_bool_vector8& O3,
+ signal_bool_vector8& O4,
+ signal_bool_vector8& O5 )
+
+ :
+ in1 (IN1),
+ o1 (O1),
+ o2 (O2),
+ o3 (O3),
+ o4 (O4),
+ o5 (O5)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/array_range/common.h b/src/systemc/tests/systemc/misc/unit/data/general/array_range/common.h
new file mode 100644
index 000000000..9e4b1fea5
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/array_range/common.h
@@ -0,0 +1,49 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<0> bool_vector0;
+typedef sc_bv<4> bool_vector4;
+typedef sc_bv<8> bool_vector8;
+typedef sc_signal<bool_vector4> signal_bool_vector4;
+typedef sc_signal<bool_vector8> signal_bool_vector8;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/array_range/golden/array_range.log b/src/systemc/tests/systemc/misc/unit/data/general/array_range/golden/array_range.log
new file mode 100644
index 000000000..deac0cd85
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/array_range/golden/array_range.log
@@ -0,0 +1,8 @@
+SystemC Simulation
+IN1 = 01011001
+O1 = 0101 O2 = 1001
+O3 = 10011010
+O4 = 10011010
+O5 = 10001110
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/array_range/main.cpp b/src/systemc/tests/systemc/misc/unit/data/general/array_range/main.cpp
new file mode 100644
index 000000000..70be37a8c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/array_range/main.cpp
@@ -0,0 +1,67 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /***************************************/
+ /* Main Filename: main.cc */
+ /***************************************/
+
+#include "array_range.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Signal Instantiation
+ signal_bool_vector8 in1 ("in1");
+ signal_bool_vector4 o1 ("o1");
+ signal_bool_vector4 o2 ("o2");
+ signal_bool_vector8 o3 ("o3");
+ signal_bool_vector8 o4 ("o4");
+ signal_bool_vector8 o5 ("o5");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ array_range D1 ("D1", clk, in1, o1, o2, o3, o4, o5);
+
+ stimgen T1 ("T1", clk, o1, o2, o3, o4, o5, in1);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/array_range/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/general/array_range/stimgen.cpp
new file mode 100644
index 000000000..54c05bc4f
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/array_range/stimgen.cpp
@@ -0,0 +1,61 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*******************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ bool_vector8 d;
+
+// in1.write("0101_1001");
+ in1.write("01011001");
+ wait(2);
+
+ cout << "IN1 = " << in1.read() << endl;
+ cout << "O1 = " << o1.read()
+ << " O2 = " << o2.read() << endl;
+ cout << "O3 = " << o3.read() << endl;
+ cout << "O4 = " << o4.read() << endl;
+ cout << "O5 = " << o5.read() << endl;
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/array_range/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/general/array_range/stimgen.h
new file mode 100644
index 000000000..17244bc5e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/array_range/stimgen.h
@@ -0,0 +1,83 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: stimgen.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector4& o1;
+ const signal_bool_vector4& o2;
+ const signal_bool_vector8& o3;
+ const signal_bool_vector8& o4;
+ const signal_bool_vector8& o5;
+ // Outputs
+ signal_bool_vector8& in1;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector4& O1,
+ const signal_bool_vector4& O2,
+ const signal_bool_vector8& O3,
+ const signal_bool_vector8& O4,
+ const signal_bool_vector8& O5,
+ signal_bool_vector8& IN1 )
+
+ :
+ o1 (O1),
+ o2 (O2),
+ o3 (O3),
+ o4 (O4),
+ o5 (O5),
+ in1 (IN1)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/bool_tilda/bool_tilda.cpp b/src/systemc/tests/systemc/misc/unit/data/general/bool_tilda/bool_tilda.cpp
new file mode 100644
index 000000000..8961fb34e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/bool_tilda/bool_tilda.cpp
@@ -0,0 +1,63 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ bool_tilda.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#include "systemc.h"
+
+int sc_main(int ac, char *av[])
+{
+
+ bool value1 = 1;
+ bool value0 = 0;
+
+ bool a;
+ bool b;
+ bool c;
+ bool d;
+
+ a = !value1;
+ b = !value0;
+ c = ~value1;
+ d = ~value0;
+
+ cout << "\n a = " << a << " (!1)"
+ << "\n b = " << b << " (!0)"
+ << "\n c = " << c << " (~1)"
+ << "\n d = " << d << " (~0)"
+ << endl;
+ sc_start(0, SC_NS);
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/bool_tilda/golden/bool_tilda.log b/src/systemc/tests/systemc/misc/unit/data/general/bool_tilda/golden/bool_tilda.log
new file mode 100644
index 000000000..e38c9930c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/bool_tilda/golden/bool_tilda.log
@@ -0,0 +1,6 @@
+SystemC Simulation
+
+ a = 0 (!1)
+ b = 1 (!0)
+ c = 1 (~1)
+ d = 1 (~0)
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/concat_port/common.h b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/common.h
new file mode 100644
index 000000000..0f0b2b812
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/common.h
@@ -0,0 +1,48 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<8> bool_vector8;
+typedef sc_bv<16> bool_vector16;
+typedef sc_signal<bool_vector8> signal_bool_vector8;
+typedef sc_signal<bool_vector16> signal_bool_vector16;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.cpp b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.cpp
new file mode 100644
index 000000000..b3ac6f5c1
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.cpp
@@ -0,0 +1,85 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ concat_port.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*********************************************/
+ /* Implementation Filename: concat_port.cc */
+ /*********************************************/
+
+#include "concat_port.h"
+
+void
+concat_port::entry()
+{
+ bool_vector8 tmp_a;
+ bool_vector8 tmp_b;
+
+ while (true) {
+
+ done.write(0);
+ do { wait(); } while (ready != 1);
+
+ tmp_a = a.read();
+ tmp_b = b.read();
+
+ switch (mode.read()) {
+
+ case 0: c.write( (tmp_a.range(7,4), tmp_b.range(7,4)) );
+ d.write( (tmp_a, tmp_b) );
+ break;
+
+ case 1: c.write( (tmp_a.range(0,7)) );
+ d.write( (tmp_a.range(0,7), tmp_b.range(0,7)) );
+ break;
+
+ case 2: c.write( (tmp_a[0], tmp_b.range(1,4), tmp_a.range(7,5)) );
+ d.write( (tmp_a.range(7,4), tmp_b.range(7,4),
+ tmp_a.range(3,0), tmp_b.range(3,0)) );
+ break;
+
+ case 3: c.write( ("1", tmp_b.range(2,0), "0", tmp_a.range(2,0)) );
+ d.write( ("11", tmp_a.range(6,0), tmp_b.range(6,0)) );
+ break;
+
+ default: cout << "Error: Mode " << mode.read()
+ << " does not exist!" << endl;
+ break;
+
+ }
+ done.write(1);
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.f b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.f
new file mode 100644
index 000000000..0b1d172ff
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.f
@@ -0,0 +1,3 @@
+concat_port/concat_port.cpp
+concat_port/stimgen.cpp
+concat_port/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.h b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.h
new file mode 100644
index 000000000..155c4cbed
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/concat_port.h
@@ -0,0 +1,86 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ concat_port.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: concat_port.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( concat_port )
+{
+ SC_HAS_PROCESS( concat_port );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector8& a;
+ const signal_bool_vector8& b;
+ const sc_signal<int>& mode;
+ const sc_signal<bool>& ready;
+ // Outputs
+ signal_bool_vector8& c;
+ signal_bool_vector16& d;
+ sc_signal<bool>& done;
+
+ // Constructor
+ concat_port (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector8& A,
+ const signal_bool_vector8& B,
+ const sc_signal<int>& MODE,
+ const sc_signal<bool>& READY,
+ signal_bool_vector8& C,
+ signal_bool_vector16& D,
+ sc_signal<bool>& DONE )
+
+ :
+ a (A),
+ b (B),
+ mode (MODE),
+ ready (READY),
+ c (C),
+ d (D),
+ done (DONE)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/concat_port/golden/concat_port.log b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/golden/concat_port.log
new file mode 100644
index 000000000..c3569520e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/golden/concat_port.log
@@ -0,0 +1,11 @@
+SystemC Simulation
+a = 01010101 b = 11110000 mode = 0
+ c = 01011111 d = 0101010111110000
+a = 01010101 b = 11110000 mode = 1
+ c = 10101010 d = 1010101000001111
+a = 01010101 b = 11110000 mode = 2
+ c = 10001010 d = 0101111101010000
+a = 01010101 b = 11110000 mode = 3
+ c = 10000101 d = 1110101011110000
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/concat_port/main.cpp b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/main.cpp
new file mode 100644
index 000000000..13603f8de
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/main.cpp
@@ -0,0 +1,68 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /***************************************/
+ /* Main Filename: main.cc */
+ /***************************************/
+
+#include "concat_port.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Signal Instantiation
+ signal_bool_vector8 a ("a");
+ signal_bool_vector8 b ("b");
+ signal_bool_vector8 c ("c");
+ signal_bool_vector16 d ("d");
+ sc_signal<int> mode ("mode");
+ sc_signal<bool> ready ("ready");
+ sc_signal<bool> done ("done");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ concat_port D1 ("D1", clk, a, b, mode, ready, c, d, done);
+
+ stimgen T1 ("T1", clk, c, d, done, a, b, mode, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/concat_port/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/stimgen.cpp
new file mode 100644
index 000000000..cfd9e7a6c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/stimgen.cpp
@@ -0,0 +1,66 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*******************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ ready.write(0);
+ wait();
+
+ a.write("01010101");
+ b.write("11110000");
+ ready.write(1);
+
+ for (int i=0; i < 4; i++) {
+ mode.write(i);
+ wait();
+ cout << "a = " << a << " b = " << b << " mode = " << mode << endl;
+ do { wait(); } while (done != 1);
+ cout << "\t c = " << c << " d = " << d << endl;
+ }
+
+ ready.write(0);
+ wait();
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/concat_port/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/stimgen.h
new file mode 100644
index 000000000..d0b43049a
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/concat_port/stimgen.h
@@ -0,0 +1,86 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: stimgen.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const signal_bool_vector8& c;
+ const signal_bool_vector16& d;
+ const sc_signal<bool>& done;
+ // Outputs
+ signal_bool_vector8& a;
+ signal_bool_vector8& b;
+ sc_signal<int>& mode;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const signal_bool_vector8& C,
+ const signal_bool_vector16& D,
+ const sc_signal<bool>& DONE,
+ signal_bool_vector8& A,
+ signal_bool_vector8& B,
+ sc_signal<int>& MODE,
+ sc_signal<bool>& READY )
+
+ :
+ c (C),
+ d (D),
+ done (DONE),
+ a (A),
+ b (B),
+ mode (MODE),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth.cpp
new file mode 100644
index 000000000..efb22e5ef
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ int tmp_a;
+ int tmp_b;
+ int tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth.h
new file mode 100644
index 000000000..cb5143447
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "systemc.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const sc_signal<int>& in1;
+ const sc_signal<int>& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ sc_signal<int>& result;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const sc_signal<int>& IN1,
+ const sc_signal<int>& IN2,
+ const sc_signal<bool>& READY,
+ sc_signal<int>& RESULT )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth_int.f b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth_int.f
new file mode 100644
index 000000000..2fdabe5b5
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/datawidth_int.f
@@ -0,0 +1,3 @@
+datawidth_int/datawidth.cpp
+datawidth_int/stimgen.cpp
+datawidth_int/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/golden/datawidth_int.log b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/golden/datawidth_int.log
new file mode 100644
index 000000000..b168b0482
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/golden/datawidth_int.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0
+0 + 1 = 1
+0 + 2 = 2
+0 + 3 = 3
+0 + 4 = 4
+0 + 5 = 5
+0 + 6 = 6
+0 + 7 = 7
+0 + 8 = 8
+0 + 9 = 9
+0 + 10 = 10
+0 + 11 = 11
+0 + 12 = 12
+0 + 13 = 13
+0 + 14 = 14
+0 + 15 = 15
+0 + 16 = 16
+0 + 17 = 17
+0 + 18 = 18
+0 + 19 = 19
+0 + 20 = 20
+0 + 21 = 21
+0 + 22 = 22
+0 + 23 = 23
+0 + 24 = 24
+0 + 25 = 25
+0 + 26 = 26
+0 + 27 = 27
+0 + 28 = 28
+0 + 29 = 29
+0 + 30 = 30
+0 + 31 = 31
+0 + 32 = 32
+0 + 33 = 33
+0 + 34 = 34
+0 + 35 = 35
+0 + 36 = 36
+0 + 37 = 37
+0 + 38 = 38
+0 + 39 = 39
+0 + 40 = 40
+0 + 41 = 41
+0 + 42 = 42
+0 + 43 = 43
+0 + 44 = 44
+0 + 45 = 45
+0 + 46 = 46
+0 + 47 = 47
+0 + 48 = 48
+0 + 49 = 49
+0 + 50 = 50
+0 + 51 = 51
+0 + 52 = 52
+0 + 53 = 53
+0 + 54 = 54
+0 + 55 = 55
+0 + 56 = 56
+0 + 57 = 57
+0 + 58 = 58
+0 + 59 = 59
+0 + 60 = 60
+0 + 61 = 61
+0 + 62 = 62
+0 + 63 = 63
+1 + 0 = 1
+1 + 1 = 2
+1 + 2 = 3
+1 + 3 = 4
+1 + 4 = 5
+1 + 5 = 6
+1 + 6 = 7
+1 + 7 = 8
+1 + 8 = 9
+1 + 9 = 10
+1 + 10 = 11
+1 + 11 = 12
+1 + 12 = 13
+1 + 13 = 14
+1 + 14 = 15
+1 + 15 = 16
+1 + 16 = 17
+1 + 17 = 18
+1 + 18 = 19
+1 + 19 = 20
+1 + 20 = 21
+1 + 21 = 22
+1 + 22 = 23
+1 + 23 = 24
+1 + 24 = 25
+1 + 25 = 26
+1 + 26 = 27
+1 + 27 = 28
+1 + 28 = 29
+1 + 29 = 30
+1 + 30 = 31
+1 + 31 = 32
+1 + 32 = 33
+1 + 33 = 34
+1 + 34 = 35
+1 + 35 = 36
+1 + 36 = 37
+1 + 37 = 38
+1 + 38 = 39
+1 + 39 = 40
+1 + 40 = 41
+1 + 41 = 42
+1 + 42 = 43
+1 + 43 = 44
+1 + 44 = 45
+1 + 45 = 46
+1 + 46 = 47
+1 + 47 = 48
+1 + 48 = 49
+1 + 49 = 50
+1 + 50 = 51
+1 + 51 = 52
+1 + 52 = 53
+1 + 53 = 54
+1 + 54 = 55
+1 + 55 = 56
+1 + 56 = 57
+1 + 57 = 58
+1 + 58 = 59
+1 + 59 = 60
+1 + 60 = 61
+1 + 61 = 62
+1 + 62 = 63
+1 + 63 = 64
+2 + 0 = 2
+2 + 1 = 3
+2 + 2 = 4
+2 + 3 = 5
+2 + 4 = 6
+2 + 5 = 7
+2 + 6 = 8
+2 + 7 = 9
+2 + 8 = 10
+2 + 9 = 11
+2 + 10 = 12
+2 + 11 = 13
+2 + 12 = 14
+2 + 13 = 15
+2 + 14 = 16
+2 + 15 = 17
+2 + 16 = 18
+2 + 17 = 19
+2 + 18 = 20
+2 + 19 = 21
+2 + 20 = 22
+2 + 21 = 23
+2 + 22 = 24
+2 + 23 = 25
+2 + 24 = 26
+2 + 25 = 27
+2 + 26 = 28
+2 + 27 = 29
+2 + 28 = 30
+2 + 29 = 31
+2 + 30 = 32
+2 + 31 = 33
+2 + 32 = 34
+2 + 33 = 35
+2 + 34 = 36
+2 + 35 = 37
+2 + 36 = 38
+2 + 37 = 39
+2 + 38 = 40
+2 + 39 = 41
+2 + 40 = 42
+2 + 41 = 43
+2 + 42 = 44
+2 + 43 = 45
+2 + 44 = 46
+2 + 45 = 47
+2 + 46 = 48
+2 + 47 = 49
+2 + 48 = 50
+2 + 49 = 51
+2 + 50 = 52
+2 + 51 = 53
+2 + 52 = 54
+2 + 53 = 55
+2 + 54 = 56
+2 + 55 = 57
+2 + 56 = 58
+2 + 57 = 59
+2 + 58 = 60
+2 + 59 = 61
+2 + 60 = 62
+2 + 61 = 63
+2 + 62 = 64
+2 + 63 = 65
+3 + 0 = 3
+3 + 1 = 4
+3 + 2 = 5
+3 + 3 = 6
+3 + 4 = 7
+3 + 5 = 8
+3 + 6 = 9
+3 + 7 = 10
+3 + 8 = 11
+3 + 9 = 12
+3 + 10 = 13
+3 + 11 = 14
+3 + 12 = 15
+3 + 13 = 16
+3 + 14 = 17
+3 + 15 = 18
+3 + 16 = 19
+3 + 17 = 20
+3 + 18 = 21
+3 + 19 = 22
+3 + 20 = 23
+3 + 21 = 24
+3 + 22 = 25
+3 + 23 = 26
+3 + 24 = 27
+3 + 25 = 28
+3 + 26 = 29
+3 + 27 = 30
+3 + 28 = 31
+3 + 29 = 32
+3 + 30 = 33
+3 + 31 = 34
+3 + 32 = 35
+3 + 33 = 36
+3 + 34 = 37
+3 + 35 = 38
+3 + 36 = 39
+3 + 37 = 40
+3 + 38 = 41
+3 + 39 = 42
+3 + 40 = 43
+3 + 41 = 44
+3 + 42 = 45
+3 + 43 = 46
+3 + 44 = 47
+3 + 45 = 48
+3 + 46 = 49
+3 + 47 = 50
+3 + 48 = 51
+3 + 49 = 52
+3 + 50 = 53
+3 + 51 = 54
+3 + 52 = 55
+3 + 53 = 56
+3 + 54 = 57
+3 + 55 = 58
+3 + 56 = 59
+3 + 57 = 60
+3 + 58 = 61
+3 + 59 = 62
+3 + 60 = 63
+3 + 61 = 64
+3 + 62 = 65
+3 + 63 = 66
+4 + 0 = 4
+4 + 1 = 5
+4 + 2 = 6
+4 + 3 = 7
+4 + 4 = 8
+4 + 5 = 9
+4 + 6 = 10
+4 + 7 = 11
+4 + 8 = 12
+4 + 9 = 13
+4 + 10 = 14
+4 + 11 = 15
+4 + 12 = 16
+4 + 13 = 17
+4 + 14 = 18
+4 + 15 = 19
+4 + 16 = 20
+4 + 17 = 21
+4 + 18 = 22
+4 + 19 = 23
+4 + 20 = 24
+4 + 21 = 25
+4 + 22 = 26
+4 + 23 = 27
+4 + 24 = 28
+4 + 25 = 29
+4 + 26 = 30
+4 + 27 = 31
+4 + 28 = 32
+4 + 29 = 33
+4 + 30 = 34
+4 + 31 = 35
+4 + 32 = 36
+4 + 33 = 37
+4 + 34 = 38
+4 + 35 = 39
+4 + 36 = 40
+4 + 37 = 41
+4 + 38 = 42
+4 + 39 = 43
+4 + 40 = 44
+4 + 41 = 45
+4 + 42 = 46
+4 + 43 = 47
+4 + 44 = 48
+4 + 45 = 49
+4 + 46 = 50
+4 + 47 = 51
+4 + 48 = 52
+4 + 49 = 53
+4 + 50 = 54
+4 + 51 = 55
+4 + 52 = 56
+4 + 53 = 57
+4 + 54 = 58
+4 + 55 = 59
+4 + 56 = 60
+4 + 57 = 61
+4 + 58 = 62
+4 + 59 = 63
+4 + 60 = 64
+4 + 61 = 65
+4 + 62 = 66
+4 + 63 = 67
+5 + 0 = 5
+5 + 1 = 6
+5 + 2 = 7
+5 + 3 = 8
+5 + 4 = 9
+5 + 5 = 10
+5 + 6 = 11
+5 + 7 = 12
+5 + 8 = 13
+5 + 9 = 14
+5 + 10 = 15
+5 + 11 = 16
+5 + 12 = 17
+5 + 13 = 18
+5 + 14 = 19
+5 + 15 = 20
+5 + 16 = 21
+5 + 17 = 22
+5 + 18 = 23
+5 + 19 = 24
+5 + 20 = 25
+5 + 21 = 26
+5 + 22 = 27
+5 + 23 = 28
+5 + 24 = 29
+5 + 25 = 30
+5 + 26 = 31
+5 + 27 = 32
+5 + 28 = 33
+5 + 29 = 34
+5 + 30 = 35
+5 + 31 = 36
+5 + 32 = 37
+5 + 33 = 38
+5 + 34 = 39
+5 + 35 = 40
+5 + 36 = 41
+5 + 37 = 42
+5 + 38 = 43
+5 + 39 = 44
+5 + 40 = 45
+5 + 41 = 46
+5 + 42 = 47
+5 + 43 = 48
+5 + 44 = 49
+5 + 45 = 50
+5 + 46 = 51
+5 + 47 = 52
+5 + 48 = 53
+5 + 49 = 54
+5 + 50 = 55
+5 + 51 = 56
+5 + 52 = 57
+5 + 53 = 58
+5 + 54 = 59
+5 + 55 = 60
+5 + 56 = 61
+5 + 57 = 62
+5 + 58 = 63
+5 + 59 = 64
+5 + 60 = 65
+5 + 61 = 66
+5 + 62 = 67
+5 + 63 = 68
+6 + 0 = 6
+6 + 1 = 7
+6 + 2 = 8
+6 + 3 = 9
+6 + 4 = 10
+6 + 5 = 11
+6 + 6 = 12
+6 + 7 = 13
+6 + 8 = 14
+6 + 9 = 15
+6 + 10 = 16
+6 + 11 = 17
+6 + 12 = 18
+6 + 13 = 19
+6 + 14 = 20
+6 + 15 = 21
+6 + 16 = 22
+6 + 17 = 23
+6 + 18 = 24
+6 + 19 = 25
+6 + 20 = 26
+6 + 21 = 27
+6 + 22 = 28
+6 + 23 = 29
+6 + 24 = 30
+6 + 25 = 31
+6 + 26 = 32
+6 + 27 = 33
+6 + 28 = 34
+6 + 29 = 35
+6 + 30 = 36
+6 + 31 = 37
+6 + 32 = 38
+6 + 33 = 39
+6 + 34 = 40
+6 + 35 = 41
+6 + 36 = 42
+6 + 37 = 43
+6 + 38 = 44
+6 + 39 = 45
+6 + 40 = 46
+6 + 41 = 47
+6 + 42 = 48
+6 + 43 = 49
+6 + 44 = 50
+6 + 45 = 51
+6 + 46 = 52
+6 + 47 = 53
+6 + 48 = 54
+6 + 49 = 55
+6 + 50 = 56
+6 + 51 = 57
+6 + 52 = 58
+6 + 53 = 59
+6 + 54 = 60
+6 + 55 = 61
+6 + 56 = 62
+6 + 57 = 63
+6 + 58 = 64
+6 + 59 = 65
+6 + 60 = 66
+6 + 61 = 67
+6 + 62 = 68
+6 + 63 = 69
+7 + 0 = 7
+7 + 1 = 8
+7 + 2 = 9
+7 + 3 = 10
+7 + 4 = 11
+7 + 5 = 12
+7 + 6 = 13
+7 + 7 = 14
+7 + 8 = 15
+7 + 9 = 16
+7 + 10 = 17
+7 + 11 = 18
+7 + 12 = 19
+7 + 13 = 20
+7 + 14 = 21
+7 + 15 = 22
+7 + 16 = 23
+7 + 17 = 24
+7 + 18 = 25
+7 + 19 = 26
+7 + 20 = 27
+7 + 21 = 28
+7 + 22 = 29
+7 + 23 = 30
+7 + 24 = 31
+7 + 25 = 32
+7 + 26 = 33
+7 + 27 = 34
+7 + 28 = 35
+7 + 29 = 36
+7 + 30 = 37
+7 + 31 = 38
+7 + 32 = 39
+7 + 33 = 40
+7 + 34 = 41
+7 + 35 = 42
+7 + 36 = 43
+7 + 37 = 44
+7 + 38 = 45
+7 + 39 = 46
+7 + 40 = 47
+7 + 41 = 48
+7 + 42 = 49
+7 + 43 = 50
+7 + 44 = 51
+7 + 45 = 52
+7 + 46 = 53
+7 + 47 = 54
+7 + 48 = 55
+7 + 49 = 56
+7 + 50 = 57
+7 + 51 = 58
+7 + 52 = 59
+7 + 53 = 60
+7 + 54 = 61
+7 + 55 = 62
+7 + 56 = 63
+7 + 57 = 64
+7 + 58 = 65
+7 + 59 = 66
+7 + 60 = 67
+7 + 61 = 68
+7 + 62 = 69
+7 + 63 = 70
+8 + 0 = 8
+8 + 1 = 9
+8 + 2 = 10
+8 + 3 = 11
+8 + 4 = 12
+8 + 5 = 13
+8 + 6 = 14
+8 + 7 = 15
+8 + 8 = 16
+8 + 9 = 17
+8 + 10 = 18
+8 + 11 = 19
+8 + 12 = 20
+8 + 13 = 21
+8 + 14 = 22
+8 + 15 = 23
+8 + 16 = 24
+8 + 17 = 25
+8 + 18 = 26
+8 + 19 = 27
+8 + 20 = 28
+8 + 21 = 29
+8 + 22 = 30
+8 + 23 = 31
+8 + 24 = 32
+8 + 25 = 33
+8 + 26 = 34
+8 + 27 = 35
+8 + 28 = 36
+8 + 29 = 37
+8 + 30 = 38
+8 + 31 = 39
+8 + 32 = 40
+8 + 33 = 41
+8 + 34 = 42
+8 + 35 = 43
+8 + 36 = 44
+8 + 37 = 45
+8 + 38 = 46
+8 + 39 = 47
+8 + 40 = 48
+8 + 41 = 49
+8 + 42 = 50
+8 + 43 = 51
+8 + 44 = 52
+8 + 45 = 53
+8 + 46 = 54
+8 + 47 = 55
+8 + 48 = 56
+8 + 49 = 57
+8 + 50 = 58
+8 + 51 = 59
+8 + 52 = 60
+8 + 53 = 61
+8 + 54 = 62
+8 + 55 = 63
+8 + 56 = 64
+8 + 57 = 65
+8 + 58 = 66
+8 + 59 = 67
+8 + 60 = 68
+8 + 61 = 69
+8 + 62 = 70
+8 + 63 = 71
+9 + 0 = 9
+9 + 1 = 10
+9 + 2 = 11
+9 + 3 = 12
+9 + 4 = 13
+9 + 5 = 14
+9 + 6 = 15
+9 + 7 = 16
+9 + 8 = 17
+9 + 9 = 18
+9 + 10 = 19
+9 + 11 = 20
+9 + 12 = 21
+9 + 13 = 22
+9 + 14 = 23
+9 + 15 = 24
+9 + 16 = 25
+9 + 17 = 26
+9 + 18 = 27
+9 + 19 = 28
+9 + 20 = 29
+9 + 21 = 30
+9 + 22 = 31
+9 + 23 = 32
+9 + 24 = 33
+9 + 25 = 34
+9 + 26 = 35
+9 + 27 = 36
+9 + 28 = 37
+9 + 29 = 38
+9 + 30 = 39
+9 + 31 = 40
+9 + 32 = 41
+9 + 33 = 42
+9 + 34 = 43
+9 + 35 = 44
+9 + 36 = 45
+9 + 37 = 46
+9 + 38 = 47
+9 + 39 = 48
+9 + 40 = 49
+9 + 41 = 50
+9 + 42 = 51
+9 + 43 = 52
+9 + 44 = 53
+9 + 45 = 54
+9 + 46 = 55
+9 + 47 = 56
+9 + 48 = 57
+9 + 49 = 58
+9 + 50 = 59
+9 + 51 = 60
+9 + 52 = 61
+9 + 53 = 62
+9 + 54 = 63
+9 + 55 = 64
+9 + 56 = 65
+9 + 57 = 66
+9 + 58 = 67
+9 + 59 = 68
+9 + 60 = 69
+9 + 61 = 70
+9 + 62 = 71
+9 + 63 = 72
+10 + 0 = 10
+10 + 1 = 11
+10 + 2 = 12
+10 + 3 = 13
+10 + 4 = 14
+10 + 5 = 15
+10 + 6 = 16
+10 + 7 = 17
+10 + 8 = 18
+10 + 9 = 19
+10 + 10 = 20
+10 + 11 = 21
+10 + 12 = 22
+10 + 13 = 23
+10 + 14 = 24
+10 + 15 = 25
+10 + 16 = 26
+10 + 17 = 27
+10 + 18 = 28
+10 + 19 = 29
+10 + 20 = 30
+10 + 21 = 31
+10 + 22 = 32
+10 + 23 = 33
+10 + 24 = 34
+10 + 25 = 35
+10 + 26 = 36
+10 + 27 = 37
+10 + 28 = 38
+10 + 29 = 39
+10 + 30 = 40
+10 + 31 = 41
+10 + 32 = 42
+10 + 33 = 43
+10 + 34 = 44
+10 + 35 = 45
+10 + 36 = 46
+10 + 37 = 47
+10 + 38 = 48
+10 + 39 = 49
+10 + 40 = 50
+10 + 41 = 51
+10 + 42 = 52
+10 + 43 = 53
+10 + 44 = 54
+10 + 45 = 55
+10 + 46 = 56
+10 + 47 = 57
+10 + 48 = 58
+10 + 49 = 59
+10 + 50 = 60
+10 + 51 = 61
+10 + 52 = 62
+10 + 53 = 63
+10 + 54 = 64
+10 + 55 = 65
+10 + 56 = 66
+10 + 57 = 67
+10 + 58 = 68
+10 + 59 = 69
+10 + 60 = 70
+10 + 61 = 71
+10 + 62 = 72
+10 + 63 = 73
+11 + 0 = 11
+11 + 1 = 12
+11 + 2 = 13
+11 + 3 = 14
+11 + 4 = 15
+11 + 5 = 16
+11 + 6 = 17
+11 + 7 = 18
+11 + 8 = 19
+11 + 9 = 20
+11 + 10 = 21
+11 + 11 = 22
+11 + 12 = 23
+11 + 13 = 24
+11 + 14 = 25
+11 + 15 = 26
+11 + 16 = 27
+11 + 17 = 28
+11 + 18 = 29
+11 + 19 = 30
+11 + 20 = 31
+11 + 21 = 32
+11 + 22 = 33
+11 + 23 = 34
+11 + 24 = 35
+11 + 25 = 36
+11 + 26 = 37
+11 + 27 = 38
+11 + 28 = 39
+11 + 29 = 40
+11 + 30 = 41
+11 + 31 = 42
+11 + 32 = 43
+11 + 33 = 44
+11 + 34 = 45
+11 + 35 = 46
+11 + 36 = 47
+11 + 37 = 48
+11 + 38 = 49
+11 + 39 = 50
+11 + 40 = 51
+11 + 41 = 52
+11 + 42 = 53
+11 + 43 = 54
+11 + 44 = 55
+11 + 45 = 56
+11 + 46 = 57
+11 + 47 = 58
+11 + 48 = 59
+11 + 49 = 60
+11 + 50 = 61
+11 + 51 = 62
+11 + 52 = 63
+11 + 53 = 64
+11 + 54 = 65
+11 + 55 = 66
+11 + 56 = 67
+11 + 57 = 68
+11 + 58 = 69
+11 + 59 = 70
+11 + 60 = 71
+11 + 61 = 72
+11 + 62 = 73
+11 + 63 = 74
+12 + 0 = 12
+12 + 1 = 13
+12 + 2 = 14
+12 + 3 = 15
+12 + 4 = 16
+12 + 5 = 17
+12 + 6 = 18
+12 + 7 = 19
+12 + 8 = 20
+12 + 9 = 21
+12 + 10 = 22
+12 + 11 = 23
+12 + 12 = 24
+12 + 13 = 25
+12 + 14 = 26
+12 + 15 = 27
+12 + 16 = 28
+12 + 17 = 29
+12 + 18 = 30
+12 + 19 = 31
+12 + 20 = 32
+12 + 21 = 33
+12 + 22 = 34
+12 + 23 = 35
+12 + 24 = 36
+12 + 25 = 37
+12 + 26 = 38
+12 + 27 = 39
+12 + 28 = 40
+12 + 29 = 41
+12 + 30 = 42
+12 + 31 = 43
+12 + 32 = 44
+12 + 33 = 45
+12 + 34 = 46
+12 + 35 = 47
+12 + 36 = 48
+12 + 37 = 49
+12 + 38 = 50
+12 + 39 = 51
+12 + 40 = 52
+12 + 41 = 53
+12 + 42 = 54
+12 + 43 = 55
+12 + 44 = 56
+12 + 45 = 57
+12 + 46 = 58
+12 + 47 = 59
+12 + 48 = 60
+12 + 49 = 61
+12 + 50 = 62
+12 + 51 = 63
+12 + 52 = 64
+12 + 53 = 65
+12 + 54 = 66
+12 + 55 = 67
+12 + 56 = 68
+12 + 57 = 69
+12 + 58 = 70
+12 + 59 = 71
+12 + 60 = 72
+12 + 61 = 73
+12 + 62 = 74
+12 + 63 = 75
+13 + 0 = 13
+13 + 1 = 14
+13 + 2 = 15
+13 + 3 = 16
+13 + 4 = 17
+13 + 5 = 18
+13 + 6 = 19
+13 + 7 = 20
+13 + 8 = 21
+13 + 9 = 22
+13 + 10 = 23
+13 + 11 = 24
+13 + 12 = 25
+13 + 13 = 26
+13 + 14 = 27
+13 + 15 = 28
+13 + 16 = 29
+13 + 17 = 30
+13 + 18 = 31
+13 + 19 = 32
+13 + 20 = 33
+13 + 21 = 34
+13 + 22 = 35
+13 + 23 = 36
+13 + 24 = 37
+13 + 25 = 38
+13 + 26 = 39
+13 + 27 = 40
+13 + 28 = 41
+13 + 29 = 42
+13 + 30 = 43
+13 + 31 = 44
+13 + 32 = 45
+13 + 33 = 46
+13 + 34 = 47
+13 + 35 = 48
+13 + 36 = 49
+13 + 37 = 50
+13 + 38 = 51
+13 + 39 = 52
+13 + 40 = 53
+13 + 41 = 54
+13 + 42 = 55
+13 + 43 = 56
+13 + 44 = 57
+13 + 45 = 58
+13 + 46 = 59
+13 + 47 = 60
+13 + 48 = 61
+13 + 49 = 62
+13 + 50 = 63
+13 + 51 = 64
+13 + 52 = 65
+13 + 53 = 66
+13 + 54 = 67
+13 + 55 = 68
+13 + 56 = 69
+13 + 57 = 70
+13 + 58 = 71
+13 + 59 = 72
+13 + 60 = 73
+13 + 61 = 74
+13 + 62 = 75
+13 + 63 = 76
+14 + 0 = 14
+14 + 1 = 15
+14 + 2 = 16
+14 + 3 = 17
+14 + 4 = 18
+14 + 5 = 19
+14 + 6 = 20
+14 + 7 = 21
+14 + 8 = 22
+14 + 9 = 23
+14 + 10 = 24
+14 + 11 = 25
+14 + 12 = 26
+14 + 13 = 27
+14 + 14 = 28
+14 + 15 = 29
+14 + 16 = 30
+14 + 17 = 31
+14 + 18 = 32
+14 + 19 = 33
+14 + 20 = 34
+14 + 21 = 35
+14 + 22 = 36
+14 + 23 = 37
+14 + 24 = 38
+14 + 25 = 39
+14 + 26 = 40
+14 + 27 = 41
+14 + 28 = 42
+14 + 29 = 43
+14 + 30 = 44
+14 + 31 = 45
+14 + 32 = 46
+14 + 33 = 47
+14 + 34 = 48
+14 + 35 = 49
+14 + 36 = 50
+14 + 37 = 51
+14 + 38 = 52
+14 + 39 = 53
+14 + 40 = 54
+14 + 41 = 55
+14 + 42 = 56
+14 + 43 = 57
+14 + 44 = 58
+14 + 45 = 59
+14 + 46 = 60
+14 + 47 = 61
+14 + 48 = 62
+14 + 49 = 63
+14 + 50 = 64
+14 + 51 = 65
+14 + 52 = 66
+14 + 53 = 67
+14 + 54 = 68
+14 + 55 = 69
+14 + 56 = 70
+14 + 57 = 71
+14 + 58 = 72
+14 + 59 = 73
+14 + 60 = 74
+14 + 61 = 75
+14 + 62 = 76
+14 + 63 = 77
+15 + 0 = 15
+15 + 1 = 16
+15 + 2 = 17
+15 + 3 = 18
+15 + 4 = 19
+15 + 5 = 20
+15 + 6 = 21
+15 + 7 = 22
+15 + 8 = 23
+15 + 9 = 24
+15 + 10 = 25
+15 + 11 = 26
+15 + 12 = 27
+15 + 13 = 28
+15 + 14 = 29
+15 + 15 = 30
+15 + 16 = 31
+15 + 17 = 32
+15 + 18 = 33
+15 + 19 = 34
+15 + 20 = 35
+15 + 21 = 36
+15 + 22 = 37
+15 + 23 = 38
+15 + 24 = 39
+15 + 25 = 40
+15 + 26 = 41
+15 + 27 = 42
+15 + 28 = 43
+15 + 29 = 44
+15 + 30 = 45
+15 + 31 = 46
+15 + 32 = 47
+15 + 33 = 48
+15 + 34 = 49
+15 + 35 = 50
+15 + 36 = 51
+15 + 37 = 52
+15 + 38 = 53
+15 + 39 = 54
+15 + 40 = 55
+15 + 41 = 56
+15 + 42 = 57
+15 + 43 = 58
+15 + 44 = 59
+15 + 45 = 60
+15 + 46 = 61
+15 + 47 = 62
+15 + 48 = 63
+15 + 49 = 64
+15 + 50 = 65
+15 + 51 = 66
+15 + 52 = 67
+15 + 53 = 68
+15 + 54 = 69
+15 + 55 = 70
+15 + 56 = 71
+15 + 57 = 72
+15 + 58 = 73
+15 + 59 = 74
+15 + 60 = 75
+15 + 61 = 76
+15 + 62 = 77
+15 + 63 = 78
+16 + 0 = 16
+16 + 1 = 17
+16 + 2 = 18
+16 + 3 = 19
+16 + 4 = 20
+16 + 5 = 21
+16 + 6 = 22
+16 + 7 = 23
+16 + 8 = 24
+16 + 9 = 25
+16 + 10 = 26
+16 + 11 = 27
+16 + 12 = 28
+16 + 13 = 29
+16 + 14 = 30
+16 + 15 = 31
+16 + 16 = 32
+16 + 17 = 33
+16 + 18 = 34
+16 + 19 = 35
+16 + 20 = 36
+16 + 21 = 37
+16 + 22 = 38
+16 + 23 = 39
+16 + 24 = 40
+16 + 25 = 41
+16 + 26 = 42
+16 + 27 = 43
+16 + 28 = 44
+16 + 29 = 45
+16 + 30 = 46
+16 + 31 = 47
+16 + 32 = 48
+16 + 33 = 49
+16 + 34 = 50
+16 + 35 = 51
+16 + 36 = 52
+16 + 37 = 53
+16 + 38 = 54
+16 + 39 = 55
+16 + 40 = 56
+16 + 41 = 57
+16 + 42 = 58
+16 + 43 = 59
+16 + 44 = 60
+16 + 45 = 61
+16 + 46 = 62
+16 + 47 = 63
+16 + 48 = 64
+16 + 49 = 65
+16 + 50 = 66
+16 + 51 = 67
+16 + 52 = 68
+16 + 53 = 69
+16 + 54 = 70
+16 + 55 = 71
+16 + 56 = 72
+16 + 57 = 73
+16 + 58 = 74
+16 + 59 = 75
+16 + 60 = 76
+16 + 61 = 77
+16 + 62 = 78
+16 + 63 = 79
+17 + 0 = 17
+17 + 1 = 18
+17 + 2 = 19
+17 + 3 = 20
+17 + 4 = 21
+17 + 5 = 22
+17 + 6 = 23
+17 + 7 = 24
+17 + 8 = 25
+17 + 9 = 26
+17 + 10 = 27
+17 + 11 = 28
+17 + 12 = 29
+17 + 13 = 30
+17 + 14 = 31
+17 + 15 = 32
+17 + 16 = 33
+17 + 17 = 34
+17 + 18 = 35
+17 + 19 = 36
+17 + 20 = 37
+17 + 21 = 38
+17 + 22 = 39
+17 + 23 = 40
+17 + 24 = 41
+17 + 25 = 42
+17 + 26 = 43
+17 + 27 = 44
+17 + 28 = 45
+17 + 29 = 46
+17 + 30 = 47
+17 + 31 = 48
+17 + 32 = 49
+17 + 33 = 50
+17 + 34 = 51
+17 + 35 = 52
+17 + 36 = 53
+17 + 37 = 54
+17 + 38 = 55
+17 + 39 = 56
+17 + 40 = 57
+17 + 41 = 58
+17 + 42 = 59
+17 + 43 = 60
+17 + 44 = 61
+17 + 45 = 62
+17 + 46 = 63
+17 + 47 = 64
+17 + 48 = 65
+17 + 49 = 66
+17 + 50 = 67
+17 + 51 = 68
+17 + 52 = 69
+17 + 53 = 70
+17 + 54 = 71
+17 + 55 = 72
+17 + 56 = 73
+17 + 57 = 74
+17 + 58 = 75
+17 + 59 = 76
+17 + 60 = 77
+17 + 61 = 78
+17 + 62 = 79
+17 + 63 = 80
+18 + 0 = 18
+18 + 1 = 19
+18 + 2 = 20
+18 + 3 = 21
+18 + 4 = 22
+18 + 5 = 23
+18 + 6 = 24
+18 + 7 = 25
+18 + 8 = 26
+18 + 9 = 27
+18 + 10 = 28
+18 + 11 = 29
+18 + 12 = 30
+18 + 13 = 31
+18 + 14 = 32
+18 + 15 = 33
+18 + 16 = 34
+18 + 17 = 35
+18 + 18 = 36
+18 + 19 = 37
+18 + 20 = 38
+18 + 21 = 39
+18 + 22 = 40
+18 + 23 = 41
+18 + 24 = 42
+18 + 25 = 43
+18 + 26 = 44
+18 + 27 = 45
+18 + 28 = 46
+18 + 29 = 47
+18 + 30 = 48
+18 + 31 = 49
+18 + 32 = 50
+18 + 33 = 51
+18 + 34 = 52
+18 + 35 = 53
+18 + 36 = 54
+18 + 37 = 55
+18 + 38 = 56
+18 + 39 = 57
+18 + 40 = 58
+18 + 41 = 59
+18 + 42 = 60
+18 + 43 = 61
+18 + 44 = 62
+18 + 45 = 63
+18 + 46 = 64
+18 + 47 = 65
+18 + 48 = 66
+18 + 49 = 67
+18 + 50 = 68
+18 + 51 = 69
+18 + 52 = 70
+18 + 53 = 71
+18 + 54 = 72
+18 + 55 = 73
+18 + 56 = 74
+18 + 57 = 75
+18 + 58 = 76
+18 + 59 = 77
+18 + 60 = 78
+18 + 61 = 79
+18 + 62 = 80
+18 + 63 = 81
+19 + 0 = 19
+19 + 1 = 20
+19 + 2 = 21
+19 + 3 = 22
+19 + 4 = 23
+19 + 5 = 24
+19 + 6 = 25
+19 + 7 = 26
+19 + 8 = 27
+19 + 9 = 28
+19 + 10 = 29
+19 + 11 = 30
+19 + 12 = 31
+19 + 13 = 32
+19 + 14 = 33
+19 + 15 = 34
+19 + 16 = 35
+19 + 17 = 36
+19 + 18 = 37
+19 + 19 = 38
+19 + 20 = 39
+19 + 21 = 40
+19 + 22 = 41
+19 + 23 = 42
+19 + 24 = 43
+19 + 25 = 44
+19 + 26 = 45
+19 + 27 = 46
+19 + 28 = 47
+19 + 29 = 48
+19 + 30 = 49
+19 + 31 = 50
+19 + 32 = 51
+19 + 33 = 52
+19 + 34 = 53
+19 + 35 = 54
+19 + 36 = 55
+19 + 37 = 56
+19 + 38 = 57
+19 + 39 = 58
+19 + 40 = 59
+19 + 41 = 60
+19 + 42 = 61
+19 + 43 = 62
+19 + 44 = 63
+19 + 45 = 64
+19 + 46 = 65
+19 + 47 = 66
+19 + 48 = 67
+19 + 49 = 68
+19 + 50 = 69
+19 + 51 = 70
+19 + 52 = 71
+19 + 53 = 72
+19 + 54 = 73
+19 + 55 = 74
+19 + 56 = 75
+19 + 57 = 76
+19 + 58 = 77
+19 + 59 = 78
+19 + 60 = 79
+19 + 61 = 80
+19 + 62 = 81
+19 + 63 = 82
+20 + 0 = 20
+20 + 1 = 21
+20 + 2 = 22
+20 + 3 = 23
+20 + 4 = 24
+20 + 5 = 25
+20 + 6 = 26
+20 + 7 = 27
+20 + 8 = 28
+20 + 9 = 29
+20 + 10 = 30
+20 + 11 = 31
+20 + 12 = 32
+20 + 13 = 33
+20 + 14 = 34
+20 + 15 = 35
+20 + 16 = 36
+20 + 17 = 37
+20 + 18 = 38
+20 + 19 = 39
+20 + 20 = 40
+20 + 21 = 41
+20 + 22 = 42
+20 + 23 = 43
+20 + 24 = 44
+20 + 25 = 45
+20 + 26 = 46
+20 + 27 = 47
+20 + 28 = 48
+20 + 29 = 49
+20 + 30 = 50
+20 + 31 = 51
+20 + 32 = 52
+20 + 33 = 53
+20 + 34 = 54
+20 + 35 = 55
+20 + 36 = 56
+20 + 37 = 57
+20 + 38 = 58
+20 + 39 = 59
+20 + 40 = 60
+20 + 41 = 61
+20 + 42 = 62
+20 + 43 = 63
+20 + 44 = 64
+20 + 45 = 65
+20 + 46 = 66
+20 + 47 = 67
+20 + 48 = 68
+20 + 49 = 69
+20 + 50 = 70
+20 + 51 = 71
+20 + 52 = 72
+20 + 53 = 73
+20 + 54 = 74
+20 + 55 = 75
+20 + 56 = 76
+20 + 57 = 77
+20 + 58 = 78
+20 + 59 = 79
+20 + 60 = 80
+20 + 61 = 81
+20 + 62 = 82
+20 + 63 = 83
+21 + 0 = 21
+21 + 1 = 22
+21 + 2 = 23
+21 + 3 = 24
+21 + 4 = 25
+21 + 5 = 26
+21 + 6 = 27
+21 + 7 = 28
+21 + 8 = 29
+21 + 9 = 30
+21 + 10 = 31
+21 + 11 = 32
+21 + 12 = 33
+21 + 13 = 34
+21 + 14 = 35
+21 + 15 = 36
+21 + 16 = 37
+21 + 17 = 38
+21 + 18 = 39
+21 + 19 = 40
+21 + 20 = 41
+21 + 21 = 42
+21 + 22 = 43
+21 + 23 = 44
+21 + 24 = 45
+21 + 25 = 46
+21 + 26 = 47
+21 + 27 = 48
+21 + 28 = 49
+21 + 29 = 50
+21 + 30 = 51
+21 + 31 = 52
+21 + 32 = 53
+21 + 33 = 54
+21 + 34 = 55
+21 + 35 = 56
+21 + 36 = 57
+21 + 37 = 58
+21 + 38 = 59
+21 + 39 = 60
+21 + 40 = 61
+21 + 41 = 62
+21 + 42 = 63
+21 + 43 = 64
+21 + 44 = 65
+21 + 45 = 66
+21 + 46 = 67
+21 + 47 = 68
+21 + 48 = 69
+21 + 49 = 70
+21 + 50 = 71
+21 + 51 = 72
+21 + 52 = 73
+21 + 53 = 74
+21 + 54 = 75
+21 + 55 = 76
+21 + 56 = 77
+21 + 57 = 78
+21 + 58 = 79
+21 + 59 = 80
+21 + 60 = 81
+21 + 61 = 82
+21 + 62 = 83
+21 + 63 = 84
+22 + 0 = 22
+22 + 1 = 23
+22 + 2 = 24
+22 + 3 = 25
+22 + 4 = 26
+22 + 5 = 27
+22 + 6 = 28
+22 + 7 = 29
+22 + 8 = 30
+22 + 9 = 31
+22 + 10 = 32
+22 + 11 = 33
+22 + 12 = 34
+22 + 13 = 35
+22 + 14 = 36
+22 + 15 = 37
+22 + 16 = 38
+22 + 17 = 39
+22 + 18 = 40
+22 + 19 = 41
+22 + 20 = 42
+22 + 21 = 43
+22 + 22 = 44
+22 + 23 = 45
+22 + 24 = 46
+22 + 25 = 47
+22 + 26 = 48
+22 + 27 = 49
+22 + 28 = 50
+22 + 29 = 51
+22 + 30 = 52
+22 + 31 = 53
+22 + 32 = 54
+22 + 33 = 55
+22 + 34 = 56
+22 + 35 = 57
+22 + 36 = 58
+22 + 37 = 59
+22 + 38 = 60
+22 + 39 = 61
+22 + 40 = 62
+22 + 41 = 63
+22 + 42 = 64
+22 + 43 = 65
+22 + 44 = 66
+22 + 45 = 67
+22 + 46 = 68
+22 + 47 = 69
+22 + 48 = 70
+22 + 49 = 71
+22 + 50 = 72
+22 + 51 = 73
+22 + 52 = 74
+22 + 53 = 75
+22 + 54 = 76
+22 + 55 = 77
+22 + 56 = 78
+22 + 57 = 79
+22 + 58 = 80
+22 + 59 = 81
+22 + 60 = 82
+22 + 61 = 83
+22 + 62 = 84
+22 + 63 = 85
+23 + 0 = 23
+23 + 1 = 24
+23 + 2 = 25
+23 + 3 = 26
+23 + 4 = 27
+23 + 5 = 28
+23 + 6 = 29
+23 + 7 = 30
+23 + 8 = 31
+23 + 9 = 32
+23 + 10 = 33
+23 + 11 = 34
+23 + 12 = 35
+23 + 13 = 36
+23 + 14 = 37
+23 + 15 = 38
+23 + 16 = 39
+23 + 17 = 40
+23 + 18 = 41
+23 + 19 = 42
+23 + 20 = 43
+23 + 21 = 44
+23 + 22 = 45
+23 + 23 = 46
+23 + 24 = 47
+23 + 25 = 48
+23 + 26 = 49
+23 + 27 = 50
+23 + 28 = 51
+23 + 29 = 52
+23 + 30 = 53
+23 + 31 = 54
+23 + 32 = 55
+23 + 33 = 56
+23 + 34 = 57
+23 + 35 = 58
+23 + 36 = 59
+23 + 37 = 60
+23 + 38 = 61
+23 + 39 = 62
+23 + 40 = 63
+23 + 41 = 64
+23 + 42 = 65
+23 + 43 = 66
+23 + 44 = 67
+23 + 45 = 68
+23 + 46 = 69
+23 + 47 = 70
+23 + 48 = 71
+23 + 49 = 72
+23 + 50 = 73
+23 + 51 = 74
+23 + 52 = 75
+23 + 53 = 76
+23 + 54 = 77
+23 + 55 = 78
+23 + 56 = 79
+23 + 57 = 80
+23 + 58 = 81
+23 + 59 = 82
+23 + 60 = 83
+23 + 61 = 84
+23 + 62 = 85
+23 + 63 = 86
+24 + 0 = 24
+24 + 1 = 25
+24 + 2 = 26
+24 + 3 = 27
+24 + 4 = 28
+24 + 5 = 29
+24 + 6 = 30
+24 + 7 = 31
+24 + 8 = 32
+24 + 9 = 33
+24 + 10 = 34
+24 + 11 = 35
+24 + 12 = 36
+24 + 13 = 37
+24 + 14 = 38
+24 + 15 = 39
+24 + 16 = 40
+24 + 17 = 41
+24 + 18 = 42
+24 + 19 = 43
+24 + 20 = 44
+24 + 21 = 45
+24 + 22 = 46
+24 + 23 = 47
+24 + 24 = 48
+24 + 25 = 49
+24 + 26 = 50
+24 + 27 = 51
+24 + 28 = 52
+24 + 29 = 53
+24 + 30 = 54
+24 + 31 = 55
+24 + 32 = 56
+24 + 33 = 57
+24 + 34 = 58
+24 + 35 = 59
+24 + 36 = 60
+24 + 37 = 61
+24 + 38 = 62
+24 + 39 = 63
+24 + 40 = 64
+24 + 41 = 65
+24 + 42 = 66
+24 + 43 = 67
+24 + 44 = 68
+24 + 45 = 69
+24 + 46 = 70
+24 + 47 = 71
+24 + 48 = 72
+24 + 49 = 73
+24 + 50 = 74
+24 + 51 = 75
+24 + 52 = 76
+24 + 53 = 77
+24 + 54 = 78
+24 + 55 = 79
+24 + 56 = 80
+24 + 57 = 81
+24 + 58 = 82
+24 + 59 = 83
+24 + 60 = 84
+24 + 61 = 85
+24 + 62 = 86
+24 + 63 = 87
+25 + 0 = 25
+25 + 1 = 26
+25 + 2 = 27
+25 + 3 = 28
+25 + 4 = 29
+25 + 5 = 30
+25 + 6 = 31
+25 + 7 = 32
+25 + 8 = 33
+25 + 9 = 34
+25 + 10 = 35
+25 + 11 = 36
+25 + 12 = 37
+25 + 13 = 38
+25 + 14 = 39
+25 + 15 = 40
+25 + 16 = 41
+25 + 17 = 42
+25 + 18 = 43
+25 + 19 = 44
+25 + 20 = 45
+25 + 21 = 46
+25 + 22 = 47
+25 + 23 = 48
+25 + 24 = 49
+25 + 25 = 50
+25 + 26 = 51
+25 + 27 = 52
+25 + 28 = 53
+25 + 29 = 54
+25 + 30 = 55
+25 + 31 = 56
+25 + 32 = 57
+25 + 33 = 58
+25 + 34 = 59
+25 + 35 = 60
+25 + 36 = 61
+25 + 37 = 62
+25 + 38 = 63
+25 + 39 = 64
+25 + 40 = 65
+25 + 41 = 66
+25 + 42 = 67
+25 + 43 = 68
+25 + 44 = 69
+25 + 45 = 70
+25 + 46 = 71
+25 + 47 = 72
+25 + 48 = 73
+25 + 49 = 74
+25 + 50 = 75
+25 + 51 = 76
+25 + 52 = 77
+25 + 53 = 78
+25 + 54 = 79
+25 + 55 = 80
+25 + 56 = 81
+25 + 57 = 82
+25 + 58 = 83
+25 + 59 = 84
+25 + 60 = 85
+25 + 61 = 86
+25 + 62 = 87
+25 + 63 = 88
+26 + 0 = 26
+26 + 1 = 27
+26 + 2 = 28
+26 + 3 = 29
+26 + 4 = 30
+26 + 5 = 31
+26 + 6 = 32
+26 + 7 = 33
+26 + 8 = 34
+26 + 9 = 35
+26 + 10 = 36
+26 + 11 = 37
+26 + 12 = 38
+26 + 13 = 39
+26 + 14 = 40
+26 + 15 = 41
+26 + 16 = 42
+26 + 17 = 43
+26 + 18 = 44
+26 + 19 = 45
+26 + 20 = 46
+26 + 21 = 47
+26 + 22 = 48
+26 + 23 = 49
+26 + 24 = 50
+26 + 25 = 51
+26 + 26 = 52
+26 + 27 = 53
+26 + 28 = 54
+26 + 29 = 55
+26 + 30 = 56
+26 + 31 = 57
+26 + 32 = 58
+26 + 33 = 59
+26 + 34 = 60
+26 + 35 = 61
+26 + 36 = 62
+26 + 37 = 63
+26 + 38 = 64
+26 + 39 = 65
+26 + 40 = 66
+26 + 41 = 67
+26 + 42 = 68
+26 + 43 = 69
+26 + 44 = 70
+26 + 45 = 71
+26 + 46 = 72
+26 + 47 = 73
+26 + 48 = 74
+26 + 49 = 75
+26 + 50 = 76
+26 + 51 = 77
+26 + 52 = 78
+26 + 53 = 79
+26 + 54 = 80
+26 + 55 = 81
+26 + 56 = 82
+26 + 57 = 83
+26 + 58 = 84
+26 + 59 = 85
+26 + 60 = 86
+26 + 61 = 87
+26 + 62 = 88
+26 + 63 = 89
+27 + 0 = 27
+27 + 1 = 28
+27 + 2 = 29
+27 + 3 = 30
+27 + 4 = 31
+27 + 5 = 32
+27 + 6 = 33
+27 + 7 = 34
+27 + 8 = 35
+27 + 9 = 36
+27 + 10 = 37
+27 + 11 = 38
+27 + 12 = 39
+27 + 13 = 40
+27 + 14 = 41
+27 + 15 = 42
+27 + 16 = 43
+27 + 17 = 44
+27 + 18 = 45
+27 + 19 = 46
+27 + 20 = 47
+27 + 21 = 48
+27 + 22 = 49
+27 + 23 = 50
+27 + 24 = 51
+27 + 25 = 52
+27 + 26 = 53
+27 + 27 = 54
+27 + 28 = 55
+27 + 29 = 56
+27 + 30 = 57
+27 + 31 = 58
+27 + 32 = 59
+27 + 33 = 60
+27 + 34 = 61
+27 + 35 = 62
+27 + 36 = 63
+27 + 37 = 64
+27 + 38 = 65
+27 + 39 = 66
+27 + 40 = 67
+27 + 41 = 68
+27 + 42 = 69
+27 + 43 = 70
+27 + 44 = 71
+27 + 45 = 72
+27 + 46 = 73
+27 + 47 = 74
+27 + 48 = 75
+27 + 49 = 76
+27 + 50 = 77
+27 + 51 = 78
+27 + 52 = 79
+27 + 53 = 80
+27 + 54 = 81
+27 + 55 = 82
+27 + 56 = 83
+27 + 57 = 84
+27 + 58 = 85
+27 + 59 = 86
+27 + 60 = 87
+27 + 61 = 88
+27 + 62 = 89
+27 + 63 = 90
+28 + 0 = 28
+28 + 1 = 29
+28 + 2 = 30
+28 + 3 = 31
+28 + 4 = 32
+28 + 5 = 33
+28 + 6 = 34
+28 + 7 = 35
+28 + 8 = 36
+28 + 9 = 37
+28 + 10 = 38
+28 + 11 = 39
+28 + 12 = 40
+28 + 13 = 41
+28 + 14 = 42
+28 + 15 = 43
+28 + 16 = 44
+28 + 17 = 45
+28 + 18 = 46
+28 + 19 = 47
+28 + 20 = 48
+28 + 21 = 49
+28 + 22 = 50
+28 + 23 = 51
+28 + 24 = 52
+28 + 25 = 53
+28 + 26 = 54
+28 + 27 = 55
+28 + 28 = 56
+28 + 29 = 57
+28 + 30 = 58
+28 + 31 = 59
+28 + 32 = 60
+28 + 33 = 61
+28 + 34 = 62
+28 + 35 = 63
+28 + 36 = 64
+28 + 37 = 65
+28 + 38 = 66
+28 + 39 = 67
+28 + 40 = 68
+28 + 41 = 69
+28 + 42 = 70
+28 + 43 = 71
+28 + 44 = 72
+28 + 45 = 73
+28 + 46 = 74
+28 + 47 = 75
+28 + 48 = 76
+28 + 49 = 77
+28 + 50 = 78
+28 + 51 = 79
+28 + 52 = 80
+28 + 53 = 81
+28 + 54 = 82
+28 + 55 = 83
+28 + 56 = 84
+28 + 57 = 85
+28 + 58 = 86
+28 + 59 = 87
+28 + 60 = 88
+28 + 61 = 89
+28 + 62 = 90
+28 + 63 = 91
+29 + 0 = 29
+29 + 1 = 30
+29 + 2 = 31
+29 + 3 = 32
+29 + 4 = 33
+29 + 5 = 34
+29 + 6 = 35
+29 + 7 = 36
+29 + 8 = 37
+29 + 9 = 38
+29 + 10 = 39
+29 + 11 = 40
+29 + 12 = 41
+29 + 13 = 42
+29 + 14 = 43
+29 + 15 = 44
+29 + 16 = 45
+29 + 17 = 46
+29 + 18 = 47
+29 + 19 = 48
+29 + 20 = 49
+29 + 21 = 50
+29 + 22 = 51
+29 + 23 = 52
+29 + 24 = 53
+29 + 25 = 54
+29 + 26 = 55
+29 + 27 = 56
+29 + 28 = 57
+29 + 29 = 58
+29 + 30 = 59
+29 + 31 = 60
+29 + 32 = 61
+29 + 33 = 62
+29 + 34 = 63
+29 + 35 = 64
+29 + 36 = 65
+29 + 37 = 66
+29 + 38 = 67
+29 + 39 = 68
+29 + 40 = 69
+29 + 41 = 70
+29 + 42 = 71
+29 + 43 = 72
+29 + 44 = 73
+29 + 45 = 74
+29 + 46 = 75
+29 + 47 = 76
+29 + 48 = 77
+29 + 49 = 78
+29 + 50 = 79
+29 + 51 = 80
+29 + 52 = 81
+29 + 53 = 82
+29 + 54 = 83
+29 + 55 = 84
+29 + 56 = 85
+29 + 57 = 86
+29 + 58 = 87
+29 + 59 = 88
+29 + 60 = 89
+29 + 61 = 90
+29 + 62 = 91
+29 + 63 = 92
+30 + 0 = 30
+30 + 1 = 31
+30 + 2 = 32
+30 + 3 = 33
+30 + 4 = 34
+30 + 5 = 35
+30 + 6 = 36
+30 + 7 = 37
+30 + 8 = 38
+30 + 9 = 39
+30 + 10 = 40
+30 + 11 = 41
+30 + 12 = 42
+30 + 13 = 43
+30 + 14 = 44
+30 + 15 = 45
+30 + 16 = 46
+30 + 17 = 47
+30 + 18 = 48
+30 + 19 = 49
+30 + 20 = 50
+30 + 21 = 51
+30 + 22 = 52
+30 + 23 = 53
+30 + 24 = 54
+30 + 25 = 55
+30 + 26 = 56
+30 + 27 = 57
+30 + 28 = 58
+30 + 29 = 59
+30 + 30 = 60
+30 + 31 = 61
+30 + 32 = 62
+30 + 33 = 63
+30 + 34 = 64
+30 + 35 = 65
+30 + 36 = 66
+30 + 37 = 67
+30 + 38 = 68
+30 + 39 = 69
+30 + 40 = 70
+30 + 41 = 71
+30 + 42 = 72
+30 + 43 = 73
+30 + 44 = 74
+30 + 45 = 75
+30 + 46 = 76
+30 + 47 = 77
+30 + 48 = 78
+30 + 49 = 79
+30 + 50 = 80
+30 + 51 = 81
+30 + 52 = 82
+30 + 53 = 83
+30 + 54 = 84
+30 + 55 = 85
+30 + 56 = 86
+30 + 57 = 87
+30 + 58 = 88
+30 + 59 = 89
+30 + 60 = 90
+30 + 61 = 91
+30 + 62 = 92
+30 + 63 = 93
+31 + 0 = 31
+31 + 1 = 32
+31 + 2 = 33
+31 + 3 = 34
+31 + 4 = 35
+31 + 5 = 36
+31 + 6 = 37
+31 + 7 = 38
+31 + 8 = 39
+31 + 9 = 40
+31 + 10 = 41
+31 + 11 = 42
+31 + 12 = 43
+31 + 13 = 44
+31 + 14 = 45
+31 + 15 = 46
+31 + 16 = 47
+31 + 17 = 48
+31 + 18 = 49
+31 + 19 = 50
+31 + 20 = 51
+31 + 21 = 52
+31 + 22 = 53
+31 + 23 = 54
+31 + 24 = 55
+31 + 25 = 56
+31 + 26 = 57
+31 + 27 = 58
+31 + 28 = 59
+31 + 29 = 60
+31 + 30 = 61
+31 + 31 = 62
+31 + 32 = 63
+31 + 33 = 64
+31 + 34 = 65
+31 + 35 = 66
+31 + 36 = 67
+31 + 37 = 68
+31 + 38 = 69
+31 + 39 = 70
+31 + 40 = 71
+31 + 41 = 72
+31 + 42 = 73
+31 + 43 = 74
+31 + 44 = 75
+31 + 45 = 76
+31 + 46 = 77
+31 + 47 = 78
+31 + 48 = 79
+31 + 49 = 80
+31 + 50 = 81
+31 + 51 = 82
+31 + 52 = 83
+31 + 53 = 84
+31 + 54 = 85
+31 + 55 = 86
+31 + 56 = 87
+31 + 57 = 88
+31 + 58 = 89
+31 + 59 = 90
+31 + 60 = 91
+31 + 61 = 92
+31 + 62 = 93
+31 + 63 = 94
+32 + 0 = 32
+32 + 1 = 33
+32 + 2 = 34
+32 + 3 = 35
+32 + 4 = 36
+32 + 5 = 37
+32 + 6 = 38
+32 + 7 = 39
+32 + 8 = 40
+32 + 9 = 41
+32 + 10 = 42
+32 + 11 = 43
+32 + 12 = 44
+32 + 13 = 45
+32 + 14 = 46
+32 + 15 = 47
+32 + 16 = 48
+32 + 17 = 49
+32 + 18 = 50
+32 + 19 = 51
+32 + 20 = 52
+32 + 21 = 53
+32 + 22 = 54
+32 + 23 = 55
+32 + 24 = 56
+32 + 25 = 57
+32 + 26 = 58
+32 + 27 = 59
+32 + 28 = 60
+32 + 29 = 61
+32 + 30 = 62
+32 + 31 = 63
+32 + 32 = 64
+32 + 33 = 65
+32 + 34 = 66
+32 + 35 = 67
+32 + 36 = 68
+32 + 37 = 69
+32 + 38 = 70
+32 + 39 = 71
+32 + 40 = 72
+32 + 41 = 73
+32 + 42 = 74
+32 + 43 = 75
+32 + 44 = 76
+32 + 45 = 77
+32 + 46 = 78
+32 + 47 = 79
+32 + 48 = 80
+32 + 49 = 81
+32 + 50 = 82
+32 + 51 = 83
+32 + 52 = 84
+32 + 53 = 85
+32 + 54 = 86
+32 + 55 = 87
+32 + 56 = 88
+32 + 57 = 89
+32 + 58 = 90
+32 + 59 = 91
+32 + 60 = 92
+32 + 61 = 93
+32 + 62 = 94
+32 + 63 = 95
+33 + 0 = 33
+33 + 1 = 34
+33 + 2 = 35
+33 + 3 = 36
+33 + 4 = 37
+33 + 5 = 38
+33 + 6 = 39
+33 + 7 = 40
+33 + 8 = 41
+33 + 9 = 42
+33 + 10 = 43
+33 + 11 = 44
+33 + 12 = 45
+33 + 13 = 46
+33 + 14 = 47
+33 + 15 = 48
+33 + 16 = 49
+33 + 17 = 50
+33 + 18 = 51
+33 + 19 = 52
+33 + 20 = 53
+33 + 21 = 54
+33 + 22 = 55
+33 + 23 = 56
+33 + 24 = 57
+33 + 25 = 58
+33 + 26 = 59
+33 + 27 = 60
+33 + 28 = 61
+33 + 29 = 62
+33 + 30 = 63
+33 + 31 = 64
+33 + 32 = 65
+33 + 33 = 66
+33 + 34 = 67
+33 + 35 = 68
+33 + 36 = 69
+33 + 37 = 70
+33 + 38 = 71
+33 + 39 = 72
+33 + 40 = 73
+33 + 41 = 74
+33 + 42 = 75
+33 + 43 = 76
+33 + 44 = 77
+33 + 45 = 78
+33 + 46 = 79
+33 + 47 = 80
+33 + 48 = 81
+33 + 49 = 82
+33 + 50 = 83
+33 + 51 = 84
+33 + 52 = 85
+33 + 53 = 86
+33 + 54 = 87
+33 + 55 = 88
+33 + 56 = 89
+33 + 57 = 90
+33 + 58 = 91
+33 + 59 = 92
+33 + 60 = 93
+33 + 61 = 94
+33 + 62 = 95
+33 + 63 = 96
+34 + 0 = 34
+34 + 1 = 35
+34 + 2 = 36
+34 + 3 = 37
+34 + 4 = 38
+34 + 5 = 39
+34 + 6 = 40
+34 + 7 = 41
+34 + 8 = 42
+34 + 9 = 43
+34 + 10 = 44
+34 + 11 = 45
+34 + 12 = 46
+34 + 13 = 47
+34 + 14 = 48
+34 + 15 = 49
+34 + 16 = 50
+34 + 17 = 51
+34 + 18 = 52
+34 + 19 = 53
+34 + 20 = 54
+34 + 21 = 55
+34 + 22 = 56
+34 + 23 = 57
+34 + 24 = 58
+34 + 25 = 59
+34 + 26 = 60
+34 + 27 = 61
+34 + 28 = 62
+34 + 29 = 63
+34 + 30 = 64
+34 + 31 = 65
+34 + 32 = 66
+34 + 33 = 67
+34 + 34 = 68
+34 + 35 = 69
+34 + 36 = 70
+34 + 37 = 71
+34 + 38 = 72
+34 + 39 = 73
+34 + 40 = 74
+34 + 41 = 75
+34 + 42 = 76
+34 + 43 = 77
+34 + 44 = 78
+34 + 45 = 79
+34 + 46 = 80
+34 + 47 = 81
+34 + 48 = 82
+34 + 49 = 83
+34 + 50 = 84
+34 + 51 = 85
+34 + 52 = 86
+34 + 53 = 87
+34 + 54 = 88
+34 + 55 = 89
+34 + 56 = 90
+34 + 57 = 91
+34 + 58 = 92
+34 + 59 = 93
+34 + 60 = 94
+34 + 61 = 95
+34 + 62 = 96
+34 + 63 = 97
+35 + 0 = 35
+35 + 1 = 36
+35 + 2 = 37
+35 + 3 = 38
+35 + 4 = 39
+35 + 5 = 40
+35 + 6 = 41
+35 + 7 = 42
+35 + 8 = 43
+35 + 9 = 44
+35 + 10 = 45
+35 + 11 = 46
+35 + 12 = 47
+35 + 13 = 48
+35 + 14 = 49
+35 + 15 = 50
+35 + 16 = 51
+35 + 17 = 52
+35 + 18 = 53
+35 + 19 = 54
+35 + 20 = 55
+35 + 21 = 56
+35 + 22 = 57
+35 + 23 = 58
+35 + 24 = 59
+35 + 25 = 60
+35 + 26 = 61
+35 + 27 = 62
+35 + 28 = 63
+35 + 29 = 64
+35 + 30 = 65
+35 + 31 = 66
+35 + 32 = 67
+35 + 33 = 68
+35 + 34 = 69
+35 + 35 = 70
+35 + 36 = 71
+35 + 37 = 72
+35 + 38 = 73
+35 + 39 = 74
+35 + 40 = 75
+35 + 41 = 76
+35 + 42 = 77
+35 + 43 = 78
+35 + 44 = 79
+35 + 45 = 80
+35 + 46 = 81
+35 + 47 = 82
+35 + 48 = 83
+35 + 49 = 84
+35 + 50 = 85
+35 + 51 = 86
+35 + 52 = 87
+35 + 53 = 88
+35 + 54 = 89
+35 + 55 = 90
+35 + 56 = 91
+35 + 57 = 92
+35 + 58 = 93
+35 + 59 = 94
+35 + 60 = 95
+35 + 61 = 96
+35 + 62 = 97
+35 + 63 = 98
+36 + 0 = 36
+36 + 1 = 37
+36 + 2 = 38
+36 + 3 = 39
+36 + 4 = 40
+36 + 5 = 41
+36 + 6 = 42
+36 + 7 = 43
+36 + 8 = 44
+36 + 9 = 45
+36 + 10 = 46
+36 + 11 = 47
+36 + 12 = 48
+36 + 13 = 49
+36 + 14 = 50
+36 + 15 = 51
+36 + 16 = 52
+36 + 17 = 53
+36 + 18 = 54
+36 + 19 = 55
+36 + 20 = 56
+36 + 21 = 57
+36 + 22 = 58
+36 + 23 = 59
+36 + 24 = 60
+36 + 25 = 61
+36 + 26 = 62
+36 + 27 = 63
+36 + 28 = 64
+36 + 29 = 65
+36 + 30 = 66
+36 + 31 = 67
+36 + 32 = 68
+36 + 33 = 69
+36 + 34 = 70
+36 + 35 = 71
+36 + 36 = 72
+36 + 37 = 73
+36 + 38 = 74
+36 + 39 = 75
+36 + 40 = 76
+36 + 41 = 77
+36 + 42 = 78
+36 + 43 = 79
+36 + 44 = 80
+36 + 45 = 81
+36 + 46 = 82
+36 + 47 = 83
+36 + 48 = 84
+36 + 49 = 85
+36 + 50 = 86
+36 + 51 = 87
+36 + 52 = 88
+36 + 53 = 89
+36 + 54 = 90
+36 + 55 = 91
+36 + 56 = 92
+36 + 57 = 93
+36 + 58 = 94
+36 + 59 = 95
+36 + 60 = 96
+36 + 61 = 97
+36 + 62 = 98
+36 + 63 = 99
+37 + 0 = 37
+37 + 1 = 38
+37 + 2 = 39
+37 + 3 = 40
+37 + 4 = 41
+37 + 5 = 42
+37 + 6 = 43
+37 + 7 = 44
+37 + 8 = 45
+37 + 9 = 46
+37 + 10 = 47
+37 + 11 = 48
+37 + 12 = 49
+37 + 13 = 50
+37 + 14 = 51
+37 + 15 = 52
+37 + 16 = 53
+37 + 17 = 54
+37 + 18 = 55
+37 + 19 = 56
+37 + 20 = 57
+37 + 21 = 58
+37 + 22 = 59
+37 + 23 = 60
+37 + 24 = 61
+37 + 25 = 62
+37 + 26 = 63
+37 + 27 = 64
+37 + 28 = 65
+37 + 29 = 66
+37 + 30 = 67
+37 + 31 = 68
+37 + 32 = 69
+37 + 33 = 70
+37 + 34 = 71
+37 + 35 = 72
+37 + 36 = 73
+37 + 37 = 74
+37 + 38 = 75
+37 + 39 = 76
+37 + 40 = 77
+37 + 41 = 78
+37 + 42 = 79
+37 + 43 = 80
+37 + 44 = 81
+37 + 45 = 82
+37 + 46 = 83
+37 + 47 = 84
+37 + 48 = 85
+37 + 49 = 86
+37 + 50 = 87
+37 + 51 = 88
+37 + 52 = 89
+37 + 53 = 90
+37 + 54 = 91
+37 + 55 = 92
+37 + 56 = 93
+37 + 57 = 94
+37 + 58 = 95
+37 + 59 = 96
+37 + 60 = 97
+37 + 61 = 98
+37 + 62 = 99
+37 + 63 = 100
+38 + 0 = 38
+38 + 1 = 39
+38 + 2 = 40
+38 + 3 = 41
+38 + 4 = 42
+38 + 5 = 43
+38 + 6 = 44
+38 + 7 = 45
+38 + 8 = 46
+38 + 9 = 47
+38 + 10 = 48
+38 + 11 = 49
+38 + 12 = 50
+38 + 13 = 51
+38 + 14 = 52
+38 + 15 = 53
+38 + 16 = 54
+38 + 17 = 55
+38 + 18 = 56
+38 + 19 = 57
+38 + 20 = 58
+38 + 21 = 59
+38 + 22 = 60
+38 + 23 = 61
+38 + 24 = 62
+38 + 25 = 63
+38 + 26 = 64
+38 + 27 = 65
+38 + 28 = 66
+38 + 29 = 67
+38 + 30 = 68
+38 + 31 = 69
+38 + 32 = 70
+38 + 33 = 71
+38 + 34 = 72
+38 + 35 = 73
+38 + 36 = 74
+38 + 37 = 75
+38 + 38 = 76
+38 + 39 = 77
+38 + 40 = 78
+38 + 41 = 79
+38 + 42 = 80
+38 + 43 = 81
+38 + 44 = 82
+38 + 45 = 83
+38 + 46 = 84
+38 + 47 = 85
+38 + 48 = 86
+38 + 49 = 87
+38 + 50 = 88
+38 + 51 = 89
+38 + 52 = 90
+38 + 53 = 91
+38 + 54 = 92
+38 + 55 = 93
+38 + 56 = 94
+38 + 57 = 95
+38 + 58 = 96
+38 + 59 = 97
+38 + 60 = 98
+38 + 61 = 99
+38 + 62 = 100
+38 + 63 = 101
+39 + 0 = 39
+39 + 1 = 40
+39 + 2 = 41
+39 + 3 = 42
+39 + 4 = 43
+39 + 5 = 44
+39 + 6 = 45
+39 + 7 = 46
+39 + 8 = 47
+39 + 9 = 48
+39 + 10 = 49
+39 + 11 = 50
+39 + 12 = 51
+39 + 13 = 52
+39 + 14 = 53
+39 + 15 = 54
+39 + 16 = 55
+39 + 17 = 56
+39 + 18 = 57
+39 + 19 = 58
+39 + 20 = 59
+39 + 21 = 60
+39 + 22 = 61
+39 + 23 = 62
+39 + 24 = 63
+39 + 25 = 64
+39 + 26 = 65
+39 + 27 = 66
+39 + 28 = 67
+39 + 29 = 68
+39 + 30 = 69
+39 + 31 = 70
+39 + 32 = 71
+39 + 33 = 72
+39 + 34 = 73
+39 + 35 = 74
+39 + 36 = 75
+39 + 37 = 76
+39 + 38 = 77
+39 + 39 = 78
+39 + 40 = 79
+39 + 41 = 80
+39 + 42 = 81
+39 + 43 = 82
+39 + 44 = 83
+39 + 45 = 84
+39 + 46 = 85
+39 + 47 = 86
+39 + 48 = 87
+39 + 49 = 88
+39 + 50 = 89
+39 + 51 = 90
+39 + 52 = 91
+39 + 53 = 92
+39 + 54 = 93
+39 + 55 = 94
+39 + 56 = 95
+39 + 57 = 96
+39 + 58 = 97
+39 + 59 = 98
+39 + 60 = 99
+39 + 61 = 100
+39 + 62 = 101
+39 + 63 = 102
+40 + 0 = 40
+40 + 1 = 41
+40 + 2 = 42
+40 + 3 = 43
+40 + 4 = 44
+40 + 5 = 45
+40 + 6 = 46
+40 + 7 = 47
+40 + 8 = 48
+40 + 9 = 49
+40 + 10 = 50
+40 + 11 = 51
+40 + 12 = 52
+40 + 13 = 53
+40 + 14 = 54
+40 + 15 = 55
+40 + 16 = 56
+40 + 17 = 57
+40 + 18 = 58
+40 + 19 = 59
+40 + 20 = 60
+40 + 21 = 61
+40 + 22 = 62
+40 + 23 = 63
+40 + 24 = 64
+40 + 25 = 65
+40 + 26 = 66
+40 + 27 = 67
+40 + 28 = 68
+40 + 29 = 69
+40 + 30 = 70
+40 + 31 = 71
+40 + 32 = 72
+40 + 33 = 73
+40 + 34 = 74
+40 + 35 = 75
+40 + 36 = 76
+40 + 37 = 77
+40 + 38 = 78
+40 + 39 = 79
+40 + 40 = 80
+40 + 41 = 81
+40 + 42 = 82
+40 + 43 = 83
+40 + 44 = 84
+40 + 45 = 85
+40 + 46 = 86
+40 + 47 = 87
+40 + 48 = 88
+40 + 49 = 89
+40 + 50 = 90
+40 + 51 = 91
+40 + 52 = 92
+40 + 53 = 93
+40 + 54 = 94
+40 + 55 = 95
+40 + 56 = 96
+40 + 57 = 97
+40 + 58 = 98
+40 + 59 = 99
+40 + 60 = 100
+40 + 61 = 101
+40 + 62 = 102
+40 + 63 = 103
+41 + 0 = 41
+41 + 1 = 42
+41 + 2 = 43
+41 + 3 = 44
+41 + 4 = 45
+41 + 5 = 46
+41 + 6 = 47
+41 + 7 = 48
+41 + 8 = 49
+41 + 9 = 50
+41 + 10 = 51
+41 + 11 = 52
+41 + 12 = 53
+41 + 13 = 54
+41 + 14 = 55
+41 + 15 = 56
+41 + 16 = 57
+41 + 17 = 58
+41 + 18 = 59
+41 + 19 = 60
+41 + 20 = 61
+41 + 21 = 62
+41 + 22 = 63
+41 + 23 = 64
+41 + 24 = 65
+41 + 25 = 66
+41 + 26 = 67
+41 + 27 = 68
+41 + 28 = 69
+41 + 29 = 70
+41 + 30 = 71
+41 + 31 = 72
+41 + 32 = 73
+41 + 33 = 74
+41 + 34 = 75
+41 + 35 = 76
+41 + 36 = 77
+41 + 37 = 78
+41 + 38 = 79
+41 + 39 = 80
+41 + 40 = 81
+41 + 41 = 82
+41 + 42 = 83
+41 + 43 = 84
+41 + 44 = 85
+41 + 45 = 86
+41 + 46 = 87
+41 + 47 = 88
+41 + 48 = 89
+41 + 49 = 90
+41 + 50 = 91
+41 + 51 = 92
+41 + 52 = 93
+41 + 53 = 94
+41 + 54 = 95
+41 + 55 = 96
+41 + 56 = 97
+41 + 57 = 98
+41 + 58 = 99
+41 + 59 = 100
+41 + 60 = 101
+41 + 61 = 102
+41 + 62 = 103
+41 + 63 = 104
+42 + 0 = 42
+42 + 1 = 43
+42 + 2 = 44
+42 + 3 = 45
+42 + 4 = 46
+42 + 5 = 47
+42 + 6 = 48
+42 + 7 = 49
+42 + 8 = 50
+42 + 9 = 51
+42 + 10 = 52
+42 + 11 = 53
+42 + 12 = 54
+42 + 13 = 55
+42 + 14 = 56
+42 + 15 = 57
+42 + 16 = 58
+42 + 17 = 59
+42 + 18 = 60
+42 + 19 = 61
+42 + 20 = 62
+42 + 21 = 63
+42 + 22 = 64
+42 + 23 = 65
+42 + 24 = 66
+42 + 25 = 67
+42 + 26 = 68
+42 + 27 = 69
+42 + 28 = 70
+42 + 29 = 71
+42 + 30 = 72
+42 + 31 = 73
+42 + 32 = 74
+42 + 33 = 75
+42 + 34 = 76
+42 + 35 = 77
+42 + 36 = 78
+42 + 37 = 79
+42 + 38 = 80
+42 + 39 = 81
+42 + 40 = 82
+42 + 41 = 83
+42 + 42 = 84
+42 + 43 = 85
+42 + 44 = 86
+42 + 45 = 87
+42 + 46 = 88
+42 + 47 = 89
+42 + 48 = 90
+42 + 49 = 91
+42 + 50 = 92
+42 + 51 = 93
+42 + 52 = 94
+42 + 53 = 95
+42 + 54 = 96
+42 + 55 = 97
+42 + 56 = 98
+42 + 57 = 99
+42 + 58 = 100
+42 + 59 = 101
+42 + 60 = 102
+42 + 61 = 103
+42 + 62 = 104
+42 + 63 = 105
+43 + 0 = 43
+43 + 1 = 44
+43 + 2 = 45
+43 + 3 = 46
+43 + 4 = 47
+43 + 5 = 48
+43 + 6 = 49
+43 + 7 = 50
+43 + 8 = 51
+43 + 9 = 52
+43 + 10 = 53
+43 + 11 = 54
+43 + 12 = 55
+43 + 13 = 56
+43 + 14 = 57
+43 + 15 = 58
+43 + 16 = 59
+43 + 17 = 60
+43 + 18 = 61
+43 + 19 = 62
+43 + 20 = 63
+43 + 21 = 64
+43 + 22 = 65
+43 + 23 = 66
+43 + 24 = 67
+43 + 25 = 68
+43 + 26 = 69
+43 + 27 = 70
+43 + 28 = 71
+43 + 29 = 72
+43 + 30 = 73
+43 + 31 = 74
+43 + 32 = 75
+43 + 33 = 76
+43 + 34 = 77
+43 + 35 = 78
+43 + 36 = 79
+43 + 37 = 80
+43 + 38 = 81
+43 + 39 = 82
+43 + 40 = 83
+43 + 41 = 84
+43 + 42 = 85
+43 + 43 = 86
+43 + 44 = 87
+43 + 45 = 88
+43 + 46 = 89
+43 + 47 = 90
+43 + 48 = 91
+43 + 49 = 92
+43 + 50 = 93
+43 + 51 = 94
+43 + 52 = 95
+43 + 53 = 96
+43 + 54 = 97
+43 + 55 = 98
+43 + 56 = 99
+43 + 57 = 100
+43 + 58 = 101
+43 + 59 = 102
+43 + 60 = 103
+43 + 61 = 104
+43 + 62 = 105
+43 + 63 = 106
+44 + 0 = 44
+44 + 1 = 45
+44 + 2 = 46
+44 + 3 = 47
+44 + 4 = 48
+44 + 5 = 49
+44 + 6 = 50
+44 + 7 = 51
+44 + 8 = 52
+44 + 9 = 53
+44 + 10 = 54
+44 + 11 = 55
+44 + 12 = 56
+44 + 13 = 57
+44 + 14 = 58
+44 + 15 = 59
+44 + 16 = 60
+44 + 17 = 61
+44 + 18 = 62
+44 + 19 = 63
+44 + 20 = 64
+44 + 21 = 65
+44 + 22 = 66
+44 + 23 = 67
+44 + 24 = 68
+44 + 25 = 69
+44 + 26 = 70
+44 + 27 = 71
+44 + 28 = 72
+44 + 29 = 73
+44 + 30 = 74
+44 + 31 = 75
+44 + 32 = 76
+44 + 33 = 77
+44 + 34 = 78
+44 + 35 = 79
+44 + 36 = 80
+44 + 37 = 81
+44 + 38 = 82
+44 + 39 = 83
+44 + 40 = 84
+44 + 41 = 85
+44 + 42 = 86
+44 + 43 = 87
+44 + 44 = 88
+44 + 45 = 89
+44 + 46 = 90
+44 + 47 = 91
+44 + 48 = 92
+44 + 49 = 93
+44 + 50 = 94
+44 + 51 = 95
+44 + 52 = 96
+44 + 53 = 97
+44 + 54 = 98
+44 + 55 = 99
+44 + 56 = 100
+44 + 57 = 101
+44 + 58 = 102
+44 + 59 = 103
+44 + 60 = 104
+44 + 61 = 105
+44 + 62 = 106
+44 + 63 = 107
+45 + 0 = 45
+45 + 1 = 46
+45 + 2 = 47
+45 + 3 = 48
+45 + 4 = 49
+45 + 5 = 50
+45 + 6 = 51
+45 + 7 = 52
+45 + 8 = 53
+45 + 9 = 54
+45 + 10 = 55
+45 + 11 = 56
+45 + 12 = 57
+45 + 13 = 58
+45 + 14 = 59
+45 + 15 = 60
+45 + 16 = 61
+45 + 17 = 62
+45 + 18 = 63
+45 + 19 = 64
+45 + 20 = 65
+45 + 21 = 66
+45 + 22 = 67
+45 + 23 = 68
+45 + 24 = 69
+45 + 25 = 70
+45 + 26 = 71
+45 + 27 = 72
+45 + 28 = 73
+45 + 29 = 74
+45 + 30 = 75
+45 + 31 = 76
+45 + 32 = 77
+45 + 33 = 78
+45 + 34 = 79
+45 + 35 = 80
+45 + 36 = 81
+45 + 37 = 82
+45 + 38 = 83
+45 + 39 = 84
+45 + 40 = 85
+45 + 41 = 86
+45 + 42 = 87
+45 + 43 = 88
+45 + 44 = 89
+45 + 45 = 90
+45 + 46 = 91
+45 + 47 = 92
+45 + 48 = 93
+45 + 49 = 94
+45 + 50 = 95
+45 + 51 = 96
+45 + 52 = 97
+45 + 53 = 98
+45 + 54 = 99
+45 + 55 = 100
+45 + 56 = 101
+45 + 57 = 102
+45 + 58 = 103
+45 + 59 = 104
+45 + 60 = 105
+45 + 61 = 106
+45 + 62 = 107
+45 + 63 = 108
+46 + 0 = 46
+46 + 1 = 47
+46 + 2 = 48
+46 + 3 = 49
+46 + 4 = 50
+46 + 5 = 51
+46 + 6 = 52
+46 + 7 = 53
+46 + 8 = 54
+46 + 9 = 55
+46 + 10 = 56
+46 + 11 = 57
+46 + 12 = 58
+46 + 13 = 59
+46 + 14 = 60
+46 + 15 = 61
+46 + 16 = 62
+46 + 17 = 63
+46 + 18 = 64
+46 + 19 = 65
+46 + 20 = 66
+46 + 21 = 67
+46 + 22 = 68
+46 + 23 = 69
+46 + 24 = 70
+46 + 25 = 71
+46 + 26 = 72
+46 + 27 = 73
+46 + 28 = 74
+46 + 29 = 75
+46 + 30 = 76
+46 + 31 = 77
+46 + 32 = 78
+46 + 33 = 79
+46 + 34 = 80
+46 + 35 = 81
+46 + 36 = 82
+46 + 37 = 83
+46 + 38 = 84
+46 + 39 = 85
+46 + 40 = 86
+46 + 41 = 87
+46 + 42 = 88
+46 + 43 = 89
+46 + 44 = 90
+46 + 45 = 91
+46 + 46 = 92
+46 + 47 = 93
+46 + 48 = 94
+46 + 49 = 95
+46 + 50 = 96
+46 + 51 = 97
+46 + 52 = 98
+46 + 53 = 99
+46 + 54 = 100
+46 + 55 = 101
+46 + 56 = 102
+46 + 57 = 103
+46 + 58 = 104
+46 + 59 = 105
+46 + 60 = 106
+46 + 61 = 107
+46 + 62 = 108
+46 + 63 = 109
+47 + 0 = 47
+47 + 1 = 48
+47 + 2 = 49
+47 + 3 = 50
+47 + 4 = 51
+47 + 5 = 52
+47 + 6 = 53
+47 + 7 = 54
+47 + 8 = 55
+47 + 9 = 56
+47 + 10 = 57
+47 + 11 = 58
+47 + 12 = 59
+47 + 13 = 60
+47 + 14 = 61
+47 + 15 = 62
+47 + 16 = 63
+47 + 17 = 64
+47 + 18 = 65
+47 + 19 = 66
+47 + 20 = 67
+47 + 21 = 68
+47 + 22 = 69
+47 + 23 = 70
+47 + 24 = 71
+47 + 25 = 72
+47 + 26 = 73
+47 + 27 = 74
+47 + 28 = 75
+47 + 29 = 76
+47 + 30 = 77
+47 + 31 = 78
+47 + 32 = 79
+47 + 33 = 80
+47 + 34 = 81
+47 + 35 = 82
+47 + 36 = 83
+47 + 37 = 84
+47 + 38 = 85
+47 + 39 = 86
+47 + 40 = 87
+47 + 41 = 88
+47 + 42 = 89
+47 + 43 = 90
+47 + 44 = 91
+47 + 45 = 92
+47 + 46 = 93
+47 + 47 = 94
+47 + 48 = 95
+47 + 49 = 96
+47 + 50 = 97
+47 + 51 = 98
+47 + 52 = 99
+47 + 53 = 100
+47 + 54 = 101
+47 + 55 = 102
+47 + 56 = 103
+47 + 57 = 104
+47 + 58 = 105
+47 + 59 = 106
+47 + 60 = 107
+47 + 61 = 108
+47 + 62 = 109
+47 + 63 = 110
+48 + 0 = 48
+48 + 1 = 49
+48 + 2 = 50
+48 + 3 = 51
+48 + 4 = 52
+48 + 5 = 53
+48 + 6 = 54
+48 + 7 = 55
+48 + 8 = 56
+48 + 9 = 57
+48 + 10 = 58
+48 + 11 = 59
+48 + 12 = 60
+48 + 13 = 61
+48 + 14 = 62
+48 + 15 = 63
+48 + 16 = 64
+48 + 17 = 65
+48 + 18 = 66
+48 + 19 = 67
+48 + 20 = 68
+48 + 21 = 69
+48 + 22 = 70
+48 + 23 = 71
+48 + 24 = 72
+48 + 25 = 73
+48 + 26 = 74
+48 + 27 = 75
+48 + 28 = 76
+48 + 29 = 77
+48 + 30 = 78
+48 + 31 = 79
+48 + 32 = 80
+48 + 33 = 81
+48 + 34 = 82
+48 + 35 = 83
+48 + 36 = 84
+48 + 37 = 85
+48 + 38 = 86
+48 + 39 = 87
+48 + 40 = 88
+48 + 41 = 89
+48 + 42 = 90
+48 + 43 = 91
+48 + 44 = 92
+48 + 45 = 93
+48 + 46 = 94
+48 + 47 = 95
+48 + 48 = 96
+48 + 49 = 97
+48 + 50 = 98
+48 + 51 = 99
+48 + 52 = 100
+48 + 53 = 101
+48 + 54 = 102
+48 + 55 = 103
+48 + 56 = 104
+48 + 57 = 105
+48 + 58 = 106
+48 + 59 = 107
+48 + 60 = 108
+48 + 61 = 109
+48 + 62 = 110
+48 + 63 = 111
+49 + 0 = 49
+49 + 1 = 50
+49 + 2 = 51
+49 + 3 = 52
+49 + 4 = 53
+49 + 5 = 54
+49 + 6 = 55
+49 + 7 = 56
+49 + 8 = 57
+49 + 9 = 58
+49 + 10 = 59
+49 + 11 = 60
+49 + 12 = 61
+49 + 13 = 62
+49 + 14 = 63
+49 + 15 = 64
+49 + 16 = 65
+49 + 17 = 66
+49 + 18 = 67
+49 + 19 = 68
+49 + 20 = 69
+49 + 21 = 70
+49 + 22 = 71
+49 + 23 = 72
+49 + 24 = 73
+49 + 25 = 74
+49 + 26 = 75
+49 + 27 = 76
+49 + 28 = 77
+49 + 29 = 78
+49 + 30 = 79
+49 + 31 = 80
+49 + 32 = 81
+49 + 33 = 82
+49 + 34 = 83
+49 + 35 = 84
+49 + 36 = 85
+49 + 37 = 86
+49 + 38 = 87
+49 + 39 = 88
+49 + 40 = 89
+49 + 41 = 90
+49 + 42 = 91
+49 + 43 = 92
+49 + 44 = 93
+49 + 45 = 94
+49 + 46 = 95
+49 + 47 = 96
+49 + 48 = 97
+49 + 49 = 98
+49 + 50 = 99
+49 + 51 = 100
+49 + 52 = 101
+49 + 53 = 102
+49 + 54 = 103
+49 + 55 = 104
+49 + 56 = 105
+49 + 57 = 106
+49 + 58 = 107
+49 + 59 = 108
+49 + 60 = 109
+49 + 61 = 110
+49 + 62 = 111
+49 + 63 = 112
+50 + 0 = 50
+50 + 1 = 51
+50 + 2 = 52
+50 + 3 = 53
+50 + 4 = 54
+50 + 5 = 55
+50 + 6 = 56
+50 + 7 = 57
+50 + 8 = 58
+50 + 9 = 59
+50 + 10 = 60
+50 + 11 = 61
+50 + 12 = 62
+50 + 13 = 63
+50 + 14 = 64
+50 + 15 = 65
+50 + 16 = 66
+50 + 17 = 67
+50 + 18 = 68
+50 + 19 = 69
+50 + 20 = 70
+50 + 21 = 71
+50 + 22 = 72
+50 + 23 = 73
+50 + 24 = 74
+50 + 25 = 75
+50 + 26 = 76
+50 + 27 = 77
+50 + 28 = 78
+50 + 29 = 79
+50 + 30 = 80
+50 + 31 = 81
+50 + 32 = 82
+50 + 33 = 83
+50 + 34 = 84
+50 + 35 = 85
+50 + 36 = 86
+50 + 37 = 87
+50 + 38 = 88
+50 + 39 = 89
+50 + 40 = 90
+50 + 41 = 91
+50 + 42 = 92
+50 + 43 = 93
+50 + 44 = 94
+50 + 45 = 95
+50 + 46 = 96
+50 + 47 = 97
+50 + 48 = 98
+50 + 49 = 99
+50 + 50 = 100
+50 + 51 = 101
+50 + 52 = 102
+50 + 53 = 103
+50 + 54 = 104
+50 + 55 = 105
+50 + 56 = 106
+50 + 57 = 107
+50 + 58 = 108
+50 + 59 = 109
+50 + 60 = 110
+50 + 61 = 111
+50 + 62 = 112
+50 + 63 = 113
+51 + 0 = 51
+51 + 1 = 52
+51 + 2 = 53
+51 + 3 = 54
+51 + 4 = 55
+51 + 5 = 56
+51 + 6 = 57
+51 + 7 = 58
+51 + 8 = 59
+51 + 9 = 60
+51 + 10 = 61
+51 + 11 = 62
+51 + 12 = 63
+51 + 13 = 64
+51 + 14 = 65
+51 + 15 = 66
+51 + 16 = 67
+51 + 17 = 68
+51 + 18 = 69
+51 + 19 = 70
+51 + 20 = 71
+51 + 21 = 72
+51 + 22 = 73
+51 + 23 = 74
+51 + 24 = 75
+51 + 25 = 76
+51 + 26 = 77
+51 + 27 = 78
+51 + 28 = 79
+51 + 29 = 80
+51 + 30 = 81
+51 + 31 = 82
+51 + 32 = 83
+51 + 33 = 84
+51 + 34 = 85
+51 + 35 = 86
+51 + 36 = 87
+51 + 37 = 88
+51 + 38 = 89
+51 + 39 = 90
+51 + 40 = 91
+51 + 41 = 92
+51 + 42 = 93
+51 + 43 = 94
+51 + 44 = 95
+51 + 45 = 96
+51 + 46 = 97
+51 + 47 = 98
+51 + 48 = 99
+51 + 49 = 100
+51 + 50 = 101
+51 + 51 = 102
+51 + 52 = 103
+51 + 53 = 104
+51 + 54 = 105
+51 + 55 = 106
+51 + 56 = 107
+51 + 57 = 108
+51 + 58 = 109
+51 + 59 = 110
+51 + 60 = 111
+51 + 61 = 112
+51 + 62 = 113
+51 + 63 = 114
+52 + 0 = 52
+52 + 1 = 53
+52 + 2 = 54
+52 + 3 = 55
+52 + 4 = 56
+52 + 5 = 57
+52 + 6 = 58
+52 + 7 = 59
+52 + 8 = 60
+52 + 9 = 61
+52 + 10 = 62
+52 + 11 = 63
+52 + 12 = 64
+52 + 13 = 65
+52 + 14 = 66
+52 + 15 = 67
+52 + 16 = 68
+52 + 17 = 69
+52 + 18 = 70
+52 + 19 = 71
+52 + 20 = 72
+52 + 21 = 73
+52 + 22 = 74
+52 + 23 = 75
+52 + 24 = 76
+52 + 25 = 77
+52 + 26 = 78
+52 + 27 = 79
+52 + 28 = 80
+52 + 29 = 81
+52 + 30 = 82
+52 + 31 = 83
+52 + 32 = 84
+52 + 33 = 85
+52 + 34 = 86
+52 + 35 = 87
+52 + 36 = 88
+52 + 37 = 89
+52 + 38 = 90
+52 + 39 = 91
+52 + 40 = 92
+52 + 41 = 93
+52 + 42 = 94
+52 + 43 = 95
+52 + 44 = 96
+52 + 45 = 97
+52 + 46 = 98
+52 + 47 = 99
+52 + 48 = 100
+52 + 49 = 101
+52 + 50 = 102
+52 + 51 = 103
+52 + 52 = 104
+52 + 53 = 105
+52 + 54 = 106
+52 + 55 = 107
+52 + 56 = 108
+52 + 57 = 109
+52 + 58 = 110
+52 + 59 = 111
+52 + 60 = 112
+52 + 61 = 113
+52 + 62 = 114
+52 + 63 = 115
+53 + 0 = 53
+53 + 1 = 54
+53 + 2 = 55
+53 + 3 = 56
+53 + 4 = 57
+53 + 5 = 58
+53 + 6 = 59
+53 + 7 = 60
+53 + 8 = 61
+53 + 9 = 62
+53 + 10 = 63
+53 + 11 = 64
+53 + 12 = 65
+53 + 13 = 66
+53 + 14 = 67
+53 + 15 = 68
+53 + 16 = 69
+53 + 17 = 70
+53 + 18 = 71
+53 + 19 = 72
+53 + 20 = 73
+53 + 21 = 74
+53 + 22 = 75
+53 + 23 = 76
+53 + 24 = 77
+53 + 25 = 78
+53 + 26 = 79
+53 + 27 = 80
+53 + 28 = 81
+53 + 29 = 82
+53 + 30 = 83
+53 + 31 = 84
+53 + 32 = 85
+53 + 33 = 86
+53 + 34 = 87
+53 + 35 = 88
+53 + 36 = 89
+53 + 37 = 90
+53 + 38 = 91
+53 + 39 = 92
+53 + 40 = 93
+53 + 41 = 94
+53 + 42 = 95
+53 + 43 = 96
+53 + 44 = 97
+53 + 45 = 98
+53 + 46 = 99
+53 + 47 = 100
+53 + 48 = 101
+53 + 49 = 102
+53 + 50 = 103
+53 + 51 = 104
+53 + 52 = 105
+53 + 53 = 106
+53 + 54 = 107
+53 + 55 = 108
+53 + 56 = 109
+53 + 57 = 110
+53 + 58 = 111
+53 + 59 = 112
+53 + 60 = 113
+53 + 61 = 114
+53 + 62 = 115
+53 + 63 = 116
+54 + 0 = 54
+54 + 1 = 55
+54 + 2 = 56
+54 + 3 = 57
+54 + 4 = 58
+54 + 5 = 59
+54 + 6 = 60
+54 + 7 = 61
+54 + 8 = 62
+54 + 9 = 63
+54 + 10 = 64
+54 + 11 = 65
+54 + 12 = 66
+54 + 13 = 67
+54 + 14 = 68
+54 + 15 = 69
+54 + 16 = 70
+54 + 17 = 71
+54 + 18 = 72
+54 + 19 = 73
+54 + 20 = 74
+54 + 21 = 75
+54 + 22 = 76
+54 + 23 = 77
+54 + 24 = 78
+54 + 25 = 79
+54 + 26 = 80
+54 + 27 = 81
+54 + 28 = 82
+54 + 29 = 83
+54 + 30 = 84
+54 + 31 = 85
+54 + 32 = 86
+54 + 33 = 87
+54 + 34 = 88
+54 + 35 = 89
+54 + 36 = 90
+54 + 37 = 91
+54 + 38 = 92
+54 + 39 = 93
+54 + 40 = 94
+54 + 41 = 95
+54 + 42 = 96
+54 + 43 = 97
+54 + 44 = 98
+54 + 45 = 99
+54 + 46 = 100
+54 + 47 = 101
+54 + 48 = 102
+54 + 49 = 103
+54 + 50 = 104
+54 + 51 = 105
+54 + 52 = 106
+54 + 53 = 107
+54 + 54 = 108
+54 + 55 = 109
+54 + 56 = 110
+54 + 57 = 111
+54 + 58 = 112
+54 + 59 = 113
+54 + 60 = 114
+54 + 61 = 115
+54 + 62 = 116
+54 + 63 = 117
+55 + 0 = 55
+55 + 1 = 56
+55 + 2 = 57
+55 + 3 = 58
+55 + 4 = 59
+55 + 5 = 60
+55 + 6 = 61
+55 + 7 = 62
+55 + 8 = 63
+55 + 9 = 64
+55 + 10 = 65
+55 + 11 = 66
+55 + 12 = 67
+55 + 13 = 68
+55 + 14 = 69
+55 + 15 = 70
+55 + 16 = 71
+55 + 17 = 72
+55 + 18 = 73
+55 + 19 = 74
+55 + 20 = 75
+55 + 21 = 76
+55 + 22 = 77
+55 + 23 = 78
+55 + 24 = 79
+55 + 25 = 80
+55 + 26 = 81
+55 + 27 = 82
+55 + 28 = 83
+55 + 29 = 84
+55 + 30 = 85
+55 + 31 = 86
+55 + 32 = 87
+55 + 33 = 88
+55 + 34 = 89
+55 + 35 = 90
+55 + 36 = 91
+55 + 37 = 92
+55 + 38 = 93
+55 + 39 = 94
+55 + 40 = 95
+55 + 41 = 96
+55 + 42 = 97
+55 + 43 = 98
+55 + 44 = 99
+55 + 45 = 100
+55 + 46 = 101
+55 + 47 = 102
+55 + 48 = 103
+55 + 49 = 104
+55 + 50 = 105
+55 + 51 = 106
+55 + 52 = 107
+55 + 53 = 108
+55 + 54 = 109
+55 + 55 = 110
+55 + 56 = 111
+55 + 57 = 112
+55 + 58 = 113
+55 + 59 = 114
+55 + 60 = 115
+55 + 61 = 116
+55 + 62 = 117
+55 + 63 = 118
+56 + 0 = 56
+56 + 1 = 57
+56 + 2 = 58
+56 + 3 = 59
+56 + 4 = 60
+56 + 5 = 61
+56 + 6 = 62
+56 + 7 = 63
+56 + 8 = 64
+56 + 9 = 65
+56 + 10 = 66
+56 + 11 = 67
+56 + 12 = 68
+56 + 13 = 69
+56 + 14 = 70
+56 + 15 = 71
+56 + 16 = 72
+56 + 17 = 73
+56 + 18 = 74
+56 + 19 = 75
+56 + 20 = 76
+56 + 21 = 77
+56 + 22 = 78
+56 + 23 = 79
+56 + 24 = 80
+56 + 25 = 81
+56 + 26 = 82
+56 + 27 = 83
+56 + 28 = 84
+56 + 29 = 85
+56 + 30 = 86
+56 + 31 = 87
+56 + 32 = 88
+56 + 33 = 89
+56 + 34 = 90
+56 + 35 = 91
+56 + 36 = 92
+56 + 37 = 93
+56 + 38 = 94
+56 + 39 = 95
+56 + 40 = 96
+56 + 41 = 97
+56 + 42 = 98
+56 + 43 = 99
+56 + 44 = 100
+56 + 45 = 101
+56 + 46 = 102
+56 + 47 = 103
+56 + 48 = 104
+56 + 49 = 105
+56 + 50 = 106
+56 + 51 = 107
+56 + 52 = 108
+56 + 53 = 109
+56 + 54 = 110
+56 + 55 = 111
+56 + 56 = 112
+56 + 57 = 113
+56 + 58 = 114
+56 + 59 = 115
+56 + 60 = 116
+56 + 61 = 117
+56 + 62 = 118
+56 + 63 = 119
+57 + 0 = 57
+57 + 1 = 58
+57 + 2 = 59
+57 + 3 = 60
+57 + 4 = 61
+57 + 5 = 62
+57 + 6 = 63
+57 + 7 = 64
+57 + 8 = 65
+57 + 9 = 66
+57 + 10 = 67
+57 + 11 = 68
+57 + 12 = 69
+57 + 13 = 70
+57 + 14 = 71
+57 + 15 = 72
+57 + 16 = 73
+57 + 17 = 74
+57 + 18 = 75
+57 + 19 = 76
+57 + 20 = 77
+57 + 21 = 78
+57 + 22 = 79
+57 + 23 = 80
+57 + 24 = 81
+57 + 25 = 82
+57 + 26 = 83
+57 + 27 = 84
+57 + 28 = 85
+57 + 29 = 86
+57 + 30 = 87
+57 + 31 = 88
+57 + 32 = 89
+57 + 33 = 90
+57 + 34 = 91
+57 + 35 = 92
+57 + 36 = 93
+57 + 37 = 94
+57 + 38 = 95
+57 + 39 = 96
+57 + 40 = 97
+57 + 41 = 98
+57 + 42 = 99
+57 + 43 = 100
+57 + 44 = 101
+57 + 45 = 102
+57 + 46 = 103
+57 + 47 = 104
+57 + 48 = 105
+57 + 49 = 106
+57 + 50 = 107
+57 + 51 = 108
+57 + 52 = 109
+57 + 53 = 110
+57 + 54 = 111
+57 + 55 = 112
+57 + 56 = 113
+57 + 57 = 114
+57 + 58 = 115
+57 + 59 = 116
+57 + 60 = 117
+57 + 61 = 118
+57 + 62 = 119
+57 + 63 = 120
+58 + 0 = 58
+58 + 1 = 59
+58 + 2 = 60
+58 + 3 = 61
+58 + 4 = 62
+58 + 5 = 63
+58 + 6 = 64
+58 + 7 = 65
+58 + 8 = 66
+58 + 9 = 67
+58 + 10 = 68
+58 + 11 = 69
+58 + 12 = 70
+58 + 13 = 71
+58 + 14 = 72
+58 + 15 = 73
+58 + 16 = 74
+58 + 17 = 75
+58 + 18 = 76
+58 + 19 = 77
+58 + 20 = 78
+58 + 21 = 79
+58 + 22 = 80
+58 + 23 = 81
+58 + 24 = 82
+58 + 25 = 83
+58 + 26 = 84
+58 + 27 = 85
+58 + 28 = 86
+58 + 29 = 87
+58 + 30 = 88
+58 + 31 = 89
+58 + 32 = 90
+58 + 33 = 91
+58 + 34 = 92
+58 + 35 = 93
+58 + 36 = 94
+58 + 37 = 95
+58 + 38 = 96
+58 + 39 = 97
+58 + 40 = 98
+58 + 41 = 99
+58 + 42 = 100
+58 + 43 = 101
+58 + 44 = 102
+58 + 45 = 103
+58 + 46 = 104
+58 + 47 = 105
+58 + 48 = 106
+58 + 49 = 107
+58 + 50 = 108
+58 + 51 = 109
+58 + 52 = 110
+58 + 53 = 111
+58 + 54 = 112
+58 + 55 = 113
+58 + 56 = 114
+58 + 57 = 115
+58 + 58 = 116
+58 + 59 = 117
+58 + 60 = 118
+58 + 61 = 119
+58 + 62 = 120
+58 + 63 = 121
+59 + 0 = 59
+59 + 1 = 60
+59 + 2 = 61
+59 + 3 = 62
+59 + 4 = 63
+59 + 5 = 64
+59 + 6 = 65
+59 + 7 = 66
+59 + 8 = 67
+59 + 9 = 68
+59 + 10 = 69
+59 + 11 = 70
+59 + 12 = 71
+59 + 13 = 72
+59 + 14 = 73
+59 + 15 = 74
+59 + 16 = 75
+59 + 17 = 76
+59 + 18 = 77
+59 + 19 = 78
+59 + 20 = 79
+59 + 21 = 80
+59 + 22 = 81
+59 + 23 = 82
+59 + 24 = 83
+59 + 25 = 84
+59 + 26 = 85
+59 + 27 = 86
+59 + 28 = 87
+59 + 29 = 88
+59 + 30 = 89
+59 + 31 = 90
+59 + 32 = 91
+59 + 33 = 92
+59 + 34 = 93
+59 + 35 = 94
+59 + 36 = 95
+59 + 37 = 96
+59 + 38 = 97
+59 + 39 = 98
+59 + 40 = 99
+59 + 41 = 100
+59 + 42 = 101
+59 + 43 = 102
+59 + 44 = 103
+59 + 45 = 104
+59 + 46 = 105
+59 + 47 = 106
+59 + 48 = 107
+59 + 49 = 108
+59 + 50 = 109
+59 + 51 = 110
+59 + 52 = 111
+59 + 53 = 112
+59 + 54 = 113
+59 + 55 = 114
+59 + 56 = 115
+59 + 57 = 116
+59 + 58 = 117
+59 + 59 = 118
+59 + 60 = 119
+59 + 61 = 120
+59 + 62 = 121
+59 + 63 = 122
+60 + 0 = 60
+60 + 1 = 61
+60 + 2 = 62
+60 + 3 = 63
+60 + 4 = 64
+60 + 5 = 65
+60 + 6 = 66
+60 + 7 = 67
+60 + 8 = 68
+60 + 9 = 69
+60 + 10 = 70
+60 + 11 = 71
+60 + 12 = 72
+60 + 13 = 73
+60 + 14 = 74
+60 + 15 = 75
+60 + 16 = 76
+60 + 17 = 77
+60 + 18 = 78
+60 + 19 = 79
+60 + 20 = 80
+60 + 21 = 81
+60 + 22 = 82
+60 + 23 = 83
+60 + 24 = 84
+60 + 25 = 85
+60 + 26 = 86
+60 + 27 = 87
+60 + 28 = 88
+60 + 29 = 89
+60 + 30 = 90
+60 + 31 = 91
+60 + 32 = 92
+60 + 33 = 93
+60 + 34 = 94
+60 + 35 = 95
+60 + 36 = 96
+60 + 37 = 97
+60 + 38 = 98
+60 + 39 = 99
+60 + 40 = 100
+60 + 41 = 101
+60 + 42 = 102
+60 + 43 = 103
+60 + 44 = 104
+60 + 45 = 105
+60 + 46 = 106
+60 + 47 = 107
+60 + 48 = 108
+60 + 49 = 109
+60 + 50 = 110
+60 + 51 = 111
+60 + 52 = 112
+60 + 53 = 113
+60 + 54 = 114
+60 + 55 = 115
+60 + 56 = 116
+60 + 57 = 117
+60 + 58 = 118
+60 + 59 = 119
+60 + 60 = 120
+60 + 61 = 121
+60 + 62 = 122
+60 + 63 = 123
+61 + 0 = 61
+61 + 1 = 62
+61 + 2 = 63
+61 + 3 = 64
+61 + 4 = 65
+61 + 5 = 66
+61 + 6 = 67
+61 + 7 = 68
+61 + 8 = 69
+61 + 9 = 70
+61 + 10 = 71
+61 + 11 = 72
+61 + 12 = 73
+61 + 13 = 74
+61 + 14 = 75
+61 + 15 = 76
+61 + 16 = 77
+61 + 17 = 78
+61 + 18 = 79
+61 + 19 = 80
+61 + 20 = 81
+61 + 21 = 82
+61 + 22 = 83
+61 + 23 = 84
+61 + 24 = 85
+61 + 25 = 86
+61 + 26 = 87
+61 + 27 = 88
+61 + 28 = 89
+61 + 29 = 90
+61 + 30 = 91
+61 + 31 = 92
+61 + 32 = 93
+61 + 33 = 94
+61 + 34 = 95
+61 + 35 = 96
+61 + 36 = 97
+61 + 37 = 98
+61 + 38 = 99
+61 + 39 = 100
+61 + 40 = 101
+61 + 41 = 102
+61 + 42 = 103
+61 + 43 = 104
+61 + 44 = 105
+61 + 45 = 106
+61 + 46 = 107
+61 + 47 = 108
+61 + 48 = 109
+61 + 49 = 110
+61 + 50 = 111
+61 + 51 = 112
+61 + 52 = 113
+61 + 53 = 114
+61 + 54 = 115
+61 + 55 = 116
+61 + 56 = 117
+61 + 57 = 118
+61 + 58 = 119
+61 + 59 = 120
+61 + 60 = 121
+61 + 61 = 122
+61 + 62 = 123
+61 + 63 = 124
+62 + 0 = 62
+62 + 1 = 63
+62 + 2 = 64
+62 + 3 = 65
+62 + 4 = 66
+62 + 5 = 67
+62 + 6 = 68
+62 + 7 = 69
+62 + 8 = 70
+62 + 9 = 71
+62 + 10 = 72
+62 + 11 = 73
+62 + 12 = 74
+62 + 13 = 75
+62 + 14 = 76
+62 + 15 = 77
+62 + 16 = 78
+62 + 17 = 79
+62 + 18 = 80
+62 + 19 = 81
+62 + 20 = 82
+62 + 21 = 83
+62 + 22 = 84
+62 + 23 = 85
+62 + 24 = 86
+62 + 25 = 87
+62 + 26 = 88
+62 + 27 = 89
+62 + 28 = 90
+62 + 29 = 91
+62 + 30 = 92
+62 + 31 = 93
+62 + 32 = 94
+62 + 33 = 95
+62 + 34 = 96
+62 + 35 = 97
+62 + 36 = 98
+62 + 37 = 99
+62 + 38 = 100
+62 + 39 = 101
+62 + 40 = 102
+62 + 41 = 103
+62 + 42 = 104
+62 + 43 = 105
+62 + 44 = 106
+62 + 45 = 107
+62 + 46 = 108
+62 + 47 = 109
+62 + 48 = 110
+62 + 49 = 111
+62 + 50 = 112
+62 + 51 = 113
+62 + 52 = 114
+62 + 53 = 115
+62 + 54 = 116
+62 + 55 = 117
+62 + 56 = 118
+62 + 57 = 119
+62 + 58 = 120
+62 + 59 = 121
+62 + 60 = 122
+62 + 61 = 123
+62 + 62 = 124
+62 + 63 = 125
+63 + 0 = 63
+63 + 1 = 64
+63 + 2 = 65
+63 + 3 = 66
+63 + 4 = 67
+63 + 5 = 68
+63 + 6 = 69
+63 + 7 = 70
+63 + 8 = 71
+63 + 9 = 72
+63 + 10 = 73
+63 + 11 = 74
+63 + 12 = 75
+63 + 13 = 76
+63 + 14 = 77
+63 + 15 = 78
+63 + 16 = 79
+63 + 17 = 80
+63 + 18 = 81
+63 + 19 = 82
+63 + 20 = 83
+63 + 21 = 84
+63 + 22 = 85
+63 + 23 = 86
+63 + 24 = 87
+63 + 25 = 88
+63 + 26 = 89
+63 + 27 = 90
+63 + 28 = 91
+63 + 29 = 92
+63 + 30 = 93
+63 + 31 = 94
+63 + 32 = 95
+63 + 33 = 96
+63 + 34 = 97
+63 + 35 = 98
+63 + 36 = 99
+63 + 37 = 100
+63 + 38 = 101
+63 + 39 = 102
+63 + 40 = 103
+63 + 41 = 104
+63 + 42 = 105
+63 + 43 = 106
+63 + 44 = 107
+63 + 45 = 108
+63 + 46 = 109
+63 + 47 = 110
+63 + 48 = 111
+63 + 49 = 112
+63 + 50 = 113
+63 + 51 = 114
+63 + 52 = 115
+63 + 53 = 116
+63 + 54 = 117
+63 + 55 = 118
+63 + 56 = 119
+63 + 57 = 120
+63 + 58 = 121
+63 + 59 = 122
+63 + 60 = 123
+63 + 61 = 124
+63 + 62 = 125
+63 + 63 = 126
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/main.cpp b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/main.cpp
new file mode 100644
index 000000000..771aebbfa
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/main.cpp
@@ -0,0 +1,71 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /***************************************/
+ /* Main Filename: main.cc */
+ /***************************************/
+ /* */
+ /* int = int + int */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /***************************************/
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Signal Instantiation
+ sc_signal<int> in1 ("in1");
+ sc_signal<int> in2 ("in2");
+ sc_signal<int> result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/stimgen.cpp
new file mode 100644
index 000000000..ac55101ee
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/stimgen.cpp
@@ -0,0 +1,68 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read() << " + " << in2.read()
+ << " = " << result.read() << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/stimgen.h
new file mode 100644
index 000000000..7e889295c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/datawidth_int/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "systemc.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const sc_signal<int>& result;
+ // Outputs
+ sc_signal<int>& in1;
+ sc_signal<int>& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const sc_signal<int>& RESULT,
+ sc_signal<int>& IN1,
+ sc_signal<int>& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/common.h b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/common.h
new file mode 100644
index 000000000..32dc0a213
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/common.h
@@ -0,0 +1,46 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<7> bool_vector;
+typedef sc_signal<bool_vector> sc_signal_bool_vector;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/datawidth.cpp
new file mode 100644
index 000000000..d0534c61b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/datawidth.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ int tmp_a;
+ int tmp_b;
+ bool_vector tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ tmp_a = in1.read();
+ tmp_b = in2.read();
+ tmp_result = tmp_a + tmp_b;
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/datawidth.h
new file mode 100644
index 000000000..a30a68bd1
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/datawidth.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const sc_signal<int>& in1;
+ const sc_signal<int>& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ sc_signal_bool_vector& result;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const sc_signal<int>& IN1,
+ const sc_signal<int>& IN2,
+ const sc_signal<bool>& READY,
+ sc_signal_bool_vector& RESULT )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/golden/int_to_bits.log b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/golden/int_to_bits.log
new file mode 100644
index 000000000..b168b0482
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/golden/int_to_bits.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0
+0 + 1 = 1
+0 + 2 = 2
+0 + 3 = 3
+0 + 4 = 4
+0 + 5 = 5
+0 + 6 = 6
+0 + 7 = 7
+0 + 8 = 8
+0 + 9 = 9
+0 + 10 = 10
+0 + 11 = 11
+0 + 12 = 12
+0 + 13 = 13
+0 + 14 = 14
+0 + 15 = 15
+0 + 16 = 16
+0 + 17 = 17
+0 + 18 = 18
+0 + 19 = 19
+0 + 20 = 20
+0 + 21 = 21
+0 + 22 = 22
+0 + 23 = 23
+0 + 24 = 24
+0 + 25 = 25
+0 + 26 = 26
+0 + 27 = 27
+0 + 28 = 28
+0 + 29 = 29
+0 + 30 = 30
+0 + 31 = 31
+0 + 32 = 32
+0 + 33 = 33
+0 + 34 = 34
+0 + 35 = 35
+0 + 36 = 36
+0 + 37 = 37
+0 + 38 = 38
+0 + 39 = 39
+0 + 40 = 40
+0 + 41 = 41
+0 + 42 = 42
+0 + 43 = 43
+0 + 44 = 44
+0 + 45 = 45
+0 + 46 = 46
+0 + 47 = 47
+0 + 48 = 48
+0 + 49 = 49
+0 + 50 = 50
+0 + 51 = 51
+0 + 52 = 52
+0 + 53 = 53
+0 + 54 = 54
+0 + 55 = 55
+0 + 56 = 56
+0 + 57 = 57
+0 + 58 = 58
+0 + 59 = 59
+0 + 60 = 60
+0 + 61 = 61
+0 + 62 = 62
+0 + 63 = 63
+1 + 0 = 1
+1 + 1 = 2
+1 + 2 = 3
+1 + 3 = 4
+1 + 4 = 5
+1 + 5 = 6
+1 + 6 = 7
+1 + 7 = 8
+1 + 8 = 9
+1 + 9 = 10
+1 + 10 = 11
+1 + 11 = 12
+1 + 12 = 13
+1 + 13 = 14
+1 + 14 = 15
+1 + 15 = 16
+1 + 16 = 17
+1 + 17 = 18
+1 + 18 = 19
+1 + 19 = 20
+1 + 20 = 21
+1 + 21 = 22
+1 + 22 = 23
+1 + 23 = 24
+1 + 24 = 25
+1 + 25 = 26
+1 + 26 = 27
+1 + 27 = 28
+1 + 28 = 29
+1 + 29 = 30
+1 + 30 = 31
+1 + 31 = 32
+1 + 32 = 33
+1 + 33 = 34
+1 + 34 = 35
+1 + 35 = 36
+1 + 36 = 37
+1 + 37 = 38
+1 + 38 = 39
+1 + 39 = 40
+1 + 40 = 41
+1 + 41 = 42
+1 + 42 = 43
+1 + 43 = 44
+1 + 44 = 45
+1 + 45 = 46
+1 + 46 = 47
+1 + 47 = 48
+1 + 48 = 49
+1 + 49 = 50
+1 + 50 = 51
+1 + 51 = 52
+1 + 52 = 53
+1 + 53 = 54
+1 + 54 = 55
+1 + 55 = 56
+1 + 56 = 57
+1 + 57 = 58
+1 + 58 = 59
+1 + 59 = 60
+1 + 60 = 61
+1 + 61 = 62
+1 + 62 = 63
+1 + 63 = 64
+2 + 0 = 2
+2 + 1 = 3
+2 + 2 = 4
+2 + 3 = 5
+2 + 4 = 6
+2 + 5 = 7
+2 + 6 = 8
+2 + 7 = 9
+2 + 8 = 10
+2 + 9 = 11
+2 + 10 = 12
+2 + 11 = 13
+2 + 12 = 14
+2 + 13 = 15
+2 + 14 = 16
+2 + 15 = 17
+2 + 16 = 18
+2 + 17 = 19
+2 + 18 = 20
+2 + 19 = 21
+2 + 20 = 22
+2 + 21 = 23
+2 + 22 = 24
+2 + 23 = 25
+2 + 24 = 26
+2 + 25 = 27
+2 + 26 = 28
+2 + 27 = 29
+2 + 28 = 30
+2 + 29 = 31
+2 + 30 = 32
+2 + 31 = 33
+2 + 32 = 34
+2 + 33 = 35
+2 + 34 = 36
+2 + 35 = 37
+2 + 36 = 38
+2 + 37 = 39
+2 + 38 = 40
+2 + 39 = 41
+2 + 40 = 42
+2 + 41 = 43
+2 + 42 = 44
+2 + 43 = 45
+2 + 44 = 46
+2 + 45 = 47
+2 + 46 = 48
+2 + 47 = 49
+2 + 48 = 50
+2 + 49 = 51
+2 + 50 = 52
+2 + 51 = 53
+2 + 52 = 54
+2 + 53 = 55
+2 + 54 = 56
+2 + 55 = 57
+2 + 56 = 58
+2 + 57 = 59
+2 + 58 = 60
+2 + 59 = 61
+2 + 60 = 62
+2 + 61 = 63
+2 + 62 = 64
+2 + 63 = 65
+3 + 0 = 3
+3 + 1 = 4
+3 + 2 = 5
+3 + 3 = 6
+3 + 4 = 7
+3 + 5 = 8
+3 + 6 = 9
+3 + 7 = 10
+3 + 8 = 11
+3 + 9 = 12
+3 + 10 = 13
+3 + 11 = 14
+3 + 12 = 15
+3 + 13 = 16
+3 + 14 = 17
+3 + 15 = 18
+3 + 16 = 19
+3 + 17 = 20
+3 + 18 = 21
+3 + 19 = 22
+3 + 20 = 23
+3 + 21 = 24
+3 + 22 = 25
+3 + 23 = 26
+3 + 24 = 27
+3 + 25 = 28
+3 + 26 = 29
+3 + 27 = 30
+3 + 28 = 31
+3 + 29 = 32
+3 + 30 = 33
+3 + 31 = 34
+3 + 32 = 35
+3 + 33 = 36
+3 + 34 = 37
+3 + 35 = 38
+3 + 36 = 39
+3 + 37 = 40
+3 + 38 = 41
+3 + 39 = 42
+3 + 40 = 43
+3 + 41 = 44
+3 + 42 = 45
+3 + 43 = 46
+3 + 44 = 47
+3 + 45 = 48
+3 + 46 = 49
+3 + 47 = 50
+3 + 48 = 51
+3 + 49 = 52
+3 + 50 = 53
+3 + 51 = 54
+3 + 52 = 55
+3 + 53 = 56
+3 + 54 = 57
+3 + 55 = 58
+3 + 56 = 59
+3 + 57 = 60
+3 + 58 = 61
+3 + 59 = 62
+3 + 60 = 63
+3 + 61 = 64
+3 + 62 = 65
+3 + 63 = 66
+4 + 0 = 4
+4 + 1 = 5
+4 + 2 = 6
+4 + 3 = 7
+4 + 4 = 8
+4 + 5 = 9
+4 + 6 = 10
+4 + 7 = 11
+4 + 8 = 12
+4 + 9 = 13
+4 + 10 = 14
+4 + 11 = 15
+4 + 12 = 16
+4 + 13 = 17
+4 + 14 = 18
+4 + 15 = 19
+4 + 16 = 20
+4 + 17 = 21
+4 + 18 = 22
+4 + 19 = 23
+4 + 20 = 24
+4 + 21 = 25
+4 + 22 = 26
+4 + 23 = 27
+4 + 24 = 28
+4 + 25 = 29
+4 + 26 = 30
+4 + 27 = 31
+4 + 28 = 32
+4 + 29 = 33
+4 + 30 = 34
+4 + 31 = 35
+4 + 32 = 36
+4 + 33 = 37
+4 + 34 = 38
+4 + 35 = 39
+4 + 36 = 40
+4 + 37 = 41
+4 + 38 = 42
+4 + 39 = 43
+4 + 40 = 44
+4 + 41 = 45
+4 + 42 = 46
+4 + 43 = 47
+4 + 44 = 48
+4 + 45 = 49
+4 + 46 = 50
+4 + 47 = 51
+4 + 48 = 52
+4 + 49 = 53
+4 + 50 = 54
+4 + 51 = 55
+4 + 52 = 56
+4 + 53 = 57
+4 + 54 = 58
+4 + 55 = 59
+4 + 56 = 60
+4 + 57 = 61
+4 + 58 = 62
+4 + 59 = 63
+4 + 60 = 64
+4 + 61 = 65
+4 + 62 = 66
+4 + 63 = 67
+5 + 0 = 5
+5 + 1 = 6
+5 + 2 = 7
+5 + 3 = 8
+5 + 4 = 9
+5 + 5 = 10
+5 + 6 = 11
+5 + 7 = 12
+5 + 8 = 13
+5 + 9 = 14
+5 + 10 = 15
+5 + 11 = 16
+5 + 12 = 17
+5 + 13 = 18
+5 + 14 = 19
+5 + 15 = 20
+5 + 16 = 21
+5 + 17 = 22
+5 + 18 = 23
+5 + 19 = 24
+5 + 20 = 25
+5 + 21 = 26
+5 + 22 = 27
+5 + 23 = 28
+5 + 24 = 29
+5 + 25 = 30
+5 + 26 = 31
+5 + 27 = 32
+5 + 28 = 33
+5 + 29 = 34
+5 + 30 = 35
+5 + 31 = 36
+5 + 32 = 37
+5 + 33 = 38
+5 + 34 = 39
+5 + 35 = 40
+5 + 36 = 41
+5 + 37 = 42
+5 + 38 = 43
+5 + 39 = 44
+5 + 40 = 45
+5 + 41 = 46
+5 + 42 = 47
+5 + 43 = 48
+5 + 44 = 49
+5 + 45 = 50
+5 + 46 = 51
+5 + 47 = 52
+5 + 48 = 53
+5 + 49 = 54
+5 + 50 = 55
+5 + 51 = 56
+5 + 52 = 57
+5 + 53 = 58
+5 + 54 = 59
+5 + 55 = 60
+5 + 56 = 61
+5 + 57 = 62
+5 + 58 = 63
+5 + 59 = 64
+5 + 60 = 65
+5 + 61 = 66
+5 + 62 = 67
+5 + 63 = 68
+6 + 0 = 6
+6 + 1 = 7
+6 + 2 = 8
+6 + 3 = 9
+6 + 4 = 10
+6 + 5 = 11
+6 + 6 = 12
+6 + 7 = 13
+6 + 8 = 14
+6 + 9 = 15
+6 + 10 = 16
+6 + 11 = 17
+6 + 12 = 18
+6 + 13 = 19
+6 + 14 = 20
+6 + 15 = 21
+6 + 16 = 22
+6 + 17 = 23
+6 + 18 = 24
+6 + 19 = 25
+6 + 20 = 26
+6 + 21 = 27
+6 + 22 = 28
+6 + 23 = 29
+6 + 24 = 30
+6 + 25 = 31
+6 + 26 = 32
+6 + 27 = 33
+6 + 28 = 34
+6 + 29 = 35
+6 + 30 = 36
+6 + 31 = 37
+6 + 32 = 38
+6 + 33 = 39
+6 + 34 = 40
+6 + 35 = 41
+6 + 36 = 42
+6 + 37 = 43
+6 + 38 = 44
+6 + 39 = 45
+6 + 40 = 46
+6 + 41 = 47
+6 + 42 = 48
+6 + 43 = 49
+6 + 44 = 50
+6 + 45 = 51
+6 + 46 = 52
+6 + 47 = 53
+6 + 48 = 54
+6 + 49 = 55
+6 + 50 = 56
+6 + 51 = 57
+6 + 52 = 58
+6 + 53 = 59
+6 + 54 = 60
+6 + 55 = 61
+6 + 56 = 62
+6 + 57 = 63
+6 + 58 = 64
+6 + 59 = 65
+6 + 60 = 66
+6 + 61 = 67
+6 + 62 = 68
+6 + 63 = 69
+7 + 0 = 7
+7 + 1 = 8
+7 + 2 = 9
+7 + 3 = 10
+7 + 4 = 11
+7 + 5 = 12
+7 + 6 = 13
+7 + 7 = 14
+7 + 8 = 15
+7 + 9 = 16
+7 + 10 = 17
+7 + 11 = 18
+7 + 12 = 19
+7 + 13 = 20
+7 + 14 = 21
+7 + 15 = 22
+7 + 16 = 23
+7 + 17 = 24
+7 + 18 = 25
+7 + 19 = 26
+7 + 20 = 27
+7 + 21 = 28
+7 + 22 = 29
+7 + 23 = 30
+7 + 24 = 31
+7 + 25 = 32
+7 + 26 = 33
+7 + 27 = 34
+7 + 28 = 35
+7 + 29 = 36
+7 + 30 = 37
+7 + 31 = 38
+7 + 32 = 39
+7 + 33 = 40
+7 + 34 = 41
+7 + 35 = 42
+7 + 36 = 43
+7 + 37 = 44
+7 + 38 = 45
+7 + 39 = 46
+7 + 40 = 47
+7 + 41 = 48
+7 + 42 = 49
+7 + 43 = 50
+7 + 44 = 51
+7 + 45 = 52
+7 + 46 = 53
+7 + 47 = 54
+7 + 48 = 55
+7 + 49 = 56
+7 + 50 = 57
+7 + 51 = 58
+7 + 52 = 59
+7 + 53 = 60
+7 + 54 = 61
+7 + 55 = 62
+7 + 56 = 63
+7 + 57 = 64
+7 + 58 = 65
+7 + 59 = 66
+7 + 60 = 67
+7 + 61 = 68
+7 + 62 = 69
+7 + 63 = 70
+8 + 0 = 8
+8 + 1 = 9
+8 + 2 = 10
+8 + 3 = 11
+8 + 4 = 12
+8 + 5 = 13
+8 + 6 = 14
+8 + 7 = 15
+8 + 8 = 16
+8 + 9 = 17
+8 + 10 = 18
+8 + 11 = 19
+8 + 12 = 20
+8 + 13 = 21
+8 + 14 = 22
+8 + 15 = 23
+8 + 16 = 24
+8 + 17 = 25
+8 + 18 = 26
+8 + 19 = 27
+8 + 20 = 28
+8 + 21 = 29
+8 + 22 = 30
+8 + 23 = 31
+8 + 24 = 32
+8 + 25 = 33
+8 + 26 = 34
+8 + 27 = 35
+8 + 28 = 36
+8 + 29 = 37
+8 + 30 = 38
+8 + 31 = 39
+8 + 32 = 40
+8 + 33 = 41
+8 + 34 = 42
+8 + 35 = 43
+8 + 36 = 44
+8 + 37 = 45
+8 + 38 = 46
+8 + 39 = 47
+8 + 40 = 48
+8 + 41 = 49
+8 + 42 = 50
+8 + 43 = 51
+8 + 44 = 52
+8 + 45 = 53
+8 + 46 = 54
+8 + 47 = 55
+8 + 48 = 56
+8 + 49 = 57
+8 + 50 = 58
+8 + 51 = 59
+8 + 52 = 60
+8 + 53 = 61
+8 + 54 = 62
+8 + 55 = 63
+8 + 56 = 64
+8 + 57 = 65
+8 + 58 = 66
+8 + 59 = 67
+8 + 60 = 68
+8 + 61 = 69
+8 + 62 = 70
+8 + 63 = 71
+9 + 0 = 9
+9 + 1 = 10
+9 + 2 = 11
+9 + 3 = 12
+9 + 4 = 13
+9 + 5 = 14
+9 + 6 = 15
+9 + 7 = 16
+9 + 8 = 17
+9 + 9 = 18
+9 + 10 = 19
+9 + 11 = 20
+9 + 12 = 21
+9 + 13 = 22
+9 + 14 = 23
+9 + 15 = 24
+9 + 16 = 25
+9 + 17 = 26
+9 + 18 = 27
+9 + 19 = 28
+9 + 20 = 29
+9 + 21 = 30
+9 + 22 = 31
+9 + 23 = 32
+9 + 24 = 33
+9 + 25 = 34
+9 + 26 = 35
+9 + 27 = 36
+9 + 28 = 37
+9 + 29 = 38
+9 + 30 = 39
+9 + 31 = 40
+9 + 32 = 41
+9 + 33 = 42
+9 + 34 = 43
+9 + 35 = 44
+9 + 36 = 45
+9 + 37 = 46
+9 + 38 = 47
+9 + 39 = 48
+9 + 40 = 49
+9 + 41 = 50
+9 + 42 = 51
+9 + 43 = 52
+9 + 44 = 53
+9 + 45 = 54
+9 + 46 = 55
+9 + 47 = 56
+9 + 48 = 57
+9 + 49 = 58
+9 + 50 = 59
+9 + 51 = 60
+9 + 52 = 61
+9 + 53 = 62
+9 + 54 = 63
+9 + 55 = 64
+9 + 56 = 65
+9 + 57 = 66
+9 + 58 = 67
+9 + 59 = 68
+9 + 60 = 69
+9 + 61 = 70
+9 + 62 = 71
+9 + 63 = 72
+10 + 0 = 10
+10 + 1 = 11
+10 + 2 = 12
+10 + 3 = 13
+10 + 4 = 14
+10 + 5 = 15
+10 + 6 = 16
+10 + 7 = 17
+10 + 8 = 18
+10 + 9 = 19
+10 + 10 = 20
+10 + 11 = 21
+10 + 12 = 22
+10 + 13 = 23
+10 + 14 = 24
+10 + 15 = 25
+10 + 16 = 26
+10 + 17 = 27
+10 + 18 = 28
+10 + 19 = 29
+10 + 20 = 30
+10 + 21 = 31
+10 + 22 = 32
+10 + 23 = 33
+10 + 24 = 34
+10 + 25 = 35
+10 + 26 = 36
+10 + 27 = 37
+10 + 28 = 38
+10 + 29 = 39
+10 + 30 = 40
+10 + 31 = 41
+10 + 32 = 42
+10 + 33 = 43
+10 + 34 = 44
+10 + 35 = 45
+10 + 36 = 46
+10 + 37 = 47
+10 + 38 = 48
+10 + 39 = 49
+10 + 40 = 50
+10 + 41 = 51
+10 + 42 = 52
+10 + 43 = 53
+10 + 44 = 54
+10 + 45 = 55
+10 + 46 = 56
+10 + 47 = 57
+10 + 48 = 58
+10 + 49 = 59
+10 + 50 = 60
+10 + 51 = 61
+10 + 52 = 62
+10 + 53 = 63
+10 + 54 = 64
+10 + 55 = 65
+10 + 56 = 66
+10 + 57 = 67
+10 + 58 = 68
+10 + 59 = 69
+10 + 60 = 70
+10 + 61 = 71
+10 + 62 = 72
+10 + 63 = 73
+11 + 0 = 11
+11 + 1 = 12
+11 + 2 = 13
+11 + 3 = 14
+11 + 4 = 15
+11 + 5 = 16
+11 + 6 = 17
+11 + 7 = 18
+11 + 8 = 19
+11 + 9 = 20
+11 + 10 = 21
+11 + 11 = 22
+11 + 12 = 23
+11 + 13 = 24
+11 + 14 = 25
+11 + 15 = 26
+11 + 16 = 27
+11 + 17 = 28
+11 + 18 = 29
+11 + 19 = 30
+11 + 20 = 31
+11 + 21 = 32
+11 + 22 = 33
+11 + 23 = 34
+11 + 24 = 35
+11 + 25 = 36
+11 + 26 = 37
+11 + 27 = 38
+11 + 28 = 39
+11 + 29 = 40
+11 + 30 = 41
+11 + 31 = 42
+11 + 32 = 43
+11 + 33 = 44
+11 + 34 = 45
+11 + 35 = 46
+11 + 36 = 47
+11 + 37 = 48
+11 + 38 = 49
+11 + 39 = 50
+11 + 40 = 51
+11 + 41 = 52
+11 + 42 = 53
+11 + 43 = 54
+11 + 44 = 55
+11 + 45 = 56
+11 + 46 = 57
+11 + 47 = 58
+11 + 48 = 59
+11 + 49 = 60
+11 + 50 = 61
+11 + 51 = 62
+11 + 52 = 63
+11 + 53 = 64
+11 + 54 = 65
+11 + 55 = 66
+11 + 56 = 67
+11 + 57 = 68
+11 + 58 = 69
+11 + 59 = 70
+11 + 60 = 71
+11 + 61 = 72
+11 + 62 = 73
+11 + 63 = 74
+12 + 0 = 12
+12 + 1 = 13
+12 + 2 = 14
+12 + 3 = 15
+12 + 4 = 16
+12 + 5 = 17
+12 + 6 = 18
+12 + 7 = 19
+12 + 8 = 20
+12 + 9 = 21
+12 + 10 = 22
+12 + 11 = 23
+12 + 12 = 24
+12 + 13 = 25
+12 + 14 = 26
+12 + 15 = 27
+12 + 16 = 28
+12 + 17 = 29
+12 + 18 = 30
+12 + 19 = 31
+12 + 20 = 32
+12 + 21 = 33
+12 + 22 = 34
+12 + 23 = 35
+12 + 24 = 36
+12 + 25 = 37
+12 + 26 = 38
+12 + 27 = 39
+12 + 28 = 40
+12 + 29 = 41
+12 + 30 = 42
+12 + 31 = 43
+12 + 32 = 44
+12 + 33 = 45
+12 + 34 = 46
+12 + 35 = 47
+12 + 36 = 48
+12 + 37 = 49
+12 + 38 = 50
+12 + 39 = 51
+12 + 40 = 52
+12 + 41 = 53
+12 + 42 = 54
+12 + 43 = 55
+12 + 44 = 56
+12 + 45 = 57
+12 + 46 = 58
+12 + 47 = 59
+12 + 48 = 60
+12 + 49 = 61
+12 + 50 = 62
+12 + 51 = 63
+12 + 52 = 64
+12 + 53 = 65
+12 + 54 = 66
+12 + 55 = 67
+12 + 56 = 68
+12 + 57 = 69
+12 + 58 = 70
+12 + 59 = 71
+12 + 60 = 72
+12 + 61 = 73
+12 + 62 = 74
+12 + 63 = 75
+13 + 0 = 13
+13 + 1 = 14
+13 + 2 = 15
+13 + 3 = 16
+13 + 4 = 17
+13 + 5 = 18
+13 + 6 = 19
+13 + 7 = 20
+13 + 8 = 21
+13 + 9 = 22
+13 + 10 = 23
+13 + 11 = 24
+13 + 12 = 25
+13 + 13 = 26
+13 + 14 = 27
+13 + 15 = 28
+13 + 16 = 29
+13 + 17 = 30
+13 + 18 = 31
+13 + 19 = 32
+13 + 20 = 33
+13 + 21 = 34
+13 + 22 = 35
+13 + 23 = 36
+13 + 24 = 37
+13 + 25 = 38
+13 + 26 = 39
+13 + 27 = 40
+13 + 28 = 41
+13 + 29 = 42
+13 + 30 = 43
+13 + 31 = 44
+13 + 32 = 45
+13 + 33 = 46
+13 + 34 = 47
+13 + 35 = 48
+13 + 36 = 49
+13 + 37 = 50
+13 + 38 = 51
+13 + 39 = 52
+13 + 40 = 53
+13 + 41 = 54
+13 + 42 = 55
+13 + 43 = 56
+13 + 44 = 57
+13 + 45 = 58
+13 + 46 = 59
+13 + 47 = 60
+13 + 48 = 61
+13 + 49 = 62
+13 + 50 = 63
+13 + 51 = 64
+13 + 52 = 65
+13 + 53 = 66
+13 + 54 = 67
+13 + 55 = 68
+13 + 56 = 69
+13 + 57 = 70
+13 + 58 = 71
+13 + 59 = 72
+13 + 60 = 73
+13 + 61 = 74
+13 + 62 = 75
+13 + 63 = 76
+14 + 0 = 14
+14 + 1 = 15
+14 + 2 = 16
+14 + 3 = 17
+14 + 4 = 18
+14 + 5 = 19
+14 + 6 = 20
+14 + 7 = 21
+14 + 8 = 22
+14 + 9 = 23
+14 + 10 = 24
+14 + 11 = 25
+14 + 12 = 26
+14 + 13 = 27
+14 + 14 = 28
+14 + 15 = 29
+14 + 16 = 30
+14 + 17 = 31
+14 + 18 = 32
+14 + 19 = 33
+14 + 20 = 34
+14 + 21 = 35
+14 + 22 = 36
+14 + 23 = 37
+14 + 24 = 38
+14 + 25 = 39
+14 + 26 = 40
+14 + 27 = 41
+14 + 28 = 42
+14 + 29 = 43
+14 + 30 = 44
+14 + 31 = 45
+14 + 32 = 46
+14 + 33 = 47
+14 + 34 = 48
+14 + 35 = 49
+14 + 36 = 50
+14 + 37 = 51
+14 + 38 = 52
+14 + 39 = 53
+14 + 40 = 54
+14 + 41 = 55
+14 + 42 = 56
+14 + 43 = 57
+14 + 44 = 58
+14 + 45 = 59
+14 + 46 = 60
+14 + 47 = 61
+14 + 48 = 62
+14 + 49 = 63
+14 + 50 = 64
+14 + 51 = 65
+14 + 52 = 66
+14 + 53 = 67
+14 + 54 = 68
+14 + 55 = 69
+14 + 56 = 70
+14 + 57 = 71
+14 + 58 = 72
+14 + 59 = 73
+14 + 60 = 74
+14 + 61 = 75
+14 + 62 = 76
+14 + 63 = 77
+15 + 0 = 15
+15 + 1 = 16
+15 + 2 = 17
+15 + 3 = 18
+15 + 4 = 19
+15 + 5 = 20
+15 + 6 = 21
+15 + 7 = 22
+15 + 8 = 23
+15 + 9 = 24
+15 + 10 = 25
+15 + 11 = 26
+15 + 12 = 27
+15 + 13 = 28
+15 + 14 = 29
+15 + 15 = 30
+15 + 16 = 31
+15 + 17 = 32
+15 + 18 = 33
+15 + 19 = 34
+15 + 20 = 35
+15 + 21 = 36
+15 + 22 = 37
+15 + 23 = 38
+15 + 24 = 39
+15 + 25 = 40
+15 + 26 = 41
+15 + 27 = 42
+15 + 28 = 43
+15 + 29 = 44
+15 + 30 = 45
+15 + 31 = 46
+15 + 32 = 47
+15 + 33 = 48
+15 + 34 = 49
+15 + 35 = 50
+15 + 36 = 51
+15 + 37 = 52
+15 + 38 = 53
+15 + 39 = 54
+15 + 40 = 55
+15 + 41 = 56
+15 + 42 = 57
+15 + 43 = 58
+15 + 44 = 59
+15 + 45 = 60
+15 + 46 = 61
+15 + 47 = 62
+15 + 48 = 63
+15 + 49 = 64
+15 + 50 = 65
+15 + 51 = 66
+15 + 52 = 67
+15 + 53 = 68
+15 + 54 = 69
+15 + 55 = 70
+15 + 56 = 71
+15 + 57 = 72
+15 + 58 = 73
+15 + 59 = 74
+15 + 60 = 75
+15 + 61 = 76
+15 + 62 = 77
+15 + 63 = 78
+16 + 0 = 16
+16 + 1 = 17
+16 + 2 = 18
+16 + 3 = 19
+16 + 4 = 20
+16 + 5 = 21
+16 + 6 = 22
+16 + 7 = 23
+16 + 8 = 24
+16 + 9 = 25
+16 + 10 = 26
+16 + 11 = 27
+16 + 12 = 28
+16 + 13 = 29
+16 + 14 = 30
+16 + 15 = 31
+16 + 16 = 32
+16 + 17 = 33
+16 + 18 = 34
+16 + 19 = 35
+16 + 20 = 36
+16 + 21 = 37
+16 + 22 = 38
+16 + 23 = 39
+16 + 24 = 40
+16 + 25 = 41
+16 + 26 = 42
+16 + 27 = 43
+16 + 28 = 44
+16 + 29 = 45
+16 + 30 = 46
+16 + 31 = 47
+16 + 32 = 48
+16 + 33 = 49
+16 + 34 = 50
+16 + 35 = 51
+16 + 36 = 52
+16 + 37 = 53
+16 + 38 = 54
+16 + 39 = 55
+16 + 40 = 56
+16 + 41 = 57
+16 + 42 = 58
+16 + 43 = 59
+16 + 44 = 60
+16 + 45 = 61
+16 + 46 = 62
+16 + 47 = 63
+16 + 48 = 64
+16 + 49 = 65
+16 + 50 = 66
+16 + 51 = 67
+16 + 52 = 68
+16 + 53 = 69
+16 + 54 = 70
+16 + 55 = 71
+16 + 56 = 72
+16 + 57 = 73
+16 + 58 = 74
+16 + 59 = 75
+16 + 60 = 76
+16 + 61 = 77
+16 + 62 = 78
+16 + 63 = 79
+17 + 0 = 17
+17 + 1 = 18
+17 + 2 = 19
+17 + 3 = 20
+17 + 4 = 21
+17 + 5 = 22
+17 + 6 = 23
+17 + 7 = 24
+17 + 8 = 25
+17 + 9 = 26
+17 + 10 = 27
+17 + 11 = 28
+17 + 12 = 29
+17 + 13 = 30
+17 + 14 = 31
+17 + 15 = 32
+17 + 16 = 33
+17 + 17 = 34
+17 + 18 = 35
+17 + 19 = 36
+17 + 20 = 37
+17 + 21 = 38
+17 + 22 = 39
+17 + 23 = 40
+17 + 24 = 41
+17 + 25 = 42
+17 + 26 = 43
+17 + 27 = 44
+17 + 28 = 45
+17 + 29 = 46
+17 + 30 = 47
+17 + 31 = 48
+17 + 32 = 49
+17 + 33 = 50
+17 + 34 = 51
+17 + 35 = 52
+17 + 36 = 53
+17 + 37 = 54
+17 + 38 = 55
+17 + 39 = 56
+17 + 40 = 57
+17 + 41 = 58
+17 + 42 = 59
+17 + 43 = 60
+17 + 44 = 61
+17 + 45 = 62
+17 + 46 = 63
+17 + 47 = 64
+17 + 48 = 65
+17 + 49 = 66
+17 + 50 = 67
+17 + 51 = 68
+17 + 52 = 69
+17 + 53 = 70
+17 + 54 = 71
+17 + 55 = 72
+17 + 56 = 73
+17 + 57 = 74
+17 + 58 = 75
+17 + 59 = 76
+17 + 60 = 77
+17 + 61 = 78
+17 + 62 = 79
+17 + 63 = 80
+18 + 0 = 18
+18 + 1 = 19
+18 + 2 = 20
+18 + 3 = 21
+18 + 4 = 22
+18 + 5 = 23
+18 + 6 = 24
+18 + 7 = 25
+18 + 8 = 26
+18 + 9 = 27
+18 + 10 = 28
+18 + 11 = 29
+18 + 12 = 30
+18 + 13 = 31
+18 + 14 = 32
+18 + 15 = 33
+18 + 16 = 34
+18 + 17 = 35
+18 + 18 = 36
+18 + 19 = 37
+18 + 20 = 38
+18 + 21 = 39
+18 + 22 = 40
+18 + 23 = 41
+18 + 24 = 42
+18 + 25 = 43
+18 + 26 = 44
+18 + 27 = 45
+18 + 28 = 46
+18 + 29 = 47
+18 + 30 = 48
+18 + 31 = 49
+18 + 32 = 50
+18 + 33 = 51
+18 + 34 = 52
+18 + 35 = 53
+18 + 36 = 54
+18 + 37 = 55
+18 + 38 = 56
+18 + 39 = 57
+18 + 40 = 58
+18 + 41 = 59
+18 + 42 = 60
+18 + 43 = 61
+18 + 44 = 62
+18 + 45 = 63
+18 + 46 = 64
+18 + 47 = 65
+18 + 48 = 66
+18 + 49 = 67
+18 + 50 = 68
+18 + 51 = 69
+18 + 52 = 70
+18 + 53 = 71
+18 + 54 = 72
+18 + 55 = 73
+18 + 56 = 74
+18 + 57 = 75
+18 + 58 = 76
+18 + 59 = 77
+18 + 60 = 78
+18 + 61 = 79
+18 + 62 = 80
+18 + 63 = 81
+19 + 0 = 19
+19 + 1 = 20
+19 + 2 = 21
+19 + 3 = 22
+19 + 4 = 23
+19 + 5 = 24
+19 + 6 = 25
+19 + 7 = 26
+19 + 8 = 27
+19 + 9 = 28
+19 + 10 = 29
+19 + 11 = 30
+19 + 12 = 31
+19 + 13 = 32
+19 + 14 = 33
+19 + 15 = 34
+19 + 16 = 35
+19 + 17 = 36
+19 + 18 = 37
+19 + 19 = 38
+19 + 20 = 39
+19 + 21 = 40
+19 + 22 = 41
+19 + 23 = 42
+19 + 24 = 43
+19 + 25 = 44
+19 + 26 = 45
+19 + 27 = 46
+19 + 28 = 47
+19 + 29 = 48
+19 + 30 = 49
+19 + 31 = 50
+19 + 32 = 51
+19 + 33 = 52
+19 + 34 = 53
+19 + 35 = 54
+19 + 36 = 55
+19 + 37 = 56
+19 + 38 = 57
+19 + 39 = 58
+19 + 40 = 59
+19 + 41 = 60
+19 + 42 = 61
+19 + 43 = 62
+19 + 44 = 63
+19 + 45 = 64
+19 + 46 = 65
+19 + 47 = 66
+19 + 48 = 67
+19 + 49 = 68
+19 + 50 = 69
+19 + 51 = 70
+19 + 52 = 71
+19 + 53 = 72
+19 + 54 = 73
+19 + 55 = 74
+19 + 56 = 75
+19 + 57 = 76
+19 + 58 = 77
+19 + 59 = 78
+19 + 60 = 79
+19 + 61 = 80
+19 + 62 = 81
+19 + 63 = 82
+20 + 0 = 20
+20 + 1 = 21
+20 + 2 = 22
+20 + 3 = 23
+20 + 4 = 24
+20 + 5 = 25
+20 + 6 = 26
+20 + 7 = 27
+20 + 8 = 28
+20 + 9 = 29
+20 + 10 = 30
+20 + 11 = 31
+20 + 12 = 32
+20 + 13 = 33
+20 + 14 = 34
+20 + 15 = 35
+20 + 16 = 36
+20 + 17 = 37
+20 + 18 = 38
+20 + 19 = 39
+20 + 20 = 40
+20 + 21 = 41
+20 + 22 = 42
+20 + 23 = 43
+20 + 24 = 44
+20 + 25 = 45
+20 + 26 = 46
+20 + 27 = 47
+20 + 28 = 48
+20 + 29 = 49
+20 + 30 = 50
+20 + 31 = 51
+20 + 32 = 52
+20 + 33 = 53
+20 + 34 = 54
+20 + 35 = 55
+20 + 36 = 56
+20 + 37 = 57
+20 + 38 = 58
+20 + 39 = 59
+20 + 40 = 60
+20 + 41 = 61
+20 + 42 = 62
+20 + 43 = 63
+20 + 44 = 64
+20 + 45 = 65
+20 + 46 = 66
+20 + 47 = 67
+20 + 48 = 68
+20 + 49 = 69
+20 + 50 = 70
+20 + 51 = 71
+20 + 52 = 72
+20 + 53 = 73
+20 + 54 = 74
+20 + 55 = 75
+20 + 56 = 76
+20 + 57 = 77
+20 + 58 = 78
+20 + 59 = 79
+20 + 60 = 80
+20 + 61 = 81
+20 + 62 = 82
+20 + 63 = 83
+21 + 0 = 21
+21 + 1 = 22
+21 + 2 = 23
+21 + 3 = 24
+21 + 4 = 25
+21 + 5 = 26
+21 + 6 = 27
+21 + 7 = 28
+21 + 8 = 29
+21 + 9 = 30
+21 + 10 = 31
+21 + 11 = 32
+21 + 12 = 33
+21 + 13 = 34
+21 + 14 = 35
+21 + 15 = 36
+21 + 16 = 37
+21 + 17 = 38
+21 + 18 = 39
+21 + 19 = 40
+21 + 20 = 41
+21 + 21 = 42
+21 + 22 = 43
+21 + 23 = 44
+21 + 24 = 45
+21 + 25 = 46
+21 + 26 = 47
+21 + 27 = 48
+21 + 28 = 49
+21 + 29 = 50
+21 + 30 = 51
+21 + 31 = 52
+21 + 32 = 53
+21 + 33 = 54
+21 + 34 = 55
+21 + 35 = 56
+21 + 36 = 57
+21 + 37 = 58
+21 + 38 = 59
+21 + 39 = 60
+21 + 40 = 61
+21 + 41 = 62
+21 + 42 = 63
+21 + 43 = 64
+21 + 44 = 65
+21 + 45 = 66
+21 + 46 = 67
+21 + 47 = 68
+21 + 48 = 69
+21 + 49 = 70
+21 + 50 = 71
+21 + 51 = 72
+21 + 52 = 73
+21 + 53 = 74
+21 + 54 = 75
+21 + 55 = 76
+21 + 56 = 77
+21 + 57 = 78
+21 + 58 = 79
+21 + 59 = 80
+21 + 60 = 81
+21 + 61 = 82
+21 + 62 = 83
+21 + 63 = 84
+22 + 0 = 22
+22 + 1 = 23
+22 + 2 = 24
+22 + 3 = 25
+22 + 4 = 26
+22 + 5 = 27
+22 + 6 = 28
+22 + 7 = 29
+22 + 8 = 30
+22 + 9 = 31
+22 + 10 = 32
+22 + 11 = 33
+22 + 12 = 34
+22 + 13 = 35
+22 + 14 = 36
+22 + 15 = 37
+22 + 16 = 38
+22 + 17 = 39
+22 + 18 = 40
+22 + 19 = 41
+22 + 20 = 42
+22 + 21 = 43
+22 + 22 = 44
+22 + 23 = 45
+22 + 24 = 46
+22 + 25 = 47
+22 + 26 = 48
+22 + 27 = 49
+22 + 28 = 50
+22 + 29 = 51
+22 + 30 = 52
+22 + 31 = 53
+22 + 32 = 54
+22 + 33 = 55
+22 + 34 = 56
+22 + 35 = 57
+22 + 36 = 58
+22 + 37 = 59
+22 + 38 = 60
+22 + 39 = 61
+22 + 40 = 62
+22 + 41 = 63
+22 + 42 = 64
+22 + 43 = 65
+22 + 44 = 66
+22 + 45 = 67
+22 + 46 = 68
+22 + 47 = 69
+22 + 48 = 70
+22 + 49 = 71
+22 + 50 = 72
+22 + 51 = 73
+22 + 52 = 74
+22 + 53 = 75
+22 + 54 = 76
+22 + 55 = 77
+22 + 56 = 78
+22 + 57 = 79
+22 + 58 = 80
+22 + 59 = 81
+22 + 60 = 82
+22 + 61 = 83
+22 + 62 = 84
+22 + 63 = 85
+23 + 0 = 23
+23 + 1 = 24
+23 + 2 = 25
+23 + 3 = 26
+23 + 4 = 27
+23 + 5 = 28
+23 + 6 = 29
+23 + 7 = 30
+23 + 8 = 31
+23 + 9 = 32
+23 + 10 = 33
+23 + 11 = 34
+23 + 12 = 35
+23 + 13 = 36
+23 + 14 = 37
+23 + 15 = 38
+23 + 16 = 39
+23 + 17 = 40
+23 + 18 = 41
+23 + 19 = 42
+23 + 20 = 43
+23 + 21 = 44
+23 + 22 = 45
+23 + 23 = 46
+23 + 24 = 47
+23 + 25 = 48
+23 + 26 = 49
+23 + 27 = 50
+23 + 28 = 51
+23 + 29 = 52
+23 + 30 = 53
+23 + 31 = 54
+23 + 32 = 55
+23 + 33 = 56
+23 + 34 = 57
+23 + 35 = 58
+23 + 36 = 59
+23 + 37 = 60
+23 + 38 = 61
+23 + 39 = 62
+23 + 40 = 63
+23 + 41 = 64
+23 + 42 = 65
+23 + 43 = 66
+23 + 44 = 67
+23 + 45 = 68
+23 + 46 = 69
+23 + 47 = 70
+23 + 48 = 71
+23 + 49 = 72
+23 + 50 = 73
+23 + 51 = 74
+23 + 52 = 75
+23 + 53 = 76
+23 + 54 = 77
+23 + 55 = 78
+23 + 56 = 79
+23 + 57 = 80
+23 + 58 = 81
+23 + 59 = 82
+23 + 60 = 83
+23 + 61 = 84
+23 + 62 = 85
+23 + 63 = 86
+24 + 0 = 24
+24 + 1 = 25
+24 + 2 = 26
+24 + 3 = 27
+24 + 4 = 28
+24 + 5 = 29
+24 + 6 = 30
+24 + 7 = 31
+24 + 8 = 32
+24 + 9 = 33
+24 + 10 = 34
+24 + 11 = 35
+24 + 12 = 36
+24 + 13 = 37
+24 + 14 = 38
+24 + 15 = 39
+24 + 16 = 40
+24 + 17 = 41
+24 + 18 = 42
+24 + 19 = 43
+24 + 20 = 44
+24 + 21 = 45
+24 + 22 = 46
+24 + 23 = 47
+24 + 24 = 48
+24 + 25 = 49
+24 + 26 = 50
+24 + 27 = 51
+24 + 28 = 52
+24 + 29 = 53
+24 + 30 = 54
+24 + 31 = 55
+24 + 32 = 56
+24 + 33 = 57
+24 + 34 = 58
+24 + 35 = 59
+24 + 36 = 60
+24 + 37 = 61
+24 + 38 = 62
+24 + 39 = 63
+24 + 40 = 64
+24 + 41 = 65
+24 + 42 = 66
+24 + 43 = 67
+24 + 44 = 68
+24 + 45 = 69
+24 + 46 = 70
+24 + 47 = 71
+24 + 48 = 72
+24 + 49 = 73
+24 + 50 = 74
+24 + 51 = 75
+24 + 52 = 76
+24 + 53 = 77
+24 + 54 = 78
+24 + 55 = 79
+24 + 56 = 80
+24 + 57 = 81
+24 + 58 = 82
+24 + 59 = 83
+24 + 60 = 84
+24 + 61 = 85
+24 + 62 = 86
+24 + 63 = 87
+25 + 0 = 25
+25 + 1 = 26
+25 + 2 = 27
+25 + 3 = 28
+25 + 4 = 29
+25 + 5 = 30
+25 + 6 = 31
+25 + 7 = 32
+25 + 8 = 33
+25 + 9 = 34
+25 + 10 = 35
+25 + 11 = 36
+25 + 12 = 37
+25 + 13 = 38
+25 + 14 = 39
+25 + 15 = 40
+25 + 16 = 41
+25 + 17 = 42
+25 + 18 = 43
+25 + 19 = 44
+25 + 20 = 45
+25 + 21 = 46
+25 + 22 = 47
+25 + 23 = 48
+25 + 24 = 49
+25 + 25 = 50
+25 + 26 = 51
+25 + 27 = 52
+25 + 28 = 53
+25 + 29 = 54
+25 + 30 = 55
+25 + 31 = 56
+25 + 32 = 57
+25 + 33 = 58
+25 + 34 = 59
+25 + 35 = 60
+25 + 36 = 61
+25 + 37 = 62
+25 + 38 = 63
+25 + 39 = 64
+25 + 40 = 65
+25 + 41 = 66
+25 + 42 = 67
+25 + 43 = 68
+25 + 44 = 69
+25 + 45 = 70
+25 + 46 = 71
+25 + 47 = 72
+25 + 48 = 73
+25 + 49 = 74
+25 + 50 = 75
+25 + 51 = 76
+25 + 52 = 77
+25 + 53 = 78
+25 + 54 = 79
+25 + 55 = 80
+25 + 56 = 81
+25 + 57 = 82
+25 + 58 = 83
+25 + 59 = 84
+25 + 60 = 85
+25 + 61 = 86
+25 + 62 = 87
+25 + 63 = 88
+26 + 0 = 26
+26 + 1 = 27
+26 + 2 = 28
+26 + 3 = 29
+26 + 4 = 30
+26 + 5 = 31
+26 + 6 = 32
+26 + 7 = 33
+26 + 8 = 34
+26 + 9 = 35
+26 + 10 = 36
+26 + 11 = 37
+26 + 12 = 38
+26 + 13 = 39
+26 + 14 = 40
+26 + 15 = 41
+26 + 16 = 42
+26 + 17 = 43
+26 + 18 = 44
+26 + 19 = 45
+26 + 20 = 46
+26 + 21 = 47
+26 + 22 = 48
+26 + 23 = 49
+26 + 24 = 50
+26 + 25 = 51
+26 + 26 = 52
+26 + 27 = 53
+26 + 28 = 54
+26 + 29 = 55
+26 + 30 = 56
+26 + 31 = 57
+26 + 32 = 58
+26 + 33 = 59
+26 + 34 = 60
+26 + 35 = 61
+26 + 36 = 62
+26 + 37 = 63
+26 + 38 = 64
+26 + 39 = 65
+26 + 40 = 66
+26 + 41 = 67
+26 + 42 = 68
+26 + 43 = 69
+26 + 44 = 70
+26 + 45 = 71
+26 + 46 = 72
+26 + 47 = 73
+26 + 48 = 74
+26 + 49 = 75
+26 + 50 = 76
+26 + 51 = 77
+26 + 52 = 78
+26 + 53 = 79
+26 + 54 = 80
+26 + 55 = 81
+26 + 56 = 82
+26 + 57 = 83
+26 + 58 = 84
+26 + 59 = 85
+26 + 60 = 86
+26 + 61 = 87
+26 + 62 = 88
+26 + 63 = 89
+27 + 0 = 27
+27 + 1 = 28
+27 + 2 = 29
+27 + 3 = 30
+27 + 4 = 31
+27 + 5 = 32
+27 + 6 = 33
+27 + 7 = 34
+27 + 8 = 35
+27 + 9 = 36
+27 + 10 = 37
+27 + 11 = 38
+27 + 12 = 39
+27 + 13 = 40
+27 + 14 = 41
+27 + 15 = 42
+27 + 16 = 43
+27 + 17 = 44
+27 + 18 = 45
+27 + 19 = 46
+27 + 20 = 47
+27 + 21 = 48
+27 + 22 = 49
+27 + 23 = 50
+27 + 24 = 51
+27 + 25 = 52
+27 + 26 = 53
+27 + 27 = 54
+27 + 28 = 55
+27 + 29 = 56
+27 + 30 = 57
+27 + 31 = 58
+27 + 32 = 59
+27 + 33 = 60
+27 + 34 = 61
+27 + 35 = 62
+27 + 36 = 63
+27 + 37 = 64
+27 + 38 = 65
+27 + 39 = 66
+27 + 40 = 67
+27 + 41 = 68
+27 + 42 = 69
+27 + 43 = 70
+27 + 44 = 71
+27 + 45 = 72
+27 + 46 = 73
+27 + 47 = 74
+27 + 48 = 75
+27 + 49 = 76
+27 + 50 = 77
+27 + 51 = 78
+27 + 52 = 79
+27 + 53 = 80
+27 + 54 = 81
+27 + 55 = 82
+27 + 56 = 83
+27 + 57 = 84
+27 + 58 = 85
+27 + 59 = 86
+27 + 60 = 87
+27 + 61 = 88
+27 + 62 = 89
+27 + 63 = 90
+28 + 0 = 28
+28 + 1 = 29
+28 + 2 = 30
+28 + 3 = 31
+28 + 4 = 32
+28 + 5 = 33
+28 + 6 = 34
+28 + 7 = 35
+28 + 8 = 36
+28 + 9 = 37
+28 + 10 = 38
+28 + 11 = 39
+28 + 12 = 40
+28 + 13 = 41
+28 + 14 = 42
+28 + 15 = 43
+28 + 16 = 44
+28 + 17 = 45
+28 + 18 = 46
+28 + 19 = 47
+28 + 20 = 48
+28 + 21 = 49
+28 + 22 = 50
+28 + 23 = 51
+28 + 24 = 52
+28 + 25 = 53
+28 + 26 = 54
+28 + 27 = 55
+28 + 28 = 56
+28 + 29 = 57
+28 + 30 = 58
+28 + 31 = 59
+28 + 32 = 60
+28 + 33 = 61
+28 + 34 = 62
+28 + 35 = 63
+28 + 36 = 64
+28 + 37 = 65
+28 + 38 = 66
+28 + 39 = 67
+28 + 40 = 68
+28 + 41 = 69
+28 + 42 = 70
+28 + 43 = 71
+28 + 44 = 72
+28 + 45 = 73
+28 + 46 = 74
+28 + 47 = 75
+28 + 48 = 76
+28 + 49 = 77
+28 + 50 = 78
+28 + 51 = 79
+28 + 52 = 80
+28 + 53 = 81
+28 + 54 = 82
+28 + 55 = 83
+28 + 56 = 84
+28 + 57 = 85
+28 + 58 = 86
+28 + 59 = 87
+28 + 60 = 88
+28 + 61 = 89
+28 + 62 = 90
+28 + 63 = 91
+29 + 0 = 29
+29 + 1 = 30
+29 + 2 = 31
+29 + 3 = 32
+29 + 4 = 33
+29 + 5 = 34
+29 + 6 = 35
+29 + 7 = 36
+29 + 8 = 37
+29 + 9 = 38
+29 + 10 = 39
+29 + 11 = 40
+29 + 12 = 41
+29 + 13 = 42
+29 + 14 = 43
+29 + 15 = 44
+29 + 16 = 45
+29 + 17 = 46
+29 + 18 = 47
+29 + 19 = 48
+29 + 20 = 49
+29 + 21 = 50
+29 + 22 = 51
+29 + 23 = 52
+29 + 24 = 53
+29 + 25 = 54
+29 + 26 = 55
+29 + 27 = 56
+29 + 28 = 57
+29 + 29 = 58
+29 + 30 = 59
+29 + 31 = 60
+29 + 32 = 61
+29 + 33 = 62
+29 + 34 = 63
+29 + 35 = 64
+29 + 36 = 65
+29 + 37 = 66
+29 + 38 = 67
+29 + 39 = 68
+29 + 40 = 69
+29 + 41 = 70
+29 + 42 = 71
+29 + 43 = 72
+29 + 44 = 73
+29 + 45 = 74
+29 + 46 = 75
+29 + 47 = 76
+29 + 48 = 77
+29 + 49 = 78
+29 + 50 = 79
+29 + 51 = 80
+29 + 52 = 81
+29 + 53 = 82
+29 + 54 = 83
+29 + 55 = 84
+29 + 56 = 85
+29 + 57 = 86
+29 + 58 = 87
+29 + 59 = 88
+29 + 60 = 89
+29 + 61 = 90
+29 + 62 = 91
+29 + 63 = 92
+30 + 0 = 30
+30 + 1 = 31
+30 + 2 = 32
+30 + 3 = 33
+30 + 4 = 34
+30 + 5 = 35
+30 + 6 = 36
+30 + 7 = 37
+30 + 8 = 38
+30 + 9 = 39
+30 + 10 = 40
+30 + 11 = 41
+30 + 12 = 42
+30 + 13 = 43
+30 + 14 = 44
+30 + 15 = 45
+30 + 16 = 46
+30 + 17 = 47
+30 + 18 = 48
+30 + 19 = 49
+30 + 20 = 50
+30 + 21 = 51
+30 + 22 = 52
+30 + 23 = 53
+30 + 24 = 54
+30 + 25 = 55
+30 + 26 = 56
+30 + 27 = 57
+30 + 28 = 58
+30 + 29 = 59
+30 + 30 = 60
+30 + 31 = 61
+30 + 32 = 62
+30 + 33 = 63
+30 + 34 = 64
+30 + 35 = 65
+30 + 36 = 66
+30 + 37 = 67
+30 + 38 = 68
+30 + 39 = 69
+30 + 40 = 70
+30 + 41 = 71
+30 + 42 = 72
+30 + 43 = 73
+30 + 44 = 74
+30 + 45 = 75
+30 + 46 = 76
+30 + 47 = 77
+30 + 48 = 78
+30 + 49 = 79
+30 + 50 = 80
+30 + 51 = 81
+30 + 52 = 82
+30 + 53 = 83
+30 + 54 = 84
+30 + 55 = 85
+30 + 56 = 86
+30 + 57 = 87
+30 + 58 = 88
+30 + 59 = 89
+30 + 60 = 90
+30 + 61 = 91
+30 + 62 = 92
+30 + 63 = 93
+31 + 0 = 31
+31 + 1 = 32
+31 + 2 = 33
+31 + 3 = 34
+31 + 4 = 35
+31 + 5 = 36
+31 + 6 = 37
+31 + 7 = 38
+31 + 8 = 39
+31 + 9 = 40
+31 + 10 = 41
+31 + 11 = 42
+31 + 12 = 43
+31 + 13 = 44
+31 + 14 = 45
+31 + 15 = 46
+31 + 16 = 47
+31 + 17 = 48
+31 + 18 = 49
+31 + 19 = 50
+31 + 20 = 51
+31 + 21 = 52
+31 + 22 = 53
+31 + 23 = 54
+31 + 24 = 55
+31 + 25 = 56
+31 + 26 = 57
+31 + 27 = 58
+31 + 28 = 59
+31 + 29 = 60
+31 + 30 = 61
+31 + 31 = 62
+31 + 32 = 63
+31 + 33 = 64
+31 + 34 = 65
+31 + 35 = 66
+31 + 36 = 67
+31 + 37 = 68
+31 + 38 = 69
+31 + 39 = 70
+31 + 40 = 71
+31 + 41 = 72
+31 + 42 = 73
+31 + 43 = 74
+31 + 44 = 75
+31 + 45 = 76
+31 + 46 = 77
+31 + 47 = 78
+31 + 48 = 79
+31 + 49 = 80
+31 + 50 = 81
+31 + 51 = 82
+31 + 52 = 83
+31 + 53 = 84
+31 + 54 = 85
+31 + 55 = 86
+31 + 56 = 87
+31 + 57 = 88
+31 + 58 = 89
+31 + 59 = 90
+31 + 60 = 91
+31 + 61 = 92
+31 + 62 = 93
+31 + 63 = 94
+32 + 0 = 32
+32 + 1 = 33
+32 + 2 = 34
+32 + 3 = 35
+32 + 4 = 36
+32 + 5 = 37
+32 + 6 = 38
+32 + 7 = 39
+32 + 8 = 40
+32 + 9 = 41
+32 + 10 = 42
+32 + 11 = 43
+32 + 12 = 44
+32 + 13 = 45
+32 + 14 = 46
+32 + 15 = 47
+32 + 16 = 48
+32 + 17 = 49
+32 + 18 = 50
+32 + 19 = 51
+32 + 20 = 52
+32 + 21 = 53
+32 + 22 = 54
+32 + 23 = 55
+32 + 24 = 56
+32 + 25 = 57
+32 + 26 = 58
+32 + 27 = 59
+32 + 28 = 60
+32 + 29 = 61
+32 + 30 = 62
+32 + 31 = 63
+32 + 32 = 64
+32 + 33 = 65
+32 + 34 = 66
+32 + 35 = 67
+32 + 36 = 68
+32 + 37 = 69
+32 + 38 = 70
+32 + 39 = 71
+32 + 40 = 72
+32 + 41 = 73
+32 + 42 = 74
+32 + 43 = 75
+32 + 44 = 76
+32 + 45 = 77
+32 + 46 = 78
+32 + 47 = 79
+32 + 48 = 80
+32 + 49 = 81
+32 + 50 = 82
+32 + 51 = 83
+32 + 52 = 84
+32 + 53 = 85
+32 + 54 = 86
+32 + 55 = 87
+32 + 56 = 88
+32 + 57 = 89
+32 + 58 = 90
+32 + 59 = 91
+32 + 60 = 92
+32 + 61 = 93
+32 + 62 = 94
+32 + 63 = 95
+33 + 0 = 33
+33 + 1 = 34
+33 + 2 = 35
+33 + 3 = 36
+33 + 4 = 37
+33 + 5 = 38
+33 + 6 = 39
+33 + 7 = 40
+33 + 8 = 41
+33 + 9 = 42
+33 + 10 = 43
+33 + 11 = 44
+33 + 12 = 45
+33 + 13 = 46
+33 + 14 = 47
+33 + 15 = 48
+33 + 16 = 49
+33 + 17 = 50
+33 + 18 = 51
+33 + 19 = 52
+33 + 20 = 53
+33 + 21 = 54
+33 + 22 = 55
+33 + 23 = 56
+33 + 24 = 57
+33 + 25 = 58
+33 + 26 = 59
+33 + 27 = 60
+33 + 28 = 61
+33 + 29 = 62
+33 + 30 = 63
+33 + 31 = 64
+33 + 32 = 65
+33 + 33 = 66
+33 + 34 = 67
+33 + 35 = 68
+33 + 36 = 69
+33 + 37 = 70
+33 + 38 = 71
+33 + 39 = 72
+33 + 40 = 73
+33 + 41 = 74
+33 + 42 = 75
+33 + 43 = 76
+33 + 44 = 77
+33 + 45 = 78
+33 + 46 = 79
+33 + 47 = 80
+33 + 48 = 81
+33 + 49 = 82
+33 + 50 = 83
+33 + 51 = 84
+33 + 52 = 85
+33 + 53 = 86
+33 + 54 = 87
+33 + 55 = 88
+33 + 56 = 89
+33 + 57 = 90
+33 + 58 = 91
+33 + 59 = 92
+33 + 60 = 93
+33 + 61 = 94
+33 + 62 = 95
+33 + 63 = 96
+34 + 0 = 34
+34 + 1 = 35
+34 + 2 = 36
+34 + 3 = 37
+34 + 4 = 38
+34 + 5 = 39
+34 + 6 = 40
+34 + 7 = 41
+34 + 8 = 42
+34 + 9 = 43
+34 + 10 = 44
+34 + 11 = 45
+34 + 12 = 46
+34 + 13 = 47
+34 + 14 = 48
+34 + 15 = 49
+34 + 16 = 50
+34 + 17 = 51
+34 + 18 = 52
+34 + 19 = 53
+34 + 20 = 54
+34 + 21 = 55
+34 + 22 = 56
+34 + 23 = 57
+34 + 24 = 58
+34 + 25 = 59
+34 + 26 = 60
+34 + 27 = 61
+34 + 28 = 62
+34 + 29 = 63
+34 + 30 = 64
+34 + 31 = 65
+34 + 32 = 66
+34 + 33 = 67
+34 + 34 = 68
+34 + 35 = 69
+34 + 36 = 70
+34 + 37 = 71
+34 + 38 = 72
+34 + 39 = 73
+34 + 40 = 74
+34 + 41 = 75
+34 + 42 = 76
+34 + 43 = 77
+34 + 44 = 78
+34 + 45 = 79
+34 + 46 = 80
+34 + 47 = 81
+34 + 48 = 82
+34 + 49 = 83
+34 + 50 = 84
+34 + 51 = 85
+34 + 52 = 86
+34 + 53 = 87
+34 + 54 = 88
+34 + 55 = 89
+34 + 56 = 90
+34 + 57 = 91
+34 + 58 = 92
+34 + 59 = 93
+34 + 60 = 94
+34 + 61 = 95
+34 + 62 = 96
+34 + 63 = 97
+35 + 0 = 35
+35 + 1 = 36
+35 + 2 = 37
+35 + 3 = 38
+35 + 4 = 39
+35 + 5 = 40
+35 + 6 = 41
+35 + 7 = 42
+35 + 8 = 43
+35 + 9 = 44
+35 + 10 = 45
+35 + 11 = 46
+35 + 12 = 47
+35 + 13 = 48
+35 + 14 = 49
+35 + 15 = 50
+35 + 16 = 51
+35 + 17 = 52
+35 + 18 = 53
+35 + 19 = 54
+35 + 20 = 55
+35 + 21 = 56
+35 + 22 = 57
+35 + 23 = 58
+35 + 24 = 59
+35 + 25 = 60
+35 + 26 = 61
+35 + 27 = 62
+35 + 28 = 63
+35 + 29 = 64
+35 + 30 = 65
+35 + 31 = 66
+35 + 32 = 67
+35 + 33 = 68
+35 + 34 = 69
+35 + 35 = 70
+35 + 36 = 71
+35 + 37 = 72
+35 + 38 = 73
+35 + 39 = 74
+35 + 40 = 75
+35 + 41 = 76
+35 + 42 = 77
+35 + 43 = 78
+35 + 44 = 79
+35 + 45 = 80
+35 + 46 = 81
+35 + 47 = 82
+35 + 48 = 83
+35 + 49 = 84
+35 + 50 = 85
+35 + 51 = 86
+35 + 52 = 87
+35 + 53 = 88
+35 + 54 = 89
+35 + 55 = 90
+35 + 56 = 91
+35 + 57 = 92
+35 + 58 = 93
+35 + 59 = 94
+35 + 60 = 95
+35 + 61 = 96
+35 + 62 = 97
+35 + 63 = 98
+36 + 0 = 36
+36 + 1 = 37
+36 + 2 = 38
+36 + 3 = 39
+36 + 4 = 40
+36 + 5 = 41
+36 + 6 = 42
+36 + 7 = 43
+36 + 8 = 44
+36 + 9 = 45
+36 + 10 = 46
+36 + 11 = 47
+36 + 12 = 48
+36 + 13 = 49
+36 + 14 = 50
+36 + 15 = 51
+36 + 16 = 52
+36 + 17 = 53
+36 + 18 = 54
+36 + 19 = 55
+36 + 20 = 56
+36 + 21 = 57
+36 + 22 = 58
+36 + 23 = 59
+36 + 24 = 60
+36 + 25 = 61
+36 + 26 = 62
+36 + 27 = 63
+36 + 28 = 64
+36 + 29 = 65
+36 + 30 = 66
+36 + 31 = 67
+36 + 32 = 68
+36 + 33 = 69
+36 + 34 = 70
+36 + 35 = 71
+36 + 36 = 72
+36 + 37 = 73
+36 + 38 = 74
+36 + 39 = 75
+36 + 40 = 76
+36 + 41 = 77
+36 + 42 = 78
+36 + 43 = 79
+36 + 44 = 80
+36 + 45 = 81
+36 + 46 = 82
+36 + 47 = 83
+36 + 48 = 84
+36 + 49 = 85
+36 + 50 = 86
+36 + 51 = 87
+36 + 52 = 88
+36 + 53 = 89
+36 + 54 = 90
+36 + 55 = 91
+36 + 56 = 92
+36 + 57 = 93
+36 + 58 = 94
+36 + 59 = 95
+36 + 60 = 96
+36 + 61 = 97
+36 + 62 = 98
+36 + 63 = 99
+37 + 0 = 37
+37 + 1 = 38
+37 + 2 = 39
+37 + 3 = 40
+37 + 4 = 41
+37 + 5 = 42
+37 + 6 = 43
+37 + 7 = 44
+37 + 8 = 45
+37 + 9 = 46
+37 + 10 = 47
+37 + 11 = 48
+37 + 12 = 49
+37 + 13 = 50
+37 + 14 = 51
+37 + 15 = 52
+37 + 16 = 53
+37 + 17 = 54
+37 + 18 = 55
+37 + 19 = 56
+37 + 20 = 57
+37 + 21 = 58
+37 + 22 = 59
+37 + 23 = 60
+37 + 24 = 61
+37 + 25 = 62
+37 + 26 = 63
+37 + 27 = 64
+37 + 28 = 65
+37 + 29 = 66
+37 + 30 = 67
+37 + 31 = 68
+37 + 32 = 69
+37 + 33 = 70
+37 + 34 = 71
+37 + 35 = 72
+37 + 36 = 73
+37 + 37 = 74
+37 + 38 = 75
+37 + 39 = 76
+37 + 40 = 77
+37 + 41 = 78
+37 + 42 = 79
+37 + 43 = 80
+37 + 44 = 81
+37 + 45 = 82
+37 + 46 = 83
+37 + 47 = 84
+37 + 48 = 85
+37 + 49 = 86
+37 + 50 = 87
+37 + 51 = 88
+37 + 52 = 89
+37 + 53 = 90
+37 + 54 = 91
+37 + 55 = 92
+37 + 56 = 93
+37 + 57 = 94
+37 + 58 = 95
+37 + 59 = 96
+37 + 60 = 97
+37 + 61 = 98
+37 + 62 = 99
+37 + 63 = 100
+38 + 0 = 38
+38 + 1 = 39
+38 + 2 = 40
+38 + 3 = 41
+38 + 4 = 42
+38 + 5 = 43
+38 + 6 = 44
+38 + 7 = 45
+38 + 8 = 46
+38 + 9 = 47
+38 + 10 = 48
+38 + 11 = 49
+38 + 12 = 50
+38 + 13 = 51
+38 + 14 = 52
+38 + 15 = 53
+38 + 16 = 54
+38 + 17 = 55
+38 + 18 = 56
+38 + 19 = 57
+38 + 20 = 58
+38 + 21 = 59
+38 + 22 = 60
+38 + 23 = 61
+38 + 24 = 62
+38 + 25 = 63
+38 + 26 = 64
+38 + 27 = 65
+38 + 28 = 66
+38 + 29 = 67
+38 + 30 = 68
+38 + 31 = 69
+38 + 32 = 70
+38 + 33 = 71
+38 + 34 = 72
+38 + 35 = 73
+38 + 36 = 74
+38 + 37 = 75
+38 + 38 = 76
+38 + 39 = 77
+38 + 40 = 78
+38 + 41 = 79
+38 + 42 = 80
+38 + 43 = 81
+38 + 44 = 82
+38 + 45 = 83
+38 + 46 = 84
+38 + 47 = 85
+38 + 48 = 86
+38 + 49 = 87
+38 + 50 = 88
+38 + 51 = 89
+38 + 52 = 90
+38 + 53 = 91
+38 + 54 = 92
+38 + 55 = 93
+38 + 56 = 94
+38 + 57 = 95
+38 + 58 = 96
+38 + 59 = 97
+38 + 60 = 98
+38 + 61 = 99
+38 + 62 = 100
+38 + 63 = 101
+39 + 0 = 39
+39 + 1 = 40
+39 + 2 = 41
+39 + 3 = 42
+39 + 4 = 43
+39 + 5 = 44
+39 + 6 = 45
+39 + 7 = 46
+39 + 8 = 47
+39 + 9 = 48
+39 + 10 = 49
+39 + 11 = 50
+39 + 12 = 51
+39 + 13 = 52
+39 + 14 = 53
+39 + 15 = 54
+39 + 16 = 55
+39 + 17 = 56
+39 + 18 = 57
+39 + 19 = 58
+39 + 20 = 59
+39 + 21 = 60
+39 + 22 = 61
+39 + 23 = 62
+39 + 24 = 63
+39 + 25 = 64
+39 + 26 = 65
+39 + 27 = 66
+39 + 28 = 67
+39 + 29 = 68
+39 + 30 = 69
+39 + 31 = 70
+39 + 32 = 71
+39 + 33 = 72
+39 + 34 = 73
+39 + 35 = 74
+39 + 36 = 75
+39 + 37 = 76
+39 + 38 = 77
+39 + 39 = 78
+39 + 40 = 79
+39 + 41 = 80
+39 + 42 = 81
+39 + 43 = 82
+39 + 44 = 83
+39 + 45 = 84
+39 + 46 = 85
+39 + 47 = 86
+39 + 48 = 87
+39 + 49 = 88
+39 + 50 = 89
+39 + 51 = 90
+39 + 52 = 91
+39 + 53 = 92
+39 + 54 = 93
+39 + 55 = 94
+39 + 56 = 95
+39 + 57 = 96
+39 + 58 = 97
+39 + 59 = 98
+39 + 60 = 99
+39 + 61 = 100
+39 + 62 = 101
+39 + 63 = 102
+40 + 0 = 40
+40 + 1 = 41
+40 + 2 = 42
+40 + 3 = 43
+40 + 4 = 44
+40 + 5 = 45
+40 + 6 = 46
+40 + 7 = 47
+40 + 8 = 48
+40 + 9 = 49
+40 + 10 = 50
+40 + 11 = 51
+40 + 12 = 52
+40 + 13 = 53
+40 + 14 = 54
+40 + 15 = 55
+40 + 16 = 56
+40 + 17 = 57
+40 + 18 = 58
+40 + 19 = 59
+40 + 20 = 60
+40 + 21 = 61
+40 + 22 = 62
+40 + 23 = 63
+40 + 24 = 64
+40 + 25 = 65
+40 + 26 = 66
+40 + 27 = 67
+40 + 28 = 68
+40 + 29 = 69
+40 + 30 = 70
+40 + 31 = 71
+40 + 32 = 72
+40 + 33 = 73
+40 + 34 = 74
+40 + 35 = 75
+40 + 36 = 76
+40 + 37 = 77
+40 + 38 = 78
+40 + 39 = 79
+40 + 40 = 80
+40 + 41 = 81
+40 + 42 = 82
+40 + 43 = 83
+40 + 44 = 84
+40 + 45 = 85
+40 + 46 = 86
+40 + 47 = 87
+40 + 48 = 88
+40 + 49 = 89
+40 + 50 = 90
+40 + 51 = 91
+40 + 52 = 92
+40 + 53 = 93
+40 + 54 = 94
+40 + 55 = 95
+40 + 56 = 96
+40 + 57 = 97
+40 + 58 = 98
+40 + 59 = 99
+40 + 60 = 100
+40 + 61 = 101
+40 + 62 = 102
+40 + 63 = 103
+41 + 0 = 41
+41 + 1 = 42
+41 + 2 = 43
+41 + 3 = 44
+41 + 4 = 45
+41 + 5 = 46
+41 + 6 = 47
+41 + 7 = 48
+41 + 8 = 49
+41 + 9 = 50
+41 + 10 = 51
+41 + 11 = 52
+41 + 12 = 53
+41 + 13 = 54
+41 + 14 = 55
+41 + 15 = 56
+41 + 16 = 57
+41 + 17 = 58
+41 + 18 = 59
+41 + 19 = 60
+41 + 20 = 61
+41 + 21 = 62
+41 + 22 = 63
+41 + 23 = 64
+41 + 24 = 65
+41 + 25 = 66
+41 + 26 = 67
+41 + 27 = 68
+41 + 28 = 69
+41 + 29 = 70
+41 + 30 = 71
+41 + 31 = 72
+41 + 32 = 73
+41 + 33 = 74
+41 + 34 = 75
+41 + 35 = 76
+41 + 36 = 77
+41 + 37 = 78
+41 + 38 = 79
+41 + 39 = 80
+41 + 40 = 81
+41 + 41 = 82
+41 + 42 = 83
+41 + 43 = 84
+41 + 44 = 85
+41 + 45 = 86
+41 + 46 = 87
+41 + 47 = 88
+41 + 48 = 89
+41 + 49 = 90
+41 + 50 = 91
+41 + 51 = 92
+41 + 52 = 93
+41 + 53 = 94
+41 + 54 = 95
+41 + 55 = 96
+41 + 56 = 97
+41 + 57 = 98
+41 + 58 = 99
+41 + 59 = 100
+41 + 60 = 101
+41 + 61 = 102
+41 + 62 = 103
+41 + 63 = 104
+42 + 0 = 42
+42 + 1 = 43
+42 + 2 = 44
+42 + 3 = 45
+42 + 4 = 46
+42 + 5 = 47
+42 + 6 = 48
+42 + 7 = 49
+42 + 8 = 50
+42 + 9 = 51
+42 + 10 = 52
+42 + 11 = 53
+42 + 12 = 54
+42 + 13 = 55
+42 + 14 = 56
+42 + 15 = 57
+42 + 16 = 58
+42 + 17 = 59
+42 + 18 = 60
+42 + 19 = 61
+42 + 20 = 62
+42 + 21 = 63
+42 + 22 = 64
+42 + 23 = 65
+42 + 24 = 66
+42 + 25 = 67
+42 + 26 = 68
+42 + 27 = 69
+42 + 28 = 70
+42 + 29 = 71
+42 + 30 = 72
+42 + 31 = 73
+42 + 32 = 74
+42 + 33 = 75
+42 + 34 = 76
+42 + 35 = 77
+42 + 36 = 78
+42 + 37 = 79
+42 + 38 = 80
+42 + 39 = 81
+42 + 40 = 82
+42 + 41 = 83
+42 + 42 = 84
+42 + 43 = 85
+42 + 44 = 86
+42 + 45 = 87
+42 + 46 = 88
+42 + 47 = 89
+42 + 48 = 90
+42 + 49 = 91
+42 + 50 = 92
+42 + 51 = 93
+42 + 52 = 94
+42 + 53 = 95
+42 + 54 = 96
+42 + 55 = 97
+42 + 56 = 98
+42 + 57 = 99
+42 + 58 = 100
+42 + 59 = 101
+42 + 60 = 102
+42 + 61 = 103
+42 + 62 = 104
+42 + 63 = 105
+43 + 0 = 43
+43 + 1 = 44
+43 + 2 = 45
+43 + 3 = 46
+43 + 4 = 47
+43 + 5 = 48
+43 + 6 = 49
+43 + 7 = 50
+43 + 8 = 51
+43 + 9 = 52
+43 + 10 = 53
+43 + 11 = 54
+43 + 12 = 55
+43 + 13 = 56
+43 + 14 = 57
+43 + 15 = 58
+43 + 16 = 59
+43 + 17 = 60
+43 + 18 = 61
+43 + 19 = 62
+43 + 20 = 63
+43 + 21 = 64
+43 + 22 = 65
+43 + 23 = 66
+43 + 24 = 67
+43 + 25 = 68
+43 + 26 = 69
+43 + 27 = 70
+43 + 28 = 71
+43 + 29 = 72
+43 + 30 = 73
+43 + 31 = 74
+43 + 32 = 75
+43 + 33 = 76
+43 + 34 = 77
+43 + 35 = 78
+43 + 36 = 79
+43 + 37 = 80
+43 + 38 = 81
+43 + 39 = 82
+43 + 40 = 83
+43 + 41 = 84
+43 + 42 = 85
+43 + 43 = 86
+43 + 44 = 87
+43 + 45 = 88
+43 + 46 = 89
+43 + 47 = 90
+43 + 48 = 91
+43 + 49 = 92
+43 + 50 = 93
+43 + 51 = 94
+43 + 52 = 95
+43 + 53 = 96
+43 + 54 = 97
+43 + 55 = 98
+43 + 56 = 99
+43 + 57 = 100
+43 + 58 = 101
+43 + 59 = 102
+43 + 60 = 103
+43 + 61 = 104
+43 + 62 = 105
+43 + 63 = 106
+44 + 0 = 44
+44 + 1 = 45
+44 + 2 = 46
+44 + 3 = 47
+44 + 4 = 48
+44 + 5 = 49
+44 + 6 = 50
+44 + 7 = 51
+44 + 8 = 52
+44 + 9 = 53
+44 + 10 = 54
+44 + 11 = 55
+44 + 12 = 56
+44 + 13 = 57
+44 + 14 = 58
+44 + 15 = 59
+44 + 16 = 60
+44 + 17 = 61
+44 + 18 = 62
+44 + 19 = 63
+44 + 20 = 64
+44 + 21 = 65
+44 + 22 = 66
+44 + 23 = 67
+44 + 24 = 68
+44 + 25 = 69
+44 + 26 = 70
+44 + 27 = 71
+44 + 28 = 72
+44 + 29 = 73
+44 + 30 = 74
+44 + 31 = 75
+44 + 32 = 76
+44 + 33 = 77
+44 + 34 = 78
+44 + 35 = 79
+44 + 36 = 80
+44 + 37 = 81
+44 + 38 = 82
+44 + 39 = 83
+44 + 40 = 84
+44 + 41 = 85
+44 + 42 = 86
+44 + 43 = 87
+44 + 44 = 88
+44 + 45 = 89
+44 + 46 = 90
+44 + 47 = 91
+44 + 48 = 92
+44 + 49 = 93
+44 + 50 = 94
+44 + 51 = 95
+44 + 52 = 96
+44 + 53 = 97
+44 + 54 = 98
+44 + 55 = 99
+44 + 56 = 100
+44 + 57 = 101
+44 + 58 = 102
+44 + 59 = 103
+44 + 60 = 104
+44 + 61 = 105
+44 + 62 = 106
+44 + 63 = 107
+45 + 0 = 45
+45 + 1 = 46
+45 + 2 = 47
+45 + 3 = 48
+45 + 4 = 49
+45 + 5 = 50
+45 + 6 = 51
+45 + 7 = 52
+45 + 8 = 53
+45 + 9 = 54
+45 + 10 = 55
+45 + 11 = 56
+45 + 12 = 57
+45 + 13 = 58
+45 + 14 = 59
+45 + 15 = 60
+45 + 16 = 61
+45 + 17 = 62
+45 + 18 = 63
+45 + 19 = 64
+45 + 20 = 65
+45 + 21 = 66
+45 + 22 = 67
+45 + 23 = 68
+45 + 24 = 69
+45 + 25 = 70
+45 + 26 = 71
+45 + 27 = 72
+45 + 28 = 73
+45 + 29 = 74
+45 + 30 = 75
+45 + 31 = 76
+45 + 32 = 77
+45 + 33 = 78
+45 + 34 = 79
+45 + 35 = 80
+45 + 36 = 81
+45 + 37 = 82
+45 + 38 = 83
+45 + 39 = 84
+45 + 40 = 85
+45 + 41 = 86
+45 + 42 = 87
+45 + 43 = 88
+45 + 44 = 89
+45 + 45 = 90
+45 + 46 = 91
+45 + 47 = 92
+45 + 48 = 93
+45 + 49 = 94
+45 + 50 = 95
+45 + 51 = 96
+45 + 52 = 97
+45 + 53 = 98
+45 + 54 = 99
+45 + 55 = 100
+45 + 56 = 101
+45 + 57 = 102
+45 + 58 = 103
+45 + 59 = 104
+45 + 60 = 105
+45 + 61 = 106
+45 + 62 = 107
+45 + 63 = 108
+46 + 0 = 46
+46 + 1 = 47
+46 + 2 = 48
+46 + 3 = 49
+46 + 4 = 50
+46 + 5 = 51
+46 + 6 = 52
+46 + 7 = 53
+46 + 8 = 54
+46 + 9 = 55
+46 + 10 = 56
+46 + 11 = 57
+46 + 12 = 58
+46 + 13 = 59
+46 + 14 = 60
+46 + 15 = 61
+46 + 16 = 62
+46 + 17 = 63
+46 + 18 = 64
+46 + 19 = 65
+46 + 20 = 66
+46 + 21 = 67
+46 + 22 = 68
+46 + 23 = 69
+46 + 24 = 70
+46 + 25 = 71
+46 + 26 = 72
+46 + 27 = 73
+46 + 28 = 74
+46 + 29 = 75
+46 + 30 = 76
+46 + 31 = 77
+46 + 32 = 78
+46 + 33 = 79
+46 + 34 = 80
+46 + 35 = 81
+46 + 36 = 82
+46 + 37 = 83
+46 + 38 = 84
+46 + 39 = 85
+46 + 40 = 86
+46 + 41 = 87
+46 + 42 = 88
+46 + 43 = 89
+46 + 44 = 90
+46 + 45 = 91
+46 + 46 = 92
+46 + 47 = 93
+46 + 48 = 94
+46 + 49 = 95
+46 + 50 = 96
+46 + 51 = 97
+46 + 52 = 98
+46 + 53 = 99
+46 + 54 = 100
+46 + 55 = 101
+46 + 56 = 102
+46 + 57 = 103
+46 + 58 = 104
+46 + 59 = 105
+46 + 60 = 106
+46 + 61 = 107
+46 + 62 = 108
+46 + 63 = 109
+47 + 0 = 47
+47 + 1 = 48
+47 + 2 = 49
+47 + 3 = 50
+47 + 4 = 51
+47 + 5 = 52
+47 + 6 = 53
+47 + 7 = 54
+47 + 8 = 55
+47 + 9 = 56
+47 + 10 = 57
+47 + 11 = 58
+47 + 12 = 59
+47 + 13 = 60
+47 + 14 = 61
+47 + 15 = 62
+47 + 16 = 63
+47 + 17 = 64
+47 + 18 = 65
+47 + 19 = 66
+47 + 20 = 67
+47 + 21 = 68
+47 + 22 = 69
+47 + 23 = 70
+47 + 24 = 71
+47 + 25 = 72
+47 + 26 = 73
+47 + 27 = 74
+47 + 28 = 75
+47 + 29 = 76
+47 + 30 = 77
+47 + 31 = 78
+47 + 32 = 79
+47 + 33 = 80
+47 + 34 = 81
+47 + 35 = 82
+47 + 36 = 83
+47 + 37 = 84
+47 + 38 = 85
+47 + 39 = 86
+47 + 40 = 87
+47 + 41 = 88
+47 + 42 = 89
+47 + 43 = 90
+47 + 44 = 91
+47 + 45 = 92
+47 + 46 = 93
+47 + 47 = 94
+47 + 48 = 95
+47 + 49 = 96
+47 + 50 = 97
+47 + 51 = 98
+47 + 52 = 99
+47 + 53 = 100
+47 + 54 = 101
+47 + 55 = 102
+47 + 56 = 103
+47 + 57 = 104
+47 + 58 = 105
+47 + 59 = 106
+47 + 60 = 107
+47 + 61 = 108
+47 + 62 = 109
+47 + 63 = 110
+48 + 0 = 48
+48 + 1 = 49
+48 + 2 = 50
+48 + 3 = 51
+48 + 4 = 52
+48 + 5 = 53
+48 + 6 = 54
+48 + 7 = 55
+48 + 8 = 56
+48 + 9 = 57
+48 + 10 = 58
+48 + 11 = 59
+48 + 12 = 60
+48 + 13 = 61
+48 + 14 = 62
+48 + 15 = 63
+48 + 16 = 64
+48 + 17 = 65
+48 + 18 = 66
+48 + 19 = 67
+48 + 20 = 68
+48 + 21 = 69
+48 + 22 = 70
+48 + 23 = 71
+48 + 24 = 72
+48 + 25 = 73
+48 + 26 = 74
+48 + 27 = 75
+48 + 28 = 76
+48 + 29 = 77
+48 + 30 = 78
+48 + 31 = 79
+48 + 32 = 80
+48 + 33 = 81
+48 + 34 = 82
+48 + 35 = 83
+48 + 36 = 84
+48 + 37 = 85
+48 + 38 = 86
+48 + 39 = 87
+48 + 40 = 88
+48 + 41 = 89
+48 + 42 = 90
+48 + 43 = 91
+48 + 44 = 92
+48 + 45 = 93
+48 + 46 = 94
+48 + 47 = 95
+48 + 48 = 96
+48 + 49 = 97
+48 + 50 = 98
+48 + 51 = 99
+48 + 52 = 100
+48 + 53 = 101
+48 + 54 = 102
+48 + 55 = 103
+48 + 56 = 104
+48 + 57 = 105
+48 + 58 = 106
+48 + 59 = 107
+48 + 60 = 108
+48 + 61 = 109
+48 + 62 = 110
+48 + 63 = 111
+49 + 0 = 49
+49 + 1 = 50
+49 + 2 = 51
+49 + 3 = 52
+49 + 4 = 53
+49 + 5 = 54
+49 + 6 = 55
+49 + 7 = 56
+49 + 8 = 57
+49 + 9 = 58
+49 + 10 = 59
+49 + 11 = 60
+49 + 12 = 61
+49 + 13 = 62
+49 + 14 = 63
+49 + 15 = 64
+49 + 16 = 65
+49 + 17 = 66
+49 + 18 = 67
+49 + 19 = 68
+49 + 20 = 69
+49 + 21 = 70
+49 + 22 = 71
+49 + 23 = 72
+49 + 24 = 73
+49 + 25 = 74
+49 + 26 = 75
+49 + 27 = 76
+49 + 28 = 77
+49 + 29 = 78
+49 + 30 = 79
+49 + 31 = 80
+49 + 32 = 81
+49 + 33 = 82
+49 + 34 = 83
+49 + 35 = 84
+49 + 36 = 85
+49 + 37 = 86
+49 + 38 = 87
+49 + 39 = 88
+49 + 40 = 89
+49 + 41 = 90
+49 + 42 = 91
+49 + 43 = 92
+49 + 44 = 93
+49 + 45 = 94
+49 + 46 = 95
+49 + 47 = 96
+49 + 48 = 97
+49 + 49 = 98
+49 + 50 = 99
+49 + 51 = 100
+49 + 52 = 101
+49 + 53 = 102
+49 + 54 = 103
+49 + 55 = 104
+49 + 56 = 105
+49 + 57 = 106
+49 + 58 = 107
+49 + 59 = 108
+49 + 60 = 109
+49 + 61 = 110
+49 + 62 = 111
+49 + 63 = 112
+50 + 0 = 50
+50 + 1 = 51
+50 + 2 = 52
+50 + 3 = 53
+50 + 4 = 54
+50 + 5 = 55
+50 + 6 = 56
+50 + 7 = 57
+50 + 8 = 58
+50 + 9 = 59
+50 + 10 = 60
+50 + 11 = 61
+50 + 12 = 62
+50 + 13 = 63
+50 + 14 = 64
+50 + 15 = 65
+50 + 16 = 66
+50 + 17 = 67
+50 + 18 = 68
+50 + 19 = 69
+50 + 20 = 70
+50 + 21 = 71
+50 + 22 = 72
+50 + 23 = 73
+50 + 24 = 74
+50 + 25 = 75
+50 + 26 = 76
+50 + 27 = 77
+50 + 28 = 78
+50 + 29 = 79
+50 + 30 = 80
+50 + 31 = 81
+50 + 32 = 82
+50 + 33 = 83
+50 + 34 = 84
+50 + 35 = 85
+50 + 36 = 86
+50 + 37 = 87
+50 + 38 = 88
+50 + 39 = 89
+50 + 40 = 90
+50 + 41 = 91
+50 + 42 = 92
+50 + 43 = 93
+50 + 44 = 94
+50 + 45 = 95
+50 + 46 = 96
+50 + 47 = 97
+50 + 48 = 98
+50 + 49 = 99
+50 + 50 = 100
+50 + 51 = 101
+50 + 52 = 102
+50 + 53 = 103
+50 + 54 = 104
+50 + 55 = 105
+50 + 56 = 106
+50 + 57 = 107
+50 + 58 = 108
+50 + 59 = 109
+50 + 60 = 110
+50 + 61 = 111
+50 + 62 = 112
+50 + 63 = 113
+51 + 0 = 51
+51 + 1 = 52
+51 + 2 = 53
+51 + 3 = 54
+51 + 4 = 55
+51 + 5 = 56
+51 + 6 = 57
+51 + 7 = 58
+51 + 8 = 59
+51 + 9 = 60
+51 + 10 = 61
+51 + 11 = 62
+51 + 12 = 63
+51 + 13 = 64
+51 + 14 = 65
+51 + 15 = 66
+51 + 16 = 67
+51 + 17 = 68
+51 + 18 = 69
+51 + 19 = 70
+51 + 20 = 71
+51 + 21 = 72
+51 + 22 = 73
+51 + 23 = 74
+51 + 24 = 75
+51 + 25 = 76
+51 + 26 = 77
+51 + 27 = 78
+51 + 28 = 79
+51 + 29 = 80
+51 + 30 = 81
+51 + 31 = 82
+51 + 32 = 83
+51 + 33 = 84
+51 + 34 = 85
+51 + 35 = 86
+51 + 36 = 87
+51 + 37 = 88
+51 + 38 = 89
+51 + 39 = 90
+51 + 40 = 91
+51 + 41 = 92
+51 + 42 = 93
+51 + 43 = 94
+51 + 44 = 95
+51 + 45 = 96
+51 + 46 = 97
+51 + 47 = 98
+51 + 48 = 99
+51 + 49 = 100
+51 + 50 = 101
+51 + 51 = 102
+51 + 52 = 103
+51 + 53 = 104
+51 + 54 = 105
+51 + 55 = 106
+51 + 56 = 107
+51 + 57 = 108
+51 + 58 = 109
+51 + 59 = 110
+51 + 60 = 111
+51 + 61 = 112
+51 + 62 = 113
+51 + 63 = 114
+52 + 0 = 52
+52 + 1 = 53
+52 + 2 = 54
+52 + 3 = 55
+52 + 4 = 56
+52 + 5 = 57
+52 + 6 = 58
+52 + 7 = 59
+52 + 8 = 60
+52 + 9 = 61
+52 + 10 = 62
+52 + 11 = 63
+52 + 12 = 64
+52 + 13 = 65
+52 + 14 = 66
+52 + 15 = 67
+52 + 16 = 68
+52 + 17 = 69
+52 + 18 = 70
+52 + 19 = 71
+52 + 20 = 72
+52 + 21 = 73
+52 + 22 = 74
+52 + 23 = 75
+52 + 24 = 76
+52 + 25 = 77
+52 + 26 = 78
+52 + 27 = 79
+52 + 28 = 80
+52 + 29 = 81
+52 + 30 = 82
+52 + 31 = 83
+52 + 32 = 84
+52 + 33 = 85
+52 + 34 = 86
+52 + 35 = 87
+52 + 36 = 88
+52 + 37 = 89
+52 + 38 = 90
+52 + 39 = 91
+52 + 40 = 92
+52 + 41 = 93
+52 + 42 = 94
+52 + 43 = 95
+52 + 44 = 96
+52 + 45 = 97
+52 + 46 = 98
+52 + 47 = 99
+52 + 48 = 100
+52 + 49 = 101
+52 + 50 = 102
+52 + 51 = 103
+52 + 52 = 104
+52 + 53 = 105
+52 + 54 = 106
+52 + 55 = 107
+52 + 56 = 108
+52 + 57 = 109
+52 + 58 = 110
+52 + 59 = 111
+52 + 60 = 112
+52 + 61 = 113
+52 + 62 = 114
+52 + 63 = 115
+53 + 0 = 53
+53 + 1 = 54
+53 + 2 = 55
+53 + 3 = 56
+53 + 4 = 57
+53 + 5 = 58
+53 + 6 = 59
+53 + 7 = 60
+53 + 8 = 61
+53 + 9 = 62
+53 + 10 = 63
+53 + 11 = 64
+53 + 12 = 65
+53 + 13 = 66
+53 + 14 = 67
+53 + 15 = 68
+53 + 16 = 69
+53 + 17 = 70
+53 + 18 = 71
+53 + 19 = 72
+53 + 20 = 73
+53 + 21 = 74
+53 + 22 = 75
+53 + 23 = 76
+53 + 24 = 77
+53 + 25 = 78
+53 + 26 = 79
+53 + 27 = 80
+53 + 28 = 81
+53 + 29 = 82
+53 + 30 = 83
+53 + 31 = 84
+53 + 32 = 85
+53 + 33 = 86
+53 + 34 = 87
+53 + 35 = 88
+53 + 36 = 89
+53 + 37 = 90
+53 + 38 = 91
+53 + 39 = 92
+53 + 40 = 93
+53 + 41 = 94
+53 + 42 = 95
+53 + 43 = 96
+53 + 44 = 97
+53 + 45 = 98
+53 + 46 = 99
+53 + 47 = 100
+53 + 48 = 101
+53 + 49 = 102
+53 + 50 = 103
+53 + 51 = 104
+53 + 52 = 105
+53 + 53 = 106
+53 + 54 = 107
+53 + 55 = 108
+53 + 56 = 109
+53 + 57 = 110
+53 + 58 = 111
+53 + 59 = 112
+53 + 60 = 113
+53 + 61 = 114
+53 + 62 = 115
+53 + 63 = 116
+54 + 0 = 54
+54 + 1 = 55
+54 + 2 = 56
+54 + 3 = 57
+54 + 4 = 58
+54 + 5 = 59
+54 + 6 = 60
+54 + 7 = 61
+54 + 8 = 62
+54 + 9 = 63
+54 + 10 = 64
+54 + 11 = 65
+54 + 12 = 66
+54 + 13 = 67
+54 + 14 = 68
+54 + 15 = 69
+54 + 16 = 70
+54 + 17 = 71
+54 + 18 = 72
+54 + 19 = 73
+54 + 20 = 74
+54 + 21 = 75
+54 + 22 = 76
+54 + 23 = 77
+54 + 24 = 78
+54 + 25 = 79
+54 + 26 = 80
+54 + 27 = 81
+54 + 28 = 82
+54 + 29 = 83
+54 + 30 = 84
+54 + 31 = 85
+54 + 32 = 86
+54 + 33 = 87
+54 + 34 = 88
+54 + 35 = 89
+54 + 36 = 90
+54 + 37 = 91
+54 + 38 = 92
+54 + 39 = 93
+54 + 40 = 94
+54 + 41 = 95
+54 + 42 = 96
+54 + 43 = 97
+54 + 44 = 98
+54 + 45 = 99
+54 + 46 = 100
+54 + 47 = 101
+54 + 48 = 102
+54 + 49 = 103
+54 + 50 = 104
+54 + 51 = 105
+54 + 52 = 106
+54 + 53 = 107
+54 + 54 = 108
+54 + 55 = 109
+54 + 56 = 110
+54 + 57 = 111
+54 + 58 = 112
+54 + 59 = 113
+54 + 60 = 114
+54 + 61 = 115
+54 + 62 = 116
+54 + 63 = 117
+55 + 0 = 55
+55 + 1 = 56
+55 + 2 = 57
+55 + 3 = 58
+55 + 4 = 59
+55 + 5 = 60
+55 + 6 = 61
+55 + 7 = 62
+55 + 8 = 63
+55 + 9 = 64
+55 + 10 = 65
+55 + 11 = 66
+55 + 12 = 67
+55 + 13 = 68
+55 + 14 = 69
+55 + 15 = 70
+55 + 16 = 71
+55 + 17 = 72
+55 + 18 = 73
+55 + 19 = 74
+55 + 20 = 75
+55 + 21 = 76
+55 + 22 = 77
+55 + 23 = 78
+55 + 24 = 79
+55 + 25 = 80
+55 + 26 = 81
+55 + 27 = 82
+55 + 28 = 83
+55 + 29 = 84
+55 + 30 = 85
+55 + 31 = 86
+55 + 32 = 87
+55 + 33 = 88
+55 + 34 = 89
+55 + 35 = 90
+55 + 36 = 91
+55 + 37 = 92
+55 + 38 = 93
+55 + 39 = 94
+55 + 40 = 95
+55 + 41 = 96
+55 + 42 = 97
+55 + 43 = 98
+55 + 44 = 99
+55 + 45 = 100
+55 + 46 = 101
+55 + 47 = 102
+55 + 48 = 103
+55 + 49 = 104
+55 + 50 = 105
+55 + 51 = 106
+55 + 52 = 107
+55 + 53 = 108
+55 + 54 = 109
+55 + 55 = 110
+55 + 56 = 111
+55 + 57 = 112
+55 + 58 = 113
+55 + 59 = 114
+55 + 60 = 115
+55 + 61 = 116
+55 + 62 = 117
+55 + 63 = 118
+56 + 0 = 56
+56 + 1 = 57
+56 + 2 = 58
+56 + 3 = 59
+56 + 4 = 60
+56 + 5 = 61
+56 + 6 = 62
+56 + 7 = 63
+56 + 8 = 64
+56 + 9 = 65
+56 + 10 = 66
+56 + 11 = 67
+56 + 12 = 68
+56 + 13 = 69
+56 + 14 = 70
+56 + 15 = 71
+56 + 16 = 72
+56 + 17 = 73
+56 + 18 = 74
+56 + 19 = 75
+56 + 20 = 76
+56 + 21 = 77
+56 + 22 = 78
+56 + 23 = 79
+56 + 24 = 80
+56 + 25 = 81
+56 + 26 = 82
+56 + 27 = 83
+56 + 28 = 84
+56 + 29 = 85
+56 + 30 = 86
+56 + 31 = 87
+56 + 32 = 88
+56 + 33 = 89
+56 + 34 = 90
+56 + 35 = 91
+56 + 36 = 92
+56 + 37 = 93
+56 + 38 = 94
+56 + 39 = 95
+56 + 40 = 96
+56 + 41 = 97
+56 + 42 = 98
+56 + 43 = 99
+56 + 44 = 100
+56 + 45 = 101
+56 + 46 = 102
+56 + 47 = 103
+56 + 48 = 104
+56 + 49 = 105
+56 + 50 = 106
+56 + 51 = 107
+56 + 52 = 108
+56 + 53 = 109
+56 + 54 = 110
+56 + 55 = 111
+56 + 56 = 112
+56 + 57 = 113
+56 + 58 = 114
+56 + 59 = 115
+56 + 60 = 116
+56 + 61 = 117
+56 + 62 = 118
+56 + 63 = 119
+57 + 0 = 57
+57 + 1 = 58
+57 + 2 = 59
+57 + 3 = 60
+57 + 4 = 61
+57 + 5 = 62
+57 + 6 = 63
+57 + 7 = 64
+57 + 8 = 65
+57 + 9 = 66
+57 + 10 = 67
+57 + 11 = 68
+57 + 12 = 69
+57 + 13 = 70
+57 + 14 = 71
+57 + 15 = 72
+57 + 16 = 73
+57 + 17 = 74
+57 + 18 = 75
+57 + 19 = 76
+57 + 20 = 77
+57 + 21 = 78
+57 + 22 = 79
+57 + 23 = 80
+57 + 24 = 81
+57 + 25 = 82
+57 + 26 = 83
+57 + 27 = 84
+57 + 28 = 85
+57 + 29 = 86
+57 + 30 = 87
+57 + 31 = 88
+57 + 32 = 89
+57 + 33 = 90
+57 + 34 = 91
+57 + 35 = 92
+57 + 36 = 93
+57 + 37 = 94
+57 + 38 = 95
+57 + 39 = 96
+57 + 40 = 97
+57 + 41 = 98
+57 + 42 = 99
+57 + 43 = 100
+57 + 44 = 101
+57 + 45 = 102
+57 + 46 = 103
+57 + 47 = 104
+57 + 48 = 105
+57 + 49 = 106
+57 + 50 = 107
+57 + 51 = 108
+57 + 52 = 109
+57 + 53 = 110
+57 + 54 = 111
+57 + 55 = 112
+57 + 56 = 113
+57 + 57 = 114
+57 + 58 = 115
+57 + 59 = 116
+57 + 60 = 117
+57 + 61 = 118
+57 + 62 = 119
+57 + 63 = 120
+58 + 0 = 58
+58 + 1 = 59
+58 + 2 = 60
+58 + 3 = 61
+58 + 4 = 62
+58 + 5 = 63
+58 + 6 = 64
+58 + 7 = 65
+58 + 8 = 66
+58 + 9 = 67
+58 + 10 = 68
+58 + 11 = 69
+58 + 12 = 70
+58 + 13 = 71
+58 + 14 = 72
+58 + 15 = 73
+58 + 16 = 74
+58 + 17 = 75
+58 + 18 = 76
+58 + 19 = 77
+58 + 20 = 78
+58 + 21 = 79
+58 + 22 = 80
+58 + 23 = 81
+58 + 24 = 82
+58 + 25 = 83
+58 + 26 = 84
+58 + 27 = 85
+58 + 28 = 86
+58 + 29 = 87
+58 + 30 = 88
+58 + 31 = 89
+58 + 32 = 90
+58 + 33 = 91
+58 + 34 = 92
+58 + 35 = 93
+58 + 36 = 94
+58 + 37 = 95
+58 + 38 = 96
+58 + 39 = 97
+58 + 40 = 98
+58 + 41 = 99
+58 + 42 = 100
+58 + 43 = 101
+58 + 44 = 102
+58 + 45 = 103
+58 + 46 = 104
+58 + 47 = 105
+58 + 48 = 106
+58 + 49 = 107
+58 + 50 = 108
+58 + 51 = 109
+58 + 52 = 110
+58 + 53 = 111
+58 + 54 = 112
+58 + 55 = 113
+58 + 56 = 114
+58 + 57 = 115
+58 + 58 = 116
+58 + 59 = 117
+58 + 60 = 118
+58 + 61 = 119
+58 + 62 = 120
+58 + 63 = 121
+59 + 0 = 59
+59 + 1 = 60
+59 + 2 = 61
+59 + 3 = 62
+59 + 4 = 63
+59 + 5 = 64
+59 + 6 = 65
+59 + 7 = 66
+59 + 8 = 67
+59 + 9 = 68
+59 + 10 = 69
+59 + 11 = 70
+59 + 12 = 71
+59 + 13 = 72
+59 + 14 = 73
+59 + 15 = 74
+59 + 16 = 75
+59 + 17 = 76
+59 + 18 = 77
+59 + 19 = 78
+59 + 20 = 79
+59 + 21 = 80
+59 + 22 = 81
+59 + 23 = 82
+59 + 24 = 83
+59 + 25 = 84
+59 + 26 = 85
+59 + 27 = 86
+59 + 28 = 87
+59 + 29 = 88
+59 + 30 = 89
+59 + 31 = 90
+59 + 32 = 91
+59 + 33 = 92
+59 + 34 = 93
+59 + 35 = 94
+59 + 36 = 95
+59 + 37 = 96
+59 + 38 = 97
+59 + 39 = 98
+59 + 40 = 99
+59 + 41 = 100
+59 + 42 = 101
+59 + 43 = 102
+59 + 44 = 103
+59 + 45 = 104
+59 + 46 = 105
+59 + 47 = 106
+59 + 48 = 107
+59 + 49 = 108
+59 + 50 = 109
+59 + 51 = 110
+59 + 52 = 111
+59 + 53 = 112
+59 + 54 = 113
+59 + 55 = 114
+59 + 56 = 115
+59 + 57 = 116
+59 + 58 = 117
+59 + 59 = 118
+59 + 60 = 119
+59 + 61 = 120
+59 + 62 = 121
+59 + 63 = 122
+60 + 0 = 60
+60 + 1 = 61
+60 + 2 = 62
+60 + 3 = 63
+60 + 4 = 64
+60 + 5 = 65
+60 + 6 = 66
+60 + 7 = 67
+60 + 8 = 68
+60 + 9 = 69
+60 + 10 = 70
+60 + 11 = 71
+60 + 12 = 72
+60 + 13 = 73
+60 + 14 = 74
+60 + 15 = 75
+60 + 16 = 76
+60 + 17 = 77
+60 + 18 = 78
+60 + 19 = 79
+60 + 20 = 80
+60 + 21 = 81
+60 + 22 = 82
+60 + 23 = 83
+60 + 24 = 84
+60 + 25 = 85
+60 + 26 = 86
+60 + 27 = 87
+60 + 28 = 88
+60 + 29 = 89
+60 + 30 = 90
+60 + 31 = 91
+60 + 32 = 92
+60 + 33 = 93
+60 + 34 = 94
+60 + 35 = 95
+60 + 36 = 96
+60 + 37 = 97
+60 + 38 = 98
+60 + 39 = 99
+60 + 40 = 100
+60 + 41 = 101
+60 + 42 = 102
+60 + 43 = 103
+60 + 44 = 104
+60 + 45 = 105
+60 + 46 = 106
+60 + 47 = 107
+60 + 48 = 108
+60 + 49 = 109
+60 + 50 = 110
+60 + 51 = 111
+60 + 52 = 112
+60 + 53 = 113
+60 + 54 = 114
+60 + 55 = 115
+60 + 56 = 116
+60 + 57 = 117
+60 + 58 = 118
+60 + 59 = 119
+60 + 60 = 120
+60 + 61 = 121
+60 + 62 = 122
+60 + 63 = 123
+61 + 0 = 61
+61 + 1 = 62
+61 + 2 = 63
+61 + 3 = 64
+61 + 4 = 65
+61 + 5 = 66
+61 + 6 = 67
+61 + 7 = 68
+61 + 8 = 69
+61 + 9 = 70
+61 + 10 = 71
+61 + 11 = 72
+61 + 12 = 73
+61 + 13 = 74
+61 + 14 = 75
+61 + 15 = 76
+61 + 16 = 77
+61 + 17 = 78
+61 + 18 = 79
+61 + 19 = 80
+61 + 20 = 81
+61 + 21 = 82
+61 + 22 = 83
+61 + 23 = 84
+61 + 24 = 85
+61 + 25 = 86
+61 + 26 = 87
+61 + 27 = 88
+61 + 28 = 89
+61 + 29 = 90
+61 + 30 = 91
+61 + 31 = 92
+61 + 32 = 93
+61 + 33 = 94
+61 + 34 = 95
+61 + 35 = 96
+61 + 36 = 97
+61 + 37 = 98
+61 + 38 = 99
+61 + 39 = 100
+61 + 40 = 101
+61 + 41 = 102
+61 + 42 = 103
+61 + 43 = 104
+61 + 44 = 105
+61 + 45 = 106
+61 + 46 = 107
+61 + 47 = 108
+61 + 48 = 109
+61 + 49 = 110
+61 + 50 = 111
+61 + 51 = 112
+61 + 52 = 113
+61 + 53 = 114
+61 + 54 = 115
+61 + 55 = 116
+61 + 56 = 117
+61 + 57 = 118
+61 + 58 = 119
+61 + 59 = 120
+61 + 60 = 121
+61 + 61 = 122
+61 + 62 = 123
+61 + 63 = 124
+62 + 0 = 62
+62 + 1 = 63
+62 + 2 = 64
+62 + 3 = 65
+62 + 4 = 66
+62 + 5 = 67
+62 + 6 = 68
+62 + 7 = 69
+62 + 8 = 70
+62 + 9 = 71
+62 + 10 = 72
+62 + 11 = 73
+62 + 12 = 74
+62 + 13 = 75
+62 + 14 = 76
+62 + 15 = 77
+62 + 16 = 78
+62 + 17 = 79
+62 + 18 = 80
+62 + 19 = 81
+62 + 20 = 82
+62 + 21 = 83
+62 + 22 = 84
+62 + 23 = 85
+62 + 24 = 86
+62 + 25 = 87
+62 + 26 = 88
+62 + 27 = 89
+62 + 28 = 90
+62 + 29 = 91
+62 + 30 = 92
+62 + 31 = 93
+62 + 32 = 94
+62 + 33 = 95
+62 + 34 = 96
+62 + 35 = 97
+62 + 36 = 98
+62 + 37 = 99
+62 + 38 = 100
+62 + 39 = 101
+62 + 40 = 102
+62 + 41 = 103
+62 + 42 = 104
+62 + 43 = 105
+62 + 44 = 106
+62 + 45 = 107
+62 + 46 = 108
+62 + 47 = 109
+62 + 48 = 110
+62 + 49 = 111
+62 + 50 = 112
+62 + 51 = 113
+62 + 52 = 114
+62 + 53 = 115
+62 + 54 = 116
+62 + 55 = 117
+62 + 56 = 118
+62 + 57 = 119
+62 + 58 = 120
+62 + 59 = 121
+62 + 60 = 122
+62 + 61 = 123
+62 + 62 = 124
+62 + 63 = 125
+63 + 0 = 63
+63 + 1 = 64
+63 + 2 = 65
+63 + 3 = 66
+63 + 4 = 67
+63 + 5 = 68
+63 + 6 = 69
+63 + 7 = 70
+63 + 8 = 71
+63 + 9 = 72
+63 + 10 = 73
+63 + 11 = 74
+63 + 12 = 75
+63 + 13 = 76
+63 + 14 = 77
+63 + 15 = 78
+63 + 16 = 79
+63 + 17 = 80
+63 + 18 = 81
+63 + 19 = 82
+63 + 20 = 83
+63 + 21 = 84
+63 + 22 = 85
+63 + 23 = 86
+63 + 24 = 87
+63 + 25 = 88
+63 + 26 = 89
+63 + 27 = 90
+63 + 28 = 91
+63 + 29 = 92
+63 + 30 = 93
+63 + 31 = 94
+63 + 32 = 95
+63 + 33 = 96
+63 + 34 = 97
+63 + 35 = 98
+63 + 36 = 99
+63 + 37 = 100
+63 + 38 = 101
+63 + 39 = 102
+63 + 40 = 103
+63 + 41 = 104
+63 + 42 = 105
+63 + 43 = 106
+63 + 44 = 107
+63 + 45 = 108
+63 + 46 = 109
+63 + 47 = 110
+63 + 48 = 111
+63 + 49 = 112
+63 + 50 = 113
+63 + 51 = 114
+63 + 52 = 115
+63 + 53 = 116
+63 + 54 = 117
+63 + 55 = 118
+63 + 56 = 119
+63 + 57 = 120
+63 + 58 = 121
+63 + 59 = 122
+63 + 60 = 123
+63 + 61 = 124
+63 + 62 = 125
+63 + 63 = 126
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/int_to_bits.f b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/int_to_bits.f
new file mode 100644
index 000000000..6ec30baa4
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/int_to_bits.f
@@ -0,0 +1,3 @@
+int_to_bits/datawidth.cpp
+int_to_bits/stimgen.cpp
+int_to_bits/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/main.cpp b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/main.cpp
new file mode 100644
index 000000000..c4d9d6a59
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/main.cpp
@@ -0,0 +1,72 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /***************************************/
+ /* Main Filename: main.cc */
+ /***************************************/
+ /* */
+ /* 7-bit bool = int + int */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /***************************************/
+
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Signal Instantiation
+ sc_signal<int> in1 ("in1");
+ sc_signal<int> in2 ("in2");
+ sc_signal_bool_vector result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/stimgen.cpp
new file mode 100644
index 000000000..44e604d6c
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/stimgen.cpp
@@ -0,0 +1,68 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read() << " + " << in2.read()
+ << " = " << result.read().to_uint() << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/stimgen.h
new file mode 100644
index 000000000..0d2e45deb
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/int_to_bits/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const sc_signal_bool_vector& result;
+ // Outputs
+ sc_signal<int>& in1;
+ sc_signal<int>& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const sc_signal_bool_vector& RESULT,
+ sc_signal<int>& IN1,
+ sc_signal<int>& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/promote_add/common.h b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/common.h
new file mode 100644
index 000000000..004591939
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/common.h
@@ -0,0 +1,48 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ common.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#ifndef COMMON_H
+#define COMMON_H
+
+#include "systemc.h"
+
+typedef sc_bv<6> bool_vector6;
+typedef sc_bv<7> bool_vector7;
+typedef sc_signal<bool_vector6> sc_signal_bool_vector6;
+typedef sc_signal<bool_vector7> sc_signal_bool_vector7;
+
+#endif
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/promote_add/datawidth.cpp b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/datawidth.cpp
new file mode 100644
index 000000000..dabfea208
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/datawidth.cpp
@@ -0,0 +1,67 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*******************************************/
+ /* Implementation Filename: datawidth.cc */
+ /*******************************************/
+
+#include "datawidth.h"
+
+void
+datawidth::entry()
+{
+ bool_vector7 tmp_a;
+ bool_vector7 tmp_b;
+ bool_vector7 tmp_result;
+
+ while (true) {
+
+ // HANDSHAKING
+ do { wait(); } while (ready != 1);
+
+ // COMPUTATION
+ // tmp_a = ('0', in1.read()); // extend in1 with 0 to make 7-bit
+ tmp_a = ("0", in1.read()); // extend in1 with 0 to make 7-bit
+ // tmp_b = ('0', in2.read()); // extend in2 with 0 to make 7-bit
+ tmp_b = ("0", in2.read()); // extend in2 with 0 to make 7-bit
+ tmp_result = tmp_a.to_uint() + tmp_b.to_uint();
+
+ // WRITE OUTPUT
+ result.write(tmp_result); // result = in1 + in2
+ wait();
+ }
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/promote_add/datawidth.h b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/datawidth.h
new file mode 100644
index 000000000..82a1b838d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/datawidth.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ datawidth.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /**************************************/
+ /* Interface Filename: datawidth.h */
+ /**************************************/
+
+#include "common.h"
+
+SC_MODULE( datawidth )
+{
+ SC_HAS_PROCESS( datawidth );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const sc_signal_bool_vector6& in1;
+ const sc_signal_bool_vector6& in2;
+ const sc_signal<bool>& ready;
+ // Outputs
+ sc_signal_bool_vector7& result;
+
+ // Constructor
+ datawidth (sc_module_name NAME,
+ sc_clock& TICK,
+ const sc_signal_bool_vector6& IN1,
+ const sc_signal_bool_vector6& IN2,
+ const sc_signal<bool>& READY,
+ sc_signal_bool_vector7& RESULT )
+
+ :
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY),
+ result (RESULT)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/promote_add/golden/promote_add.log b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/golden/promote_add.log
new file mode 100644
index 000000000..b168b0482
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/golden/promote_add.log
@@ -0,0 +1,4099 @@
+SystemC Simulation
+0 + 0 = 0
+0 + 1 = 1
+0 + 2 = 2
+0 + 3 = 3
+0 + 4 = 4
+0 + 5 = 5
+0 + 6 = 6
+0 + 7 = 7
+0 + 8 = 8
+0 + 9 = 9
+0 + 10 = 10
+0 + 11 = 11
+0 + 12 = 12
+0 + 13 = 13
+0 + 14 = 14
+0 + 15 = 15
+0 + 16 = 16
+0 + 17 = 17
+0 + 18 = 18
+0 + 19 = 19
+0 + 20 = 20
+0 + 21 = 21
+0 + 22 = 22
+0 + 23 = 23
+0 + 24 = 24
+0 + 25 = 25
+0 + 26 = 26
+0 + 27 = 27
+0 + 28 = 28
+0 + 29 = 29
+0 + 30 = 30
+0 + 31 = 31
+0 + 32 = 32
+0 + 33 = 33
+0 + 34 = 34
+0 + 35 = 35
+0 + 36 = 36
+0 + 37 = 37
+0 + 38 = 38
+0 + 39 = 39
+0 + 40 = 40
+0 + 41 = 41
+0 + 42 = 42
+0 + 43 = 43
+0 + 44 = 44
+0 + 45 = 45
+0 + 46 = 46
+0 + 47 = 47
+0 + 48 = 48
+0 + 49 = 49
+0 + 50 = 50
+0 + 51 = 51
+0 + 52 = 52
+0 + 53 = 53
+0 + 54 = 54
+0 + 55 = 55
+0 + 56 = 56
+0 + 57 = 57
+0 + 58 = 58
+0 + 59 = 59
+0 + 60 = 60
+0 + 61 = 61
+0 + 62 = 62
+0 + 63 = 63
+1 + 0 = 1
+1 + 1 = 2
+1 + 2 = 3
+1 + 3 = 4
+1 + 4 = 5
+1 + 5 = 6
+1 + 6 = 7
+1 + 7 = 8
+1 + 8 = 9
+1 + 9 = 10
+1 + 10 = 11
+1 + 11 = 12
+1 + 12 = 13
+1 + 13 = 14
+1 + 14 = 15
+1 + 15 = 16
+1 + 16 = 17
+1 + 17 = 18
+1 + 18 = 19
+1 + 19 = 20
+1 + 20 = 21
+1 + 21 = 22
+1 + 22 = 23
+1 + 23 = 24
+1 + 24 = 25
+1 + 25 = 26
+1 + 26 = 27
+1 + 27 = 28
+1 + 28 = 29
+1 + 29 = 30
+1 + 30 = 31
+1 + 31 = 32
+1 + 32 = 33
+1 + 33 = 34
+1 + 34 = 35
+1 + 35 = 36
+1 + 36 = 37
+1 + 37 = 38
+1 + 38 = 39
+1 + 39 = 40
+1 + 40 = 41
+1 + 41 = 42
+1 + 42 = 43
+1 + 43 = 44
+1 + 44 = 45
+1 + 45 = 46
+1 + 46 = 47
+1 + 47 = 48
+1 + 48 = 49
+1 + 49 = 50
+1 + 50 = 51
+1 + 51 = 52
+1 + 52 = 53
+1 + 53 = 54
+1 + 54 = 55
+1 + 55 = 56
+1 + 56 = 57
+1 + 57 = 58
+1 + 58 = 59
+1 + 59 = 60
+1 + 60 = 61
+1 + 61 = 62
+1 + 62 = 63
+1 + 63 = 64
+2 + 0 = 2
+2 + 1 = 3
+2 + 2 = 4
+2 + 3 = 5
+2 + 4 = 6
+2 + 5 = 7
+2 + 6 = 8
+2 + 7 = 9
+2 + 8 = 10
+2 + 9 = 11
+2 + 10 = 12
+2 + 11 = 13
+2 + 12 = 14
+2 + 13 = 15
+2 + 14 = 16
+2 + 15 = 17
+2 + 16 = 18
+2 + 17 = 19
+2 + 18 = 20
+2 + 19 = 21
+2 + 20 = 22
+2 + 21 = 23
+2 + 22 = 24
+2 + 23 = 25
+2 + 24 = 26
+2 + 25 = 27
+2 + 26 = 28
+2 + 27 = 29
+2 + 28 = 30
+2 + 29 = 31
+2 + 30 = 32
+2 + 31 = 33
+2 + 32 = 34
+2 + 33 = 35
+2 + 34 = 36
+2 + 35 = 37
+2 + 36 = 38
+2 + 37 = 39
+2 + 38 = 40
+2 + 39 = 41
+2 + 40 = 42
+2 + 41 = 43
+2 + 42 = 44
+2 + 43 = 45
+2 + 44 = 46
+2 + 45 = 47
+2 + 46 = 48
+2 + 47 = 49
+2 + 48 = 50
+2 + 49 = 51
+2 + 50 = 52
+2 + 51 = 53
+2 + 52 = 54
+2 + 53 = 55
+2 + 54 = 56
+2 + 55 = 57
+2 + 56 = 58
+2 + 57 = 59
+2 + 58 = 60
+2 + 59 = 61
+2 + 60 = 62
+2 + 61 = 63
+2 + 62 = 64
+2 + 63 = 65
+3 + 0 = 3
+3 + 1 = 4
+3 + 2 = 5
+3 + 3 = 6
+3 + 4 = 7
+3 + 5 = 8
+3 + 6 = 9
+3 + 7 = 10
+3 + 8 = 11
+3 + 9 = 12
+3 + 10 = 13
+3 + 11 = 14
+3 + 12 = 15
+3 + 13 = 16
+3 + 14 = 17
+3 + 15 = 18
+3 + 16 = 19
+3 + 17 = 20
+3 + 18 = 21
+3 + 19 = 22
+3 + 20 = 23
+3 + 21 = 24
+3 + 22 = 25
+3 + 23 = 26
+3 + 24 = 27
+3 + 25 = 28
+3 + 26 = 29
+3 + 27 = 30
+3 + 28 = 31
+3 + 29 = 32
+3 + 30 = 33
+3 + 31 = 34
+3 + 32 = 35
+3 + 33 = 36
+3 + 34 = 37
+3 + 35 = 38
+3 + 36 = 39
+3 + 37 = 40
+3 + 38 = 41
+3 + 39 = 42
+3 + 40 = 43
+3 + 41 = 44
+3 + 42 = 45
+3 + 43 = 46
+3 + 44 = 47
+3 + 45 = 48
+3 + 46 = 49
+3 + 47 = 50
+3 + 48 = 51
+3 + 49 = 52
+3 + 50 = 53
+3 + 51 = 54
+3 + 52 = 55
+3 + 53 = 56
+3 + 54 = 57
+3 + 55 = 58
+3 + 56 = 59
+3 + 57 = 60
+3 + 58 = 61
+3 + 59 = 62
+3 + 60 = 63
+3 + 61 = 64
+3 + 62 = 65
+3 + 63 = 66
+4 + 0 = 4
+4 + 1 = 5
+4 + 2 = 6
+4 + 3 = 7
+4 + 4 = 8
+4 + 5 = 9
+4 + 6 = 10
+4 + 7 = 11
+4 + 8 = 12
+4 + 9 = 13
+4 + 10 = 14
+4 + 11 = 15
+4 + 12 = 16
+4 + 13 = 17
+4 + 14 = 18
+4 + 15 = 19
+4 + 16 = 20
+4 + 17 = 21
+4 + 18 = 22
+4 + 19 = 23
+4 + 20 = 24
+4 + 21 = 25
+4 + 22 = 26
+4 + 23 = 27
+4 + 24 = 28
+4 + 25 = 29
+4 + 26 = 30
+4 + 27 = 31
+4 + 28 = 32
+4 + 29 = 33
+4 + 30 = 34
+4 + 31 = 35
+4 + 32 = 36
+4 + 33 = 37
+4 + 34 = 38
+4 + 35 = 39
+4 + 36 = 40
+4 + 37 = 41
+4 + 38 = 42
+4 + 39 = 43
+4 + 40 = 44
+4 + 41 = 45
+4 + 42 = 46
+4 + 43 = 47
+4 + 44 = 48
+4 + 45 = 49
+4 + 46 = 50
+4 + 47 = 51
+4 + 48 = 52
+4 + 49 = 53
+4 + 50 = 54
+4 + 51 = 55
+4 + 52 = 56
+4 + 53 = 57
+4 + 54 = 58
+4 + 55 = 59
+4 + 56 = 60
+4 + 57 = 61
+4 + 58 = 62
+4 + 59 = 63
+4 + 60 = 64
+4 + 61 = 65
+4 + 62 = 66
+4 + 63 = 67
+5 + 0 = 5
+5 + 1 = 6
+5 + 2 = 7
+5 + 3 = 8
+5 + 4 = 9
+5 + 5 = 10
+5 + 6 = 11
+5 + 7 = 12
+5 + 8 = 13
+5 + 9 = 14
+5 + 10 = 15
+5 + 11 = 16
+5 + 12 = 17
+5 + 13 = 18
+5 + 14 = 19
+5 + 15 = 20
+5 + 16 = 21
+5 + 17 = 22
+5 + 18 = 23
+5 + 19 = 24
+5 + 20 = 25
+5 + 21 = 26
+5 + 22 = 27
+5 + 23 = 28
+5 + 24 = 29
+5 + 25 = 30
+5 + 26 = 31
+5 + 27 = 32
+5 + 28 = 33
+5 + 29 = 34
+5 + 30 = 35
+5 + 31 = 36
+5 + 32 = 37
+5 + 33 = 38
+5 + 34 = 39
+5 + 35 = 40
+5 + 36 = 41
+5 + 37 = 42
+5 + 38 = 43
+5 + 39 = 44
+5 + 40 = 45
+5 + 41 = 46
+5 + 42 = 47
+5 + 43 = 48
+5 + 44 = 49
+5 + 45 = 50
+5 + 46 = 51
+5 + 47 = 52
+5 + 48 = 53
+5 + 49 = 54
+5 + 50 = 55
+5 + 51 = 56
+5 + 52 = 57
+5 + 53 = 58
+5 + 54 = 59
+5 + 55 = 60
+5 + 56 = 61
+5 + 57 = 62
+5 + 58 = 63
+5 + 59 = 64
+5 + 60 = 65
+5 + 61 = 66
+5 + 62 = 67
+5 + 63 = 68
+6 + 0 = 6
+6 + 1 = 7
+6 + 2 = 8
+6 + 3 = 9
+6 + 4 = 10
+6 + 5 = 11
+6 + 6 = 12
+6 + 7 = 13
+6 + 8 = 14
+6 + 9 = 15
+6 + 10 = 16
+6 + 11 = 17
+6 + 12 = 18
+6 + 13 = 19
+6 + 14 = 20
+6 + 15 = 21
+6 + 16 = 22
+6 + 17 = 23
+6 + 18 = 24
+6 + 19 = 25
+6 + 20 = 26
+6 + 21 = 27
+6 + 22 = 28
+6 + 23 = 29
+6 + 24 = 30
+6 + 25 = 31
+6 + 26 = 32
+6 + 27 = 33
+6 + 28 = 34
+6 + 29 = 35
+6 + 30 = 36
+6 + 31 = 37
+6 + 32 = 38
+6 + 33 = 39
+6 + 34 = 40
+6 + 35 = 41
+6 + 36 = 42
+6 + 37 = 43
+6 + 38 = 44
+6 + 39 = 45
+6 + 40 = 46
+6 + 41 = 47
+6 + 42 = 48
+6 + 43 = 49
+6 + 44 = 50
+6 + 45 = 51
+6 + 46 = 52
+6 + 47 = 53
+6 + 48 = 54
+6 + 49 = 55
+6 + 50 = 56
+6 + 51 = 57
+6 + 52 = 58
+6 + 53 = 59
+6 + 54 = 60
+6 + 55 = 61
+6 + 56 = 62
+6 + 57 = 63
+6 + 58 = 64
+6 + 59 = 65
+6 + 60 = 66
+6 + 61 = 67
+6 + 62 = 68
+6 + 63 = 69
+7 + 0 = 7
+7 + 1 = 8
+7 + 2 = 9
+7 + 3 = 10
+7 + 4 = 11
+7 + 5 = 12
+7 + 6 = 13
+7 + 7 = 14
+7 + 8 = 15
+7 + 9 = 16
+7 + 10 = 17
+7 + 11 = 18
+7 + 12 = 19
+7 + 13 = 20
+7 + 14 = 21
+7 + 15 = 22
+7 + 16 = 23
+7 + 17 = 24
+7 + 18 = 25
+7 + 19 = 26
+7 + 20 = 27
+7 + 21 = 28
+7 + 22 = 29
+7 + 23 = 30
+7 + 24 = 31
+7 + 25 = 32
+7 + 26 = 33
+7 + 27 = 34
+7 + 28 = 35
+7 + 29 = 36
+7 + 30 = 37
+7 + 31 = 38
+7 + 32 = 39
+7 + 33 = 40
+7 + 34 = 41
+7 + 35 = 42
+7 + 36 = 43
+7 + 37 = 44
+7 + 38 = 45
+7 + 39 = 46
+7 + 40 = 47
+7 + 41 = 48
+7 + 42 = 49
+7 + 43 = 50
+7 + 44 = 51
+7 + 45 = 52
+7 + 46 = 53
+7 + 47 = 54
+7 + 48 = 55
+7 + 49 = 56
+7 + 50 = 57
+7 + 51 = 58
+7 + 52 = 59
+7 + 53 = 60
+7 + 54 = 61
+7 + 55 = 62
+7 + 56 = 63
+7 + 57 = 64
+7 + 58 = 65
+7 + 59 = 66
+7 + 60 = 67
+7 + 61 = 68
+7 + 62 = 69
+7 + 63 = 70
+8 + 0 = 8
+8 + 1 = 9
+8 + 2 = 10
+8 + 3 = 11
+8 + 4 = 12
+8 + 5 = 13
+8 + 6 = 14
+8 + 7 = 15
+8 + 8 = 16
+8 + 9 = 17
+8 + 10 = 18
+8 + 11 = 19
+8 + 12 = 20
+8 + 13 = 21
+8 + 14 = 22
+8 + 15 = 23
+8 + 16 = 24
+8 + 17 = 25
+8 + 18 = 26
+8 + 19 = 27
+8 + 20 = 28
+8 + 21 = 29
+8 + 22 = 30
+8 + 23 = 31
+8 + 24 = 32
+8 + 25 = 33
+8 + 26 = 34
+8 + 27 = 35
+8 + 28 = 36
+8 + 29 = 37
+8 + 30 = 38
+8 + 31 = 39
+8 + 32 = 40
+8 + 33 = 41
+8 + 34 = 42
+8 + 35 = 43
+8 + 36 = 44
+8 + 37 = 45
+8 + 38 = 46
+8 + 39 = 47
+8 + 40 = 48
+8 + 41 = 49
+8 + 42 = 50
+8 + 43 = 51
+8 + 44 = 52
+8 + 45 = 53
+8 + 46 = 54
+8 + 47 = 55
+8 + 48 = 56
+8 + 49 = 57
+8 + 50 = 58
+8 + 51 = 59
+8 + 52 = 60
+8 + 53 = 61
+8 + 54 = 62
+8 + 55 = 63
+8 + 56 = 64
+8 + 57 = 65
+8 + 58 = 66
+8 + 59 = 67
+8 + 60 = 68
+8 + 61 = 69
+8 + 62 = 70
+8 + 63 = 71
+9 + 0 = 9
+9 + 1 = 10
+9 + 2 = 11
+9 + 3 = 12
+9 + 4 = 13
+9 + 5 = 14
+9 + 6 = 15
+9 + 7 = 16
+9 + 8 = 17
+9 + 9 = 18
+9 + 10 = 19
+9 + 11 = 20
+9 + 12 = 21
+9 + 13 = 22
+9 + 14 = 23
+9 + 15 = 24
+9 + 16 = 25
+9 + 17 = 26
+9 + 18 = 27
+9 + 19 = 28
+9 + 20 = 29
+9 + 21 = 30
+9 + 22 = 31
+9 + 23 = 32
+9 + 24 = 33
+9 + 25 = 34
+9 + 26 = 35
+9 + 27 = 36
+9 + 28 = 37
+9 + 29 = 38
+9 + 30 = 39
+9 + 31 = 40
+9 + 32 = 41
+9 + 33 = 42
+9 + 34 = 43
+9 + 35 = 44
+9 + 36 = 45
+9 + 37 = 46
+9 + 38 = 47
+9 + 39 = 48
+9 + 40 = 49
+9 + 41 = 50
+9 + 42 = 51
+9 + 43 = 52
+9 + 44 = 53
+9 + 45 = 54
+9 + 46 = 55
+9 + 47 = 56
+9 + 48 = 57
+9 + 49 = 58
+9 + 50 = 59
+9 + 51 = 60
+9 + 52 = 61
+9 + 53 = 62
+9 + 54 = 63
+9 + 55 = 64
+9 + 56 = 65
+9 + 57 = 66
+9 + 58 = 67
+9 + 59 = 68
+9 + 60 = 69
+9 + 61 = 70
+9 + 62 = 71
+9 + 63 = 72
+10 + 0 = 10
+10 + 1 = 11
+10 + 2 = 12
+10 + 3 = 13
+10 + 4 = 14
+10 + 5 = 15
+10 + 6 = 16
+10 + 7 = 17
+10 + 8 = 18
+10 + 9 = 19
+10 + 10 = 20
+10 + 11 = 21
+10 + 12 = 22
+10 + 13 = 23
+10 + 14 = 24
+10 + 15 = 25
+10 + 16 = 26
+10 + 17 = 27
+10 + 18 = 28
+10 + 19 = 29
+10 + 20 = 30
+10 + 21 = 31
+10 + 22 = 32
+10 + 23 = 33
+10 + 24 = 34
+10 + 25 = 35
+10 + 26 = 36
+10 + 27 = 37
+10 + 28 = 38
+10 + 29 = 39
+10 + 30 = 40
+10 + 31 = 41
+10 + 32 = 42
+10 + 33 = 43
+10 + 34 = 44
+10 + 35 = 45
+10 + 36 = 46
+10 + 37 = 47
+10 + 38 = 48
+10 + 39 = 49
+10 + 40 = 50
+10 + 41 = 51
+10 + 42 = 52
+10 + 43 = 53
+10 + 44 = 54
+10 + 45 = 55
+10 + 46 = 56
+10 + 47 = 57
+10 + 48 = 58
+10 + 49 = 59
+10 + 50 = 60
+10 + 51 = 61
+10 + 52 = 62
+10 + 53 = 63
+10 + 54 = 64
+10 + 55 = 65
+10 + 56 = 66
+10 + 57 = 67
+10 + 58 = 68
+10 + 59 = 69
+10 + 60 = 70
+10 + 61 = 71
+10 + 62 = 72
+10 + 63 = 73
+11 + 0 = 11
+11 + 1 = 12
+11 + 2 = 13
+11 + 3 = 14
+11 + 4 = 15
+11 + 5 = 16
+11 + 6 = 17
+11 + 7 = 18
+11 + 8 = 19
+11 + 9 = 20
+11 + 10 = 21
+11 + 11 = 22
+11 + 12 = 23
+11 + 13 = 24
+11 + 14 = 25
+11 + 15 = 26
+11 + 16 = 27
+11 + 17 = 28
+11 + 18 = 29
+11 + 19 = 30
+11 + 20 = 31
+11 + 21 = 32
+11 + 22 = 33
+11 + 23 = 34
+11 + 24 = 35
+11 + 25 = 36
+11 + 26 = 37
+11 + 27 = 38
+11 + 28 = 39
+11 + 29 = 40
+11 + 30 = 41
+11 + 31 = 42
+11 + 32 = 43
+11 + 33 = 44
+11 + 34 = 45
+11 + 35 = 46
+11 + 36 = 47
+11 + 37 = 48
+11 + 38 = 49
+11 + 39 = 50
+11 + 40 = 51
+11 + 41 = 52
+11 + 42 = 53
+11 + 43 = 54
+11 + 44 = 55
+11 + 45 = 56
+11 + 46 = 57
+11 + 47 = 58
+11 + 48 = 59
+11 + 49 = 60
+11 + 50 = 61
+11 + 51 = 62
+11 + 52 = 63
+11 + 53 = 64
+11 + 54 = 65
+11 + 55 = 66
+11 + 56 = 67
+11 + 57 = 68
+11 + 58 = 69
+11 + 59 = 70
+11 + 60 = 71
+11 + 61 = 72
+11 + 62 = 73
+11 + 63 = 74
+12 + 0 = 12
+12 + 1 = 13
+12 + 2 = 14
+12 + 3 = 15
+12 + 4 = 16
+12 + 5 = 17
+12 + 6 = 18
+12 + 7 = 19
+12 + 8 = 20
+12 + 9 = 21
+12 + 10 = 22
+12 + 11 = 23
+12 + 12 = 24
+12 + 13 = 25
+12 + 14 = 26
+12 + 15 = 27
+12 + 16 = 28
+12 + 17 = 29
+12 + 18 = 30
+12 + 19 = 31
+12 + 20 = 32
+12 + 21 = 33
+12 + 22 = 34
+12 + 23 = 35
+12 + 24 = 36
+12 + 25 = 37
+12 + 26 = 38
+12 + 27 = 39
+12 + 28 = 40
+12 + 29 = 41
+12 + 30 = 42
+12 + 31 = 43
+12 + 32 = 44
+12 + 33 = 45
+12 + 34 = 46
+12 + 35 = 47
+12 + 36 = 48
+12 + 37 = 49
+12 + 38 = 50
+12 + 39 = 51
+12 + 40 = 52
+12 + 41 = 53
+12 + 42 = 54
+12 + 43 = 55
+12 + 44 = 56
+12 + 45 = 57
+12 + 46 = 58
+12 + 47 = 59
+12 + 48 = 60
+12 + 49 = 61
+12 + 50 = 62
+12 + 51 = 63
+12 + 52 = 64
+12 + 53 = 65
+12 + 54 = 66
+12 + 55 = 67
+12 + 56 = 68
+12 + 57 = 69
+12 + 58 = 70
+12 + 59 = 71
+12 + 60 = 72
+12 + 61 = 73
+12 + 62 = 74
+12 + 63 = 75
+13 + 0 = 13
+13 + 1 = 14
+13 + 2 = 15
+13 + 3 = 16
+13 + 4 = 17
+13 + 5 = 18
+13 + 6 = 19
+13 + 7 = 20
+13 + 8 = 21
+13 + 9 = 22
+13 + 10 = 23
+13 + 11 = 24
+13 + 12 = 25
+13 + 13 = 26
+13 + 14 = 27
+13 + 15 = 28
+13 + 16 = 29
+13 + 17 = 30
+13 + 18 = 31
+13 + 19 = 32
+13 + 20 = 33
+13 + 21 = 34
+13 + 22 = 35
+13 + 23 = 36
+13 + 24 = 37
+13 + 25 = 38
+13 + 26 = 39
+13 + 27 = 40
+13 + 28 = 41
+13 + 29 = 42
+13 + 30 = 43
+13 + 31 = 44
+13 + 32 = 45
+13 + 33 = 46
+13 + 34 = 47
+13 + 35 = 48
+13 + 36 = 49
+13 + 37 = 50
+13 + 38 = 51
+13 + 39 = 52
+13 + 40 = 53
+13 + 41 = 54
+13 + 42 = 55
+13 + 43 = 56
+13 + 44 = 57
+13 + 45 = 58
+13 + 46 = 59
+13 + 47 = 60
+13 + 48 = 61
+13 + 49 = 62
+13 + 50 = 63
+13 + 51 = 64
+13 + 52 = 65
+13 + 53 = 66
+13 + 54 = 67
+13 + 55 = 68
+13 + 56 = 69
+13 + 57 = 70
+13 + 58 = 71
+13 + 59 = 72
+13 + 60 = 73
+13 + 61 = 74
+13 + 62 = 75
+13 + 63 = 76
+14 + 0 = 14
+14 + 1 = 15
+14 + 2 = 16
+14 + 3 = 17
+14 + 4 = 18
+14 + 5 = 19
+14 + 6 = 20
+14 + 7 = 21
+14 + 8 = 22
+14 + 9 = 23
+14 + 10 = 24
+14 + 11 = 25
+14 + 12 = 26
+14 + 13 = 27
+14 + 14 = 28
+14 + 15 = 29
+14 + 16 = 30
+14 + 17 = 31
+14 + 18 = 32
+14 + 19 = 33
+14 + 20 = 34
+14 + 21 = 35
+14 + 22 = 36
+14 + 23 = 37
+14 + 24 = 38
+14 + 25 = 39
+14 + 26 = 40
+14 + 27 = 41
+14 + 28 = 42
+14 + 29 = 43
+14 + 30 = 44
+14 + 31 = 45
+14 + 32 = 46
+14 + 33 = 47
+14 + 34 = 48
+14 + 35 = 49
+14 + 36 = 50
+14 + 37 = 51
+14 + 38 = 52
+14 + 39 = 53
+14 + 40 = 54
+14 + 41 = 55
+14 + 42 = 56
+14 + 43 = 57
+14 + 44 = 58
+14 + 45 = 59
+14 + 46 = 60
+14 + 47 = 61
+14 + 48 = 62
+14 + 49 = 63
+14 + 50 = 64
+14 + 51 = 65
+14 + 52 = 66
+14 + 53 = 67
+14 + 54 = 68
+14 + 55 = 69
+14 + 56 = 70
+14 + 57 = 71
+14 + 58 = 72
+14 + 59 = 73
+14 + 60 = 74
+14 + 61 = 75
+14 + 62 = 76
+14 + 63 = 77
+15 + 0 = 15
+15 + 1 = 16
+15 + 2 = 17
+15 + 3 = 18
+15 + 4 = 19
+15 + 5 = 20
+15 + 6 = 21
+15 + 7 = 22
+15 + 8 = 23
+15 + 9 = 24
+15 + 10 = 25
+15 + 11 = 26
+15 + 12 = 27
+15 + 13 = 28
+15 + 14 = 29
+15 + 15 = 30
+15 + 16 = 31
+15 + 17 = 32
+15 + 18 = 33
+15 + 19 = 34
+15 + 20 = 35
+15 + 21 = 36
+15 + 22 = 37
+15 + 23 = 38
+15 + 24 = 39
+15 + 25 = 40
+15 + 26 = 41
+15 + 27 = 42
+15 + 28 = 43
+15 + 29 = 44
+15 + 30 = 45
+15 + 31 = 46
+15 + 32 = 47
+15 + 33 = 48
+15 + 34 = 49
+15 + 35 = 50
+15 + 36 = 51
+15 + 37 = 52
+15 + 38 = 53
+15 + 39 = 54
+15 + 40 = 55
+15 + 41 = 56
+15 + 42 = 57
+15 + 43 = 58
+15 + 44 = 59
+15 + 45 = 60
+15 + 46 = 61
+15 + 47 = 62
+15 + 48 = 63
+15 + 49 = 64
+15 + 50 = 65
+15 + 51 = 66
+15 + 52 = 67
+15 + 53 = 68
+15 + 54 = 69
+15 + 55 = 70
+15 + 56 = 71
+15 + 57 = 72
+15 + 58 = 73
+15 + 59 = 74
+15 + 60 = 75
+15 + 61 = 76
+15 + 62 = 77
+15 + 63 = 78
+16 + 0 = 16
+16 + 1 = 17
+16 + 2 = 18
+16 + 3 = 19
+16 + 4 = 20
+16 + 5 = 21
+16 + 6 = 22
+16 + 7 = 23
+16 + 8 = 24
+16 + 9 = 25
+16 + 10 = 26
+16 + 11 = 27
+16 + 12 = 28
+16 + 13 = 29
+16 + 14 = 30
+16 + 15 = 31
+16 + 16 = 32
+16 + 17 = 33
+16 + 18 = 34
+16 + 19 = 35
+16 + 20 = 36
+16 + 21 = 37
+16 + 22 = 38
+16 + 23 = 39
+16 + 24 = 40
+16 + 25 = 41
+16 + 26 = 42
+16 + 27 = 43
+16 + 28 = 44
+16 + 29 = 45
+16 + 30 = 46
+16 + 31 = 47
+16 + 32 = 48
+16 + 33 = 49
+16 + 34 = 50
+16 + 35 = 51
+16 + 36 = 52
+16 + 37 = 53
+16 + 38 = 54
+16 + 39 = 55
+16 + 40 = 56
+16 + 41 = 57
+16 + 42 = 58
+16 + 43 = 59
+16 + 44 = 60
+16 + 45 = 61
+16 + 46 = 62
+16 + 47 = 63
+16 + 48 = 64
+16 + 49 = 65
+16 + 50 = 66
+16 + 51 = 67
+16 + 52 = 68
+16 + 53 = 69
+16 + 54 = 70
+16 + 55 = 71
+16 + 56 = 72
+16 + 57 = 73
+16 + 58 = 74
+16 + 59 = 75
+16 + 60 = 76
+16 + 61 = 77
+16 + 62 = 78
+16 + 63 = 79
+17 + 0 = 17
+17 + 1 = 18
+17 + 2 = 19
+17 + 3 = 20
+17 + 4 = 21
+17 + 5 = 22
+17 + 6 = 23
+17 + 7 = 24
+17 + 8 = 25
+17 + 9 = 26
+17 + 10 = 27
+17 + 11 = 28
+17 + 12 = 29
+17 + 13 = 30
+17 + 14 = 31
+17 + 15 = 32
+17 + 16 = 33
+17 + 17 = 34
+17 + 18 = 35
+17 + 19 = 36
+17 + 20 = 37
+17 + 21 = 38
+17 + 22 = 39
+17 + 23 = 40
+17 + 24 = 41
+17 + 25 = 42
+17 + 26 = 43
+17 + 27 = 44
+17 + 28 = 45
+17 + 29 = 46
+17 + 30 = 47
+17 + 31 = 48
+17 + 32 = 49
+17 + 33 = 50
+17 + 34 = 51
+17 + 35 = 52
+17 + 36 = 53
+17 + 37 = 54
+17 + 38 = 55
+17 + 39 = 56
+17 + 40 = 57
+17 + 41 = 58
+17 + 42 = 59
+17 + 43 = 60
+17 + 44 = 61
+17 + 45 = 62
+17 + 46 = 63
+17 + 47 = 64
+17 + 48 = 65
+17 + 49 = 66
+17 + 50 = 67
+17 + 51 = 68
+17 + 52 = 69
+17 + 53 = 70
+17 + 54 = 71
+17 + 55 = 72
+17 + 56 = 73
+17 + 57 = 74
+17 + 58 = 75
+17 + 59 = 76
+17 + 60 = 77
+17 + 61 = 78
+17 + 62 = 79
+17 + 63 = 80
+18 + 0 = 18
+18 + 1 = 19
+18 + 2 = 20
+18 + 3 = 21
+18 + 4 = 22
+18 + 5 = 23
+18 + 6 = 24
+18 + 7 = 25
+18 + 8 = 26
+18 + 9 = 27
+18 + 10 = 28
+18 + 11 = 29
+18 + 12 = 30
+18 + 13 = 31
+18 + 14 = 32
+18 + 15 = 33
+18 + 16 = 34
+18 + 17 = 35
+18 + 18 = 36
+18 + 19 = 37
+18 + 20 = 38
+18 + 21 = 39
+18 + 22 = 40
+18 + 23 = 41
+18 + 24 = 42
+18 + 25 = 43
+18 + 26 = 44
+18 + 27 = 45
+18 + 28 = 46
+18 + 29 = 47
+18 + 30 = 48
+18 + 31 = 49
+18 + 32 = 50
+18 + 33 = 51
+18 + 34 = 52
+18 + 35 = 53
+18 + 36 = 54
+18 + 37 = 55
+18 + 38 = 56
+18 + 39 = 57
+18 + 40 = 58
+18 + 41 = 59
+18 + 42 = 60
+18 + 43 = 61
+18 + 44 = 62
+18 + 45 = 63
+18 + 46 = 64
+18 + 47 = 65
+18 + 48 = 66
+18 + 49 = 67
+18 + 50 = 68
+18 + 51 = 69
+18 + 52 = 70
+18 + 53 = 71
+18 + 54 = 72
+18 + 55 = 73
+18 + 56 = 74
+18 + 57 = 75
+18 + 58 = 76
+18 + 59 = 77
+18 + 60 = 78
+18 + 61 = 79
+18 + 62 = 80
+18 + 63 = 81
+19 + 0 = 19
+19 + 1 = 20
+19 + 2 = 21
+19 + 3 = 22
+19 + 4 = 23
+19 + 5 = 24
+19 + 6 = 25
+19 + 7 = 26
+19 + 8 = 27
+19 + 9 = 28
+19 + 10 = 29
+19 + 11 = 30
+19 + 12 = 31
+19 + 13 = 32
+19 + 14 = 33
+19 + 15 = 34
+19 + 16 = 35
+19 + 17 = 36
+19 + 18 = 37
+19 + 19 = 38
+19 + 20 = 39
+19 + 21 = 40
+19 + 22 = 41
+19 + 23 = 42
+19 + 24 = 43
+19 + 25 = 44
+19 + 26 = 45
+19 + 27 = 46
+19 + 28 = 47
+19 + 29 = 48
+19 + 30 = 49
+19 + 31 = 50
+19 + 32 = 51
+19 + 33 = 52
+19 + 34 = 53
+19 + 35 = 54
+19 + 36 = 55
+19 + 37 = 56
+19 + 38 = 57
+19 + 39 = 58
+19 + 40 = 59
+19 + 41 = 60
+19 + 42 = 61
+19 + 43 = 62
+19 + 44 = 63
+19 + 45 = 64
+19 + 46 = 65
+19 + 47 = 66
+19 + 48 = 67
+19 + 49 = 68
+19 + 50 = 69
+19 + 51 = 70
+19 + 52 = 71
+19 + 53 = 72
+19 + 54 = 73
+19 + 55 = 74
+19 + 56 = 75
+19 + 57 = 76
+19 + 58 = 77
+19 + 59 = 78
+19 + 60 = 79
+19 + 61 = 80
+19 + 62 = 81
+19 + 63 = 82
+20 + 0 = 20
+20 + 1 = 21
+20 + 2 = 22
+20 + 3 = 23
+20 + 4 = 24
+20 + 5 = 25
+20 + 6 = 26
+20 + 7 = 27
+20 + 8 = 28
+20 + 9 = 29
+20 + 10 = 30
+20 + 11 = 31
+20 + 12 = 32
+20 + 13 = 33
+20 + 14 = 34
+20 + 15 = 35
+20 + 16 = 36
+20 + 17 = 37
+20 + 18 = 38
+20 + 19 = 39
+20 + 20 = 40
+20 + 21 = 41
+20 + 22 = 42
+20 + 23 = 43
+20 + 24 = 44
+20 + 25 = 45
+20 + 26 = 46
+20 + 27 = 47
+20 + 28 = 48
+20 + 29 = 49
+20 + 30 = 50
+20 + 31 = 51
+20 + 32 = 52
+20 + 33 = 53
+20 + 34 = 54
+20 + 35 = 55
+20 + 36 = 56
+20 + 37 = 57
+20 + 38 = 58
+20 + 39 = 59
+20 + 40 = 60
+20 + 41 = 61
+20 + 42 = 62
+20 + 43 = 63
+20 + 44 = 64
+20 + 45 = 65
+20 + 46 = 66
+20 + 47 = 67
+20 + 48 = 68
+20 + 49 = 69
+20 + 50 = 70
+20 + 51 = 71
+20 + 52 = 72
+20 + 53 = 73
+20 + 54 = 74
+20 + 55 = 75
+20 + 56 = 76
+20 + 57 = 77
+20 + 58 = 78
+20 + 59 = 79
+20 + 60 = 80
+20 + 61 = 81
+20 + 62 = 82
+20 + 63 = 83
+21 + 0 = 21
+21 + 1 = 22
+21 + 2 = 23
+21 + 3 = 24
+21 + 4 = 25
+21 + 5 = 26
+21 + 6 = 27
+21 + 7 = 28
+21 + 8 = 29
+21 + 9 = 30
+21 + 10 = 31
+21 + 11 = 32
+21 + 12 = 33
+21 + 13 = 34
+21 + 14 = 35
+21 + 15 = 36
+21 + 16 = 37
+21 + 17 = 38
+21 + 18 = 39
+21 + 19 = 40
+21 + 20 = 41
+21 + 21 = 42
+21 + 22 = 43
+21 + 23 = 44
+21 + 24 = 45
+21 + 25 = 46
+21 + 26 = 47
+21 + 27 = 48
+21 + 28 = 49
+21 + 29 = 50
+21 + 30 = 51
+21 + 31 = 52
+21 + 32 = 53
+21 + 33 = 54
+21 + 34 = 55
+21 + 35 = 56
+21 + 36 = 57
+21 + 37 = 58
+21 + 38 = 59
+21 + 39 = 60
+21 + 40 = 61
+21 + 41 = 62
+21 + 42 = 63
+21 + 43 = 64
+21 + 44 = 65
+21 + 45 = 66
+21 + 46 = 67
+21 + 47 = 68
+21 + 48 = 69
+21 + 49 = 70
+21 + 50 = 71
+21 + 51 = 72
+21 + 52 = 73
+21 + 53 = 74
+21 + 54 = 75
+21 + 55 = 76
+21 + 56 = 77
+21 + 57 = 78
+21 + 58 = 79
+21 + 59 = 80
+21 + 60 = 81
+21 + 61 = 82
+21 + 62 = 83
+21 + 63 = 84
+22 + 0 = 22
+22 + 1 = 23
+22 + 2 = 24
+22 + 3 = 25
+22 + 4 = 26
+22 + 5 = 27
+22 + 6 = 28
+22 + 7 = 29
+22 + 8 = 30
+22 + 9 = 31
+22 + 10 = 32
+22 + 11 = 33
+22 + 12 = 34
+22 + 13 = 35
+22 + 14 = 36
+22 + 15 = 37
+22 + 16 = 38
+22 + 17 = 39
+22 + 18 = 40
+22 + 19 = 41
+22 + 20 = 42
+22 + 21 = 43
+22 + 22 = 44
+22 + 23 = 45
+22 + 24 = 46
+22 + 25 = 47
+22 + 26 = 48
+22 + 27 = 49
+22 + 28 = 50
+22 + 29 = 51
+22 + 30 = 52
+22 + 31 = 53
+22 + 32 = 54
+22 + 33 = 55
+22 + 34 = 56
+22 + 35 = 57
+22 + 36 = 58
+22 + 37 = 59
+22 + 38 = 60
+22 + 39 = 61
+22 + 40 = 62
+22 + 41 = 63
+22 + 42 = 64
+22 + 43 = 65
+22 + 44 = 66
+22 + 45 = 67
+22 + 46 = 68
+22 + 47 = 69
+22 + 48 = 70
+22 + 49 = 71
+22 + 50 = 72
+22 + 51 = 73
+22 + 52 = 74
+22 + 53 = 75
+22 + 54 = 76
+22 + 55 = 77
+22 + 56 = 78
+22 + 57 = 79
+22 + 58 = 80
+22 + 59 = 81
+22 + 60 = 82
+22 + 61 = 83
+22 + 62 = 84
+22 + 63 = 85
+23 + 0 = 23
+23 + 1 = 24
+23 + 2 = 25
+23 + 3 = 26
+23 + 4 = 27
+23 + 5 = 28
+23 + 6 = 29
+23 + 7 = 30
+23 + 8 = 31
+23 + 9 = 32
+23 + 10 = 33
+23 + 11 = 34
+23 + 12 = 35
+23 + 13 = 36
+23 + 14 = 37
+23 + 15 = 38
+23 + 16 = 39
+23 + 17 = 40
+23 + 18 = 41
+23 + 19 = 42
+23 + 20 = 43
+23 + 21 = 44
+23 + 22 = 45
+23 + 23 = 46
+23 + 24 = 47
+23 + 25 = 48
+23 + 26 = 49
+23 + 27 = 50
+23 + 28 = 51
+23 + 29 = 52
+23 + 30 = 53
+23 + 31 = 54
+23 + 32 = 55
+23 + 33 = 56
+23 + 34 = 57
+23 + 35 = 58
+23 + 36 = 59
+23 + 37 = 60
+23 + 38 = 61
+23 + 39 = 62
+23 + 40 = 63
+23 + 41 = 64
+23 + 42 = 65
+23 + 43 = 66
+23 + 44 = 67
+23 + 45 = 68
+23 + 46 = 69
+23 + 47 = 70
+23 + 48 = 71
+23 + 49 = 72
+23 + 50 = 73
+23 + 51 = 74
+23 + 52 = 75
+23 + 53 = 76
+23 + 54 = 77
+23 + 55 = 78
+23 + 56 = 79
+23 + 57 = 80
+23 + 58 = 81
+23 + 59 = 82
+23 + 60 = 83
+23 + 61 = 84
+23 + 62 = 85
+23 + 63 = 86
+24 + 0 = 24
+24 + 1 = 25
+24 + 2 = 26
+24 + 3 = 27
+24 + 4 = 28
+24 + 5 = 29
+24 + 6 = 30
+24 + 7 = 31
+24 + 8 = 32
+24 + 9 = 33
+24 + 10 = 34
+24 + 11 = 35
+24 + 12 = 36
+24 + 13 = 37
+24 + 14 = 38
+24 + 15 = 39
+24 + 16 = 40
+24 + 17 = 41
+24 + 18 = 42
+24 + 19 = 43
+24 + 20 = 44
+24 + 21 = 45
+24 + 22 = 46
+24 + 23 = 47
+24 + 24 = 48
+24 + 25 = 49
+24 + 26 = 50
+24 + 27 = 51
+24 + 28 = 52
+24 + 29 = 53
+24 + 30 = 54
+24 + 31 = 55
+24 + 32 = 56
+24 + 33 = 57
+24 + 34 = 58
+24 + 35 = 59
+24 + 36 = 60
+24 + 37 = 61
+24 + 38 = 62
+24 + 39 = 63
+24 + 40 = 64
+24 + 41 = 65
+24 + 42 = 66
+24 + 43 = 67
+24 + 44 = 68
+24 + 45 = 69
+24 + 46 = 70
+24 + 47 = 71
+24 + 48 = 72
+24 + 49 = 73
+24 + 50 = 74
+24 + 51 = 75
+24 + 52 = 76
+24 + 53 = 77
+24 + 54 = 78
+24 + 55 = 79
+24 + 56 = 80
+24 + 57 = 81
+24 + 58 = 82
+24 + 59 = 83
+24 + 60 = 84
+24 + 61 = 85
+24 + 62 = 86
+24 + 63 = 87
+25 + 0 = 25
+25 + 1 = 26
+25 + 2 = 27
+25 + 3 = 28
+25 + 4 = 29
+25 + 5 = 30
+25 + 6 = 31
+25 + 7 = 32
+25 + 8 = 33
+25 + 9 = 34
+25 + 10 = 35
+25 + 11 = 36
+25 + 12 = 37
+25 + 13 = 38
+25 + 14 = 39
+25 + 15 = 40
+25 + 16 = 41
+25 + 17 = 42
+25 + 18 = 43
+25 + 19 = 44
+25 + 20 = 45
+25 + 21 = 46
+25 + 22 = 47
+25 + 23 = 48
+25 + 24 = 49
+25 + 25 = 50
+25 + 26 = 51
+25 + 27 = 52
+25 + 28 = 53
+25 + 29 = 54
+25 + 30 = 55
+25 + 31 = 56
+25 + 32 = 57
+25 + 33 = 58
+25 + 34 = 59
+25 + 35 = 60
+25 + 36 = 61
+25 + 37 = 62
+25 + 38 = 63
+25 + 39 = 64
+25 + 40 = 65
+25 + 41 = 66
+25 + 42 = 67
+25 + 43 = 68
+25 + 44 = 69
+25 + 45 = 70
+25 + 46 = 71
+25 + 47 = 72
+25 + 48 = 73
+25 + 49 = 74
+25 + 50 = 75
+25 + 51 = 76
+25 + 52 = 77
+25 + 53 = 78
+25 + 54 = 79
+25 + 55 = 80
+25 + 56 = 81
+25 + 57 = 82
+25 + 58 = 83
+25 + 59 = 84
+25 + 60 = 85
+25 + 61 = 86
+25 + 62 = 87
+25 + 63 = 88
+26 + 0 = 26
+26 + 1 = 27
+26 + 2 = 28
+26 + 3 = 29
+26 + 4 = 30
+26 + 5 = 31
+26 + 6 = 32
+26 + 7 = 33
+26 + 8 = 34
+26 + 9 = 35
+26 + 10 = 36
+26 + 11 = 37
+26 + 12 = 38
+26 + 13 = 39
+26 + 14 = 40
+26 + 15 = 41
+26 + 16 = 42
+26 + 17 = 43
+26 + 18 = 44
+26 + 19 = 45
+26 + 20 = 46
+26 + 21 = 47
+26 + 22 = 48
+26 + 23 = 49
+26 + 24 = 50
+26 + 25 = 51
+26 + 26 = 52
+26 + 27 = 53
+26 + 28 = 54
+26 + 29 = 55
+26 + 30 = 56
+26 + 31 = 57
+26 + 32 = 58
+26 + 33 = 59
+26 + 34 = 60
+26 + 35 = 61
+26 + 36 = 62
+26 + 37 = 63
+26 + 38 = 64
+26 + 39 = 65
+26 + 40 = 66
+26 + 41 = 67
+26 + 42 = 68
+26 + 43 = 69
+26 + 44 = 70
+26 + 45 = 71
+26 + 46 = 72
+26 + 47 = 73
+26 + 48 = 74
+26 + 49 = 75
+26 + 50 = 76
+26 + 51 = 77
+26 + 52 = 78
+26 + 53 = 79
+26 + 54 = 80
+26 + 55 = 81
+26 + 56 = 82
+26 + 57 = 83
+26 + 58 = 84
+26 + 59 = 85
+26 + 60 = 86
+26 + 61 = 87
+26 + 62 = 88
+26 + 63 = 89
+27 + 0 = 27
+27 + 1 = 28
+27 + 2 = 29
+27 + 3 = 30
+27 + 4 = 31
+27 + 5 = 32
+27 + 6 = 33
+27 + 7 = 34
+27 + 8 = 35
+27 + 9 = 36
+27 + 10 = 37
+27 + 11 = 38
+27 + 12 = 39
+27 + 13 = 40
+27 + 14 = 41
+27 + 15 = 42
+27 + 16 = 43
+27 + 17 = 44
+27 + 18 = 45
+27 + 19 = 46
+27 + 20 = 47
+27 + 21 = 48
+27 + 22 = 49
+27 + 23 = 50
+27 + 24 = 51
+27 + 25 = 52
+27 + 26 = 53
+27 + 27 = 54
+27 + 28 = 55
+27 + 29 = 56
+27 + 30 = 57
+27 + 31 = 58
+27 + 32 = 59
+27 + 33 = 60
+27 + 34 = 61
+27 + 35 = 62
+27 + 36 = 63
+27 + 37 = 64
+27 + 38 = 65
+27 + 39 = 66
+27 + 40 = 67
+27 + 41 = 68
+27 + 42 = 69
+27 + 43 = 70
+27 + 44 = 71
+27 + 45 = 72
+27 + 46 = 73
+27 + 47 = 74
+27 + 48 = 75
+27 + 49 = 76
+27 + 50 = 77
+27 + 51 = 78
+27 + 52 = 79
+27 + 53 = 80
+27 + 54 = 81
+27 + 55 = 82
+27 + 56 = 83
+27 + 57 = 84
+27 + 58 = 85
+27 + 59 = 86
+27 + 60 = 87
+27 + 61 = 88
+27 + 62 = 89
+27 + 63 = 90
+28 + 0 = 28
+28 + 1 = 29
+28 + 2 = 30
+28 + 3 = 31
+28 + 4 = 32
+28 + 5 = 33
+28 + 6 = 34
+28 + 7 = 35
+28 + 8 = 36
+28 + 9 = 37
+28 + 10 = 38
+28 + 11 = 39
+28 + 12 = 40
+28 + 13 = 41
+28 + 14 = 42
+28 + 15 = 43
+28 + 16 = 44
+28 + 17 = 45
+28 + 18 = 46
+28 + 19 = 47
+28 + 20 = 48
+28 + 21 = 49
+28 + 22 = 50
+28 + 23 = 51
+28 + 24 = 52
+28 + 25 = 53
+28 + 26 = 54
+28 + 27 = 55
+28 + 28 = 56
+28 + 29 = 57
+28 + 30 = 58
+28 + 31 = 59
+28 + 32 = 60
+28 + 33 = 61
+28 + 34 = 62
+28 + 35 = 63
+28 + 36 = 64
+28 + 37 = 65
+28 + 38 = 66
+28 + 39 = 67
+28 + 40 = 68
+28 + 41 = 69
+28 + 42 = 70
+28 + 43 = 71
+28 + 44 = 72
+28 + 45 = 73
+28 + 46 = 74
+28 + 47 = 75
+28 + 48 = 76
+28 + 49 = 77
+28 + 50 = 78
+28 + 51 = 79
+28 + 52 = 80
+28 + 53 = 81
+28 + 54 = 82
+28 + 55 = 83
+28 + 56 = 84
+28 + 57 = 85
+28 + 58 = 86
+28 + 59 = 87
+28 + 60 = 88
+28 + 61 = 89
+28 + 62 = 90
+28 + 63 = 91
+29 + 0 = 29
+29 + 1 = 30
+29 + 2 = 31
+29 + 3 = 32
+29 + 4 = 33
+29 + 5 = 34
+29 + 6 = 35
+29 + 7 = 36
+29 + 8 = 37
+29 + 9 = 38
+29 + 10 = 39
+29 + 11 = 40
+29 + 12 = 41
+29 + 13 = 42
+29 + 14 = 43
+29 + 15 = 44
+29 + 16 = 45
+29 + 17 = 46
+29 + 18 = 47
+29 + 19 = 48
+29 + 20 = 49
+29 + 21 = 50
+29 + 22 = 51
+29 + 23 = 52
+29 + 24 = 53
+29 + 25 = 54
+29 + 26 = 55
+29 + 27 = 56
+29 + 28 = 57
+29 + 29 = 58
+29 + 30 = 59
+29 + 31 = 60
+29 + 32 = 61
+29 + 33 = 62
+29 + 34 = 63
+29 + 35 = 64
+29 + 36 = 65
+29 + 37 = 66
+29 + 38 = 67
+29 + 39 = 68
+29 + 40 = 69
+29 + 41 = 70
+29 + 42 = 71
+29 + 43 = 72
+29 + 44 = 73
+29 + 45 = 74
+29 + 46 = 75
+29 + 47 = 76
+29 + 48 = 77
+29 + 49 = 78
+29 + 50 = 79
+29 + 51 = 80
+29 + 52 = 81
+29 + 53 = 82
+29 + 54 = 83
+29 + 55 = 84
+29 + 56 = 85
+29 + 57 = 86
+29 + 58 = 87
+29 + 59 = 88
+29 + 60 = 89
+29 + 61 = 90
+29 + 62 = 91
+29 + 63 = 92
+30 + 0 = 30
+30 + 1 = 31
+30 + 2 = 32
+30 + 3 = 33
+30 + 4 = 34
+30 + 5 = 35
+30 + 6 = 36
+30 + 7 = 37
+30 + 8 = 38
+30 + 9 = 39
+30 + 10 = 40
+30 + 11 = 41
+30 + 12 = 42
+30 + 13 = 43
+30 + 14 = 44
+30 + 15 = 45
+30 + 16 = 46
+30 + 17 = 47
+30 + 18 = 48
+30 + 19 = 49
+30 + 20 = 50
+30 + 21 = 51
+30 + 22 = 52
+30 + 23 = 53
+30 + 24 = 54
+30 + 25 = 55
+30 + 26 = 56
+30 + 27 = 57
+30 + 28 = 58
+30 + 29 = 59
+30 + 30 = 60
+30 + 31 = 61
+30 + 32 = 62
+30 + 33 = 63
+30 + 34 = 64
+30 + 35 = 65
+30 + 36 = 66
+30 + 37 = 67
+30 + 38 = 68
+30 + 39 = 69
+30 + 40 = 70
+30 + 41 = 71
+30 + 42 = 72
+30 + 43 = 73
+30 + 44 = 74
+30 + 45 = 75
+30 + 46 = 76
+30 + 47 = 77
+30 + 48 = 78
+30 + 49 = 79
+30 + 50 = 80
+30 + 51 = 81
+30 + 52 = 82
+30 + 53 = 83
+30 + 54 = 84
+30 + 55 = 85
+30 + 56 = 86
+30 + 57 = 87
+30 + 58 = 88
+30 + 59 = 89
+30 + 60 = 90
+30 + 61 = 91
+30 + 62 = 92
+30 + 63 = 93
+31 + 0 = 31
+31 + 1 = 32
+31 + 2 = 33
+31 + 3 = 34
+31 + 4 = 35
+31 + 5 = 36
+31 + 6 = 37
+31 + 7 = 38
+31 + 8 = 39
+31 + 9 = 40
+31 + 10 = 41
+31 + 11 = 42
+31 + 12 = 43
+31 + 13 = 44
+31 + 14 = 45
+31 + 15 = 46
+31 + 16 = 47
+31 + 17 = 48
+31 + 18 = 49
+31 + 19 = 50
+31 + 20 = 51
+31 + 21 = 52
+31 + 22 = 53
+31 + 23 = 54
+31 + 24 = 55
+31 + 25 = 56
+31 + 26 = 57
+31 + 27 = 58
+31 + 28 = 59
+31 + 29 = 60
+31 + 30 = 61
+31 + 31 = 62
+31 + 32 = 63
+31 + 33 = 64
+31 + 34 = 65
+31 + 35 = 66
+31 + 36 = 67
+31 + 37 = 68
+31 + 38 = 69
+31 + 39 = 70
+31 + 40 = 71
+31 + 41 = 72
+31 + 42 = 73
+31 + 43 = 74
+31 + 44 = 75
+31 + 45 = 76
+31 + 46 = 77
+31 + 47 = 78
+31 + 48 = 79
+31 + 49 = 80
+31 + 50 = 81
+31 + 51 = 82
+31 + 52 = 83
+31 + 53 = 84
+31 + 54 = 85
+31 + 55 = 86
+31 + 56 = 87
+31 + 57 = 88
+31 + 58 = 89
+31 + 59 = 90
+31 + 60 = 91
+31 + 61 = 92
+31 + 62 = 93
+31 + 63 = 94
+32 + 0 = 32
+32 + 1 = 33
+32 + 2 = 34
+32 + 3 = 35
+32 + 4 = 36
+32 + 5 = 37
+32 + 6 = 38
+32 + 7 = 39
+32 + 8 = 40
+32 + 9 = 41
+32 + 10 = 42
+32 + 11 = 43
+32 + 12 = 44
+32 + 13 = 45
+32 + 14 = 46
+32 + 15 = 47
+32 + 16 = 48
+32 + 17 = 49
+32 + 18 = 50
+32 + 19 = 51
+32 + 20 = 52
+32 + 21 = 53
+32 + 22 = 54
+32 + 23 = 55
+32 + 24 = 56
+32 + 25 = 57
+32 + 26 = 58
+32 + 27 = 59
+32 + 28 = 60
+32 + 29 = 61
+32 + 30 = 62
+32 + 31 = 63
+32 + 32 = 64
+32 + 33 = 65
+32 + 34 = 66
+32 + 35 = 67
+32 + 36 = 68
+32 + 37 = 69
+32 + 38 = 70
+32 + 39 = 71
+32 + 40 = 72
+32 + 41 = 73
+32 + 42 = 74
+32 + 43 = 75
+32 + 44 = 76
+32 + 45 = 77
+32 + 46 = 78
+32 + 47 = 79
+32 + 48 = 80
+32 + 49 = 81
+32 + 50 = 82
+32 + 51 = 83
+32 + 52 = 84
+32 + 53 = 85
+32 + 54 = 86
+32 + 55 = 87
+32 + 56 = 88
+32 + 57 = 89
+32 + 58 = 90
+32 + 59 = 91
+32 + 60 = 92
+32 + 61 = 93
+32 + 62 = 94
+32 + 63 = 95
+33 + 0 = 33
+33 + 1 = 34
+33 + 2 = 35
+33 + 3 = 36
+33 + 4 = 37
+33 + 5 = 38
+33 + 6 = 39
+33 + 7 = 40
+33 + 8 = 41
+33 + 9 = 42
+33 + 10 = 43
+33 + 11 = 44
+33 + 12 = 45
+33 + 13 = 46
+33 + 14 = 47
+33 + 15 = 48
+33 + 16 = 49
+33 + 17 = 50
+33 + 18 = 51
+33 + 19 = 52
+33 + 20 = 53
+33 + 21 = 54
+33 + 22 = 55
+33 + 23 = 56
+33 + 24 = 57
+33 + 25 = 58
+33 + 26 = 59
+33 + 27 = 60
+33 + 28 = 61
+33 + 29 = 62
+33 + 30 = 63
+33 + 31 = 64
+33 + 32 = 65
+33 + 33 = 66
+33 + 34 = 67
+33 + 35 = 68
+33 + 36 = 69
+33 + 37 = 70
+33 + 38 = 71
+33 + 39 = 72
+33 + 40 = 73
+33 + 41 = 74
+33 + 42 = 75
+33 + 43 = 76
+33 + 44 = 77
+33 + 45 = 78
+33 + 46 = 79
+33 + 47 = 80
+33 + 48 = 81
+33 + 49 = 82
+33 + 50 = 83
+33 + 51 = 84
+33 + 52 = 85
+33 + 53 = 86
+33 + 54 = 87
+33 + 55 = 88
+33 + 56 = 89
+33 + 57 = 90
+33 + 58 = 91
+33 + 59 = 92
+33 + 60 = 93
+33 + 61 = 94
+33 + 62 = 95
+33 + 63 = 96
+34 + 0 = 34
+34 + 1 = 35
+34 + 2 = 36
+34 + 3 = 37
+34 + 4 = 38
+34 + 5 = 39
+34 + 6 = 40
+34 + 7 = 41
+34 + 8 = 42
+34 + 9 = 43
+34 + 10 = 44
+34 + 11 = 45
+34 + 12 = 46
+34 + 13 = 47
+34 + 14 = 48
+34 + 15 = 49
+34 + 16 = 50
+34 + 17 = 51
+34 + 18 = 52
+34 + 19 = 53
+34 + 20 = 54
+34 + 21 = 55
+34 + 22 = 56
+34 + 23 = 57
+34 + 24 = 58
+34 + 25 = 59
+34 + 26 = 60
+34 + 27 = 61
+34 + 28 = 62
+34 + 29 = 63
+34 + 30 = 64
+34 + 31 = 65
+34 + 32 = 66
+34 + 33 = 67
+34 + 34 = 68
+34 + 35 = 69
+34 + 36 = 70
+34 + 37 = 71
+34 + 38 = 72
+34 + 39 = 73
+34 + 40 = 74
+34 + 41 = 75
+34 + 42 = 76
+34 + 43 = 77
+34 + 44 = 78
+34 + 45 = 79
+34 + 46 = 80
+34 + 47 = 81
+34 + 48 = 82
+34 + 49 = 83
+34 + 50 = 84
+34 + 51 = 85
+34 + 52 = 86
+34 + 53 = 87
+34 + 54 = 88
+34 + 55 = 89
+34 + 56 = 90
+34 + 57 = 91
+34 + 58 = 92
+34 + 59 = 93
+34 + 60 = 94
+34 + 61 = 95
+34 + 62 = 96
+34 + 63 = 97
+35 + 0 = 35
+35 + 1 = 36
+35 + 2 = 37
+35 + 3 = 38
+35 + 4 = 39
+35 + 5 = 40
+35 + 6 = 41
+35 + 7 = 42
+35 + 8 = 43
+35 + 9 = 44
+35 + 10 = 45
+35 + 11 = 46
+35 + 12 = 47
+35 + 13 = 48
+35 + 14 = 49
+35 + 15 = 50
+35 + 16 = 51
+35 + 17 = 52
+35 + 18 = 53
+35 + 19 = 54
+35 + 20 = 55
+35 + 21 = 56
+35 + 22 = 57
+35 + 23 = 58
+35 + 24 = 59
+35 + 25 = 60
+35 + 26 = 61
+35 + 27 = 62
+35 + 28 = 63
+35 + 29 = 64
+35 + 30 = 65
+35 + 31 = 66
+35 + 32 = 67
+35 + 33 = 68
+35 + 34 = 69
+35 + 35 = 70
+35 + 36 = 71
+35 + 37 = 72
+35 + 38 = 73
+35 + 39 = 74
+35 + 40 = 75
+35 + 41 = 76
+35 + 42 = 77
+35 + 43 = 78
+35 + 44 = 79
+35 + 45 = 80
+35 + 46 = 81
+35 + 47 = 82
+35 + 48 = 83
+35 + 49 = 84
+35 + 50 = 85
+35 + 51 = 86
+35 + 52 = 87
+35 + 53 = 88
+35 + 54 = 89
+35 + 55 = 90
+35 + 56 = 91
+35 + 57 = 92
+35 + 58 = 93
+35 + 59 = 94
+35 + 60 = 95
+35 + 61 = 96
+35 + 62 = 97
+35 + 63 = 98
+36 + 0 = 36
+36 + 1 = 37
+36 + 2 = 38
+36 + 3 = 39
+36 + 4 = 40
+36 + 5 = 41
+36 + 6 = 42
+36 + 7 = 43
+36 + 8 = 44
+36 + 9 = 45
+36 + 10 = 46
+36 + 11 = 47
+36 + 12 = 48
+36 + 13 = 49
+36 + 14 = 50
+36 + 15 = 51
+36 + 16 = 52
+36 + 17 = 53
+36 + 18 = 54
+36 + 19 = 55
+36 + 20 = 56
+36 + 21 = 57
+36 + 22 = 58
+36 + 23 = 59
+36 + 24 = 60
+36 + 25 = 61
+36 + 26 = 62
+36 + 27 = 63
+36 + 28 = 64
+36 + 29 = 65
+36 + 30 = 66
+36 + 31 = 67
+36 + 32 = 68
+36 + 33 = 69
+36 + 34 = 70
+36 + 35 = 71
+36 + 36 = 72
+36 + 37 = 73
+36 + 38 = 74
+36 + 39 = 75
+36 + 40 = 76
+36 + 41 = 77
+36 + 42 = 78
+36 + 43 = 79
+36 + 44 = 80
+36 + 45 = 81
+36 + 46 = 82
+36 + 47 = 83
+36 + 48 = 84
+36 + 49 = 85
+36 + 50 = 86
+36 + 51 = 87
+36 + 52 = 88
+36 + 53 = 89
+36 + 54 = 90
+36 + 55 = 91
+36 + 56 = 92
+36 + 57 = 93
+36 + 58 = 94
+36 + 59 = 95
+36 + 60 = 96
+36 + 61 = 97
+36 + 62 = 98
+36 + 63 = 99
+37 + 0 = 37
+37 + 1 = 38
+37 + 2 = 39
+37 + 3 = 40
+37 + 4 = 41
+37 + 5 = 42
+37 + 6 = 43
+37 + 7 = 44
+37 + 8 = 45
+37 + 9 = 46
+37 + 10 = 47
+37 + 11 = 48
+37 + 12 = 49
+37 + 13 = 50
+37 + 14 = 51
+37 + 15 = 52
+37 + 16 = 53
+37 + 17 = 54
+37 + 18 = 55
+37 + 19 = 56
+37 + 20 = 57
+37 + 21 = 58
+37 + 22 = 59
+37 + 23 = 60
+37 + 24 = 61
+37 + 25 = 62
+37 + 26 = 63
+37 + 27 = 64
+37 + 28 = 65
+37 + 29 = 66
+37 + 30 = 67
+37 + 31 = 68
+37 + 32 = 69
+37 + 33 = 70
+37 + 34 = 71
+37 + 35 = 72
+37 + 36 = 73
+37 + 37 = 74
+37 + 38 = 75
+37 + 39 = 76
+37 + 40 = 77
+37 + 41 = 78
+37 + 42 = 79
+37 + 43 = 80
+37 + 44 = 81
+37 + 45 = 82
+37 + 46 = 83
+37 + 47 = 84
+37 + 48 = 85
+37 + 49 = 86
+37 + 50 = 87
+37 + 51 = 88
+37 + 52 = 89
+37 + 53 = 90
+37 + 54 = 91
+37 + 55 = 92
+37 + 56 = 93
+37 + 57 = 94
+37 + 58 = 95
+37 + 59 = 96
+37 + 60 = 97
+37 + 61 = 98
+37 + 62 = 99
+37 + 63 = 100
+38 + 0 = 38
+38 + 1 = 39
+38 + 2 = 40
+38 + 3 = 41
+38 + 4 = 42
+38 + 5 = 43
+38 + 6 = 44
+38 + 7 = 45
+38 + 8 = 46
+38 + 9 = 47
+38 + 10 = 48
+38 + 11 = 49
+38 + 12 = 50
+38 + 13 = 51
+38 + 14 = 52
+38 + 15 = 53
+38 + 16 = 54
+38 + 17 = 55
+38 + 18 = 56
+38 + 19 = 57
+38 + 20 = 58
+38 + 21 = 59
+38 + 22 = 60
+38 + 23 = 61
+38 + 24 = 62
+38 + 25 = 63
+38 + 26 = 64
+38 + 27 = 65
+38 + 28 = 66
+38 + 29 = 67
+38 + 30 = 68
+38 + 31 = 69
+38 + 32 = 70
+38 + 33 = 71
+38 + 34 = 72
+38 + 35 = 73
+38 + 36 = 74
+38 + 37 = 75
+38 + 38 = 76
+38 + 39 = 77
+38 + 40 = 78
+38 + 41 = 79
+38 + 42 = 80
+38 + 43 = 81
+38 + 44 = 82
+38 + 45 = 83
+38 + 46 = 84
+38 + 47 = 85
+38 + 48 = 86
+38 + 49 = 87
+38 + 50 = 88
+38 + 51 = 89
+38 + 52 = 90
+38 + 53 = 91
+38 + 54 = 92
+38 + 55 = 93
+38 + 56 = 94
+38 + 57 = 95
+38 + 58 = 96
+38 + 59 = 97
+38 + 60 = 98
+38 + 61 = 99
+38 + 62 = 100
+38 + 63 = 101
+39 + 0 = 39
+39 + 1 = 40
+39 + 2 = 41
+39 + 3 = 42
+39 + 4 = 43
+39 + 5 = 44
+39 + 6 = 45
+39 + 7 = 46
+39 + 8 = 47
+39 + 9 = 48
+39 + 10 = 49
+39 + 11 = 50
+39 + 12 = 51
+39 + 13 = 52
+39 + 14 = 53
+39 + 15 = 54
+39 + 16 = 55
+39 + 17 = 56
+39 + 18 = 57
+39 + 19 = 58
+39 + 20 = 59
+39 + 21 = 60
+39 + 22 = 61
+39 + 23 = 62
+39 + 24 = 63
+39 + 25 = 64
+39 + 26 = 65
+39 + 27 = 66
+39 + 28 = 67
+39 + 29 = 68
+39 + 30 = 69
+39 + 31 = 70
+39 + 32 = 71
+39 + 33 = 72
+39 + 34 = 73
+39 + 35 = 74
+39 + 36 = 75
+39 + 37 = 76
+39 + 38 = 77
+39 + 39 = 78
+39 + 40 = 79
+39 + 41 = 80
+39 + 42 = 81
+39 + 43 = 82
+39 + 44 = 83
+39 + 45 = 84
+39 + 46 = 85
+39 + 47 = 86
+39 + 48 = 87
+39 + 49 = 88
+39 + 50 = 89
+39 + 51 = 90
+39 + 52 = 91
+39 + 53 = 92
+39 + 54 = 93
+39 + 55 = 94
+39 + 56 = 95
+39 + 57 = 96
+39 + 58 = 97
+39 + 59 = 98
+39 + 60 = 99
+39 + 61 = 100
+39 + 62 = 101
+39 + 63 = 102
+40 + 0 = 40
+40 + 1 = 41
+40 + 2 = 42
+40 + 3 = 43
+40 + 4 = 44
+40 + 5 = 45
+40 + 6 = 46
+40 + 7 = 47
+40 + 8 = 48
+40 + 9 = 49
+40 + 10 = 50
+40 + 11 = 51
+40 + 12 = 52
+40 + 13 = 53
+40 + 14 = 54
+40 + 15 = 55
+40 + 16 = 56
+40 + 17 = 57
+40 + 18 = 58
+40 + 19 = 59
+40 + 20 = 60
+40 + 21 = 61
+40 + 22 = 62
+40 + 23 = 63
+40 + 24 = 64
+40 + 25 = 65
+40 + 26 = 66
+40 + 27 = 67
+40 + 28 = 68
+40 + 29 = 69
+40 + 30 = 70
+40 + 31 = 71
+40 + 32 = 72
+40 + 33 = 73
+40 + 34 = 74
+40 + 35 = 75
+40 + 36 = 76
+40 + 37 = 77
+40 + 38 = 78
+40 + 39 = 79
+40 + 40 = 80
+40 + 41 = 81
+40 + 42 = 82
+40 + 43 = 83
+40 + 44 = 84
+40 + 45 = 85
+40 + 46 = 86
+40 + 47 = 87
+40 + 48 = 88
+40 + 49 = 89
+40 + 50 = 90
+40 + 51 = 91
+40 + 52 = 92
+40 + 53 = 93
+40 + 54 = 94
+40 + 55 = 95
+40 + 56 = 96
+40 + 57 = 97
+40 + 58 = 98
+40 + 59 = 99
+40 + 60 = 100
+40 + 61 = 101
+40 + 62 = 102
+40 + 63 = 103
+41 + 0 = 41
+41 + 1 = 42
+41 + 2 = 43
+41 + 3 = 44
+41 + 4 = 45
+41 + 5 = 46
+41 + 6 = 47
+41 + 7 = 48
+41 + 8 = 49
+41 + 9 = 50
+41 + 10 = 51
+41 + 11 = 52
+41 + 12 = 53
+41 + 13 = 54
+41 + 14 = 55
+41 + 15 = 56
+41 + 16 = 57
+41 + 17 = 58
+41 + 18 = 59
+41 + 19 = 60
+41 + 20 = 61
+41 + 21 = 62
+41 + 22 = 63
+41 + 23 = 64
+41 + 24 = 65
+41 + 25 = 66
+41 + 26 = 67
+41 + 27 = 68
+41 + 28 = 69
+41 + 29 = 70
+41 + 30 = 71
+41 + 31 = 72
+41 + 32 = 73
+41 + 33 = 74
+41 + 34 = 75
+41 + 35 = 76
+41 + 36 = 77
+41 + 37 = 78
+41 + 38 = 79
+41 + 39 = 80
+41 + 40 = 81
+41 + 41 = 82
+41 + 42 = 83
+41 + 43 = 84
+41 + 44 = 85
+41 + 45 = 86
+41 + 46 = 87
+41 + 47 = 88
+41 + 48 = 89
+41 + 49 = 90
+41 + 50 = 91
+41 + 51 = 92
+41 + 52 = 93
+41 + 53 = 94
+41 + 54 = 95
+41 + 55 = 96
+41 + 56 = 97
+41 + 57 = 98
+41 + 58 = 99
+41 + 59 = 100
+41 + 60 = 101
+41 + 61 = 102
+41 + 62 = 103
+41 + 63 = 104
+42 + 0 = 42
+42 + 1 = 43
+42 + 2 = 44
+42 + 3 = 45
+42 + 4 = 46
+42 + 5 = 47
+42 + 6 = 48
+42 + 7 = 49
+42 + 8 = 50
+42 + 9 = 51
+42 + 10 = 52
+42 + 11 = 53
+42 + 12 = 54
+42 + 13 = 55
+42 + 14 = 56
+42 + 15 = 57
+42 + 16 = 58
+42 + 17 = 59
+42 + 18 = 60
+42 + 19 = 61
+42 + 20 = 62
+42 + 21 = 63
+42 + 22 = 64
+42 + 23 = 65
+42 + 24 = 66
+42 + 25 = 67
+42 + 26 = 68
+42 + 27 = 69
+42 + 28 = 70
+42 + 29 = 71
+42 + 30 = 72
+42 + 31 = 73
+42 + 32 = 74
+42 + 33 = 75
+42 + 34 = 76
+42 + 35 = 77
+42 + 36 = 78
+42 + 37 = 79
+42 + 38 = 80
+42 + 39 = 81
+42 + 40 = 82
+42 + 41 = 83
+42 + 42 = 84
+42 + 43 = 85
+42 + 44 = 86
+42 + 45 = 87
+42 + 46 = 88
+42 + 47 = 89
+42 + 48 = 90
+42 + 49 = 91
+42 + 50 = 92
+42 + 51 = 93
+42 + 52 = 94
+42 + 53 = 95
+42 + 54 = 96
+42 + 55 = 97
+42 + 56 = 98
+42 + 57 = 99
+42 + 58 = 100
+42 + 59 = 101
+42 + 60 = 102
+42 + 61 = 103
+42 + 62 = 104
+42 + 63 = 105
+43 + 0 = 43
+43 + 1 = 44
+43 + 2 = 45
+43 + 3 = 46
+43 + 4 = 47
+43 + 5 = 48
+43 + 6 = 49
+43 + 7 = 50
+43 + 8 = 51
+43 + 9 = 52
+43 + 10 = 53
+43 + 11 = 54
+43 + 12 = 55
+43 + 13 = 56
+43 + 14 = 57
+43 + 15 = 58
+43 + 16 = 59
+43 + 17 = 60
+43 + 18 = 61
+43 + 19 = 62
+43 + 20 = 63
+43 + 21 = 64
+43 + 22 = 65
+43 + 23 = 66
+43 + 24 = 67
+43 + 25 = 68
+43 + 26 = 69
+43 + 27 = 70
+43 + 28 = 71
+43 + 29 = 72
+43 + 30 = 73
+43 + 31 = 74
+43 + 32 = 75
+43 + 33 = 76
+43 + 34 = 77
+43 + 35 = 78
+43 + 36 = 79
+43 + 37 = 80
+43 + 38 = 81
+43 + 39 = 82
+43 + 40 = 83
+43 + 41 = 84
+43 + 42 = 85
+43 + 43 = 86
+43 + 44 = 87
+43 + 45 = 88
+43 + 46 = 89
+43 + 47 = 90
+43 + 48 = 91
+43 + 49 = 92
+43 + 50 = 93
+43 + 51 = 94
+43 + 52 = 95
+43 + 53 = 96
+43 + 54 = 97
+43 + 55 = 98
+43 + 56 = 99
+43 + 57 = 100
+43 + 58 = 101
+43 + 59 = 102
+43 + 60 = 103
+43 + 61 = 104
+43 + 62 = 105
+43 + 63 = 106
+44 + 0 = 44
+44 + 1 = 45
+44 + 2 = 46
+44 + 3 = 47
+44 + 4 = 48
+44 + 5 = 49
+44 + 6 = 50
+44 + 7 = 51
+44 + 8 = 52
+44 + 9 = 53
+44 + 10 = 54
+44 + 11 = 55
+44 + 12 = 56
+44 + 13 = 57
+44 + 14 = 58
+44 + 15 = 59
+44 + 16 = 60
+44 + 17 = 61
+44 + 18 = 62
+44 + 19 = 63
+44 + 20 = 64
+44 + 21 = 65
+44 + 22 = 66
+44 + 23 = 67
+44 + 24 = 68
+44 + 25 = 69
+44 + 26 = 70
+44 + 27 = 71
+44 + 28 = 72
+44 + 29 = 73
+44 + 30 = 74
+44 + 31 = 75
+44 + 32 = 76
+44 + 33 = 77
+44 + 34 = 78
+44 + 35 = 79
+44 + 36 = 80
+44 + 37 = 81
+44 + 38 = 82
+44 + 39 = 83
+44 + 40 = 84
+44 + 41 = 85
+44 + 42 = 86
+44 + 43 = 87
+44 + 44 = 88
+44 + 45 = 89
+44 + 46 = 90
+44 + 47 = 91
+44 + 48 = 92
+44 + 49 = 93
+44 + 50 = 94
+44 + 51 = 95
+44 + 52 = 96
+44 + 53 = 97
+44 + 54 = 98
+44 + 55 = 99
+44 + 56 = 100
+44 + 57 = 101
+44 + 58 = 102
+44 + 59 = 103
+44 + 60 = 104
+44 + 61 = 105
+44 + 62 = 106
+44 + 63 = 107
+45 + 0 = 45
+45 + 1 = 46
+45 + 2 = 47
+45 + 3 = 48
+45 + 4 = 49
+45 + 5 = 50
+45 + 6 = 51
+45 + 7 = 52
+45 + 8 = 53
+45 + 9 = 54
+45 + 10 = 55
+45 + 11 = 56
+45 + 12 = 57
+45 + 13 = 58
+45 + 14 = 59
+45 + 15 = 60
+45 + 16 = 61
+45 + 17 = 62
+45 + 18 = 63
+45 + 19 = 64
+45 + 20 = 65
+45 + 21 = 66
+45 + 22 = 67
+45 + 23 = 68
+45 + 24 = 69
+45 + 25 = 70
+45 + 26 = 71
+45 + 27 = 72
+45 + 28 = 73
+45 + 29 = 74
+45 + 30 = 75
+45 + 31 = 76
+45 + 32 = 77
+45 + 33 = 78
+45 + 34 = 79
+45 + 35 = 80
+45 + 36 = 81
+45 + 37 = 82
+45 + 38 = 83
+45 + 39 = 84
+45 + 40 = 85
+45 + 41 = 86
+45 + 42 = 87
+45 + 43 = 88
+45 + 44 = 89
+45 + 45 = 90
+45 + 46 = 91
+45 + 47 = 92
+45 + 48 = 93
+45 + 49 = 94
+45 + 50 = 95
+45 + 51 = 96
+45 + 52 = 97
+45 + 53 = 98
+45 + 54 = 99
+45 + 55 = 100
+45 + 56 = 101
+45 + 57 = 102
+45 + 58 = 103
+45 + 59 = 104
+45 + 60 = 105
+45 + 61 = 106
+45 + 62 = 107
+45 + 63 = 108
+46 + 0 = 46
+46 + 1 = 47
+46 + 2 = 48
+46 + 3 = 49
+46 + 4 = 50
+46 + 5 = 51
+46 + 6 = 52
+46 + 7 = 53
+46 + 8 = 54
+46 + 9 = 55
+46 + 10 = 56
+46 + 11 = 57
+46 + 12 = 58
+46 + 13 = 59
+46 + 14 = 60
+46 + 15 = 61
+46 + 16 = 62
+46 + 17 = 63
+46 + 18 = 64
+46 + 19 = 65
+46 + 20 = 66
+46 + 21 = 67
+46 + 22 = 68
+46 + 23 = 69
+46 + 24 = 70
+46 + 25 = 71
+46 + 26 = 72
+46 + 27 = 73
+46 + 28 = 74
+46 + 29 = 75
+46 + 30 = 76
+46 + 31 = 77
+46 + 32 = 78
+46 + 33 = 79
+46 + 34 = 80
+46 + 35 = 81
+46 + 36 = 82
+46 + 37 = 83
+46 + 38 = 84
+46 + 39 = 85
+46 + 40 = 86
+46 + 41 = 87
+46 + 42 = 88
+46 + 43 = 89
+46 + 44 = 90
+46 + 45 = 91
+46 + 46 = 92
+46 + 47 = 93
+46 + 48 = 94
+46 + 49 = 95
+46 + 50 = 96
+46 + 51 = 97
+46 + 52 = 98
+46 + 53 = 99
+46 + 54 = 100
+46 + 55 = 101
+46 + 56 = 102
+46 + 57 = 103
+46 + 58 = 104
+46 + 59 = 105
+46 + 60 = 106
+46 + 61 = 107
+46 + 62 = 108
+46 + 63 = 109
+47 + 0 = 47
+47 + 1 = 48
+47 + 2 = 49
+47 + 3 = 50
+47 + 4 = 51
+47 + 5 = 52
+47 + 6 = 53
+47 + 7 = 54
+47 + 8 = 55
+47 + 9 = 56
+47 + 10 = 57
+47 + 11 = 58
+47 + 12 = 59
+47 + 13 = 60
+47 + 14 = 61
+47 + 15 = 62
+47 + 16 = 63
+47 + 17 = 64
+47 + 18 = 65
+47 + 19 = 66
+47 + 20 = 67
+47 + 21 = 68
+47 + 22 = 69
+47 + 23 = 70
+47 + 24 = 71
+47 + 25 = 72
+47 + 26 = 73
+47 + 27 = 74
+47 + 28 = 75
+47 + 29 = 76
+47 + 30 = 77
+47 + 31 = 78
+47 + 32 = 79
+47 + 33 = 80
+47 + 34 = 81
+47 + 35 = 82
+47 + 36 = 83
+47 + 37 = 84
+47 + 38 = 85
+47 + 39 = 86
+47 + 40 = 87
+47 + 41 = 88
+47 + 42 = 89
+47 + 43 = 90
+47 + 44 = 91
+47 + 45 = 92
+47 + 46 = 93
+47 + 47 = 94
+47 + 48 = 95
+47 + 49 = 96
+47 + 50 = 97
+47 + 51 = 98
+47 + 52 = 99
+47 + 53 = 100
+47 + 54 = 101
+47 + 55 = 102
+47 + 56 = 103
+47 + 57 = 104
+47 + 58 = 105
+47 + 59 = 106
+47 + 60 = 107
+47 + 61 = 108
+47 + 62 = 109
+47 + 63 = 110
+48 + 0 = 48
+48 + 1 = 49
+48 + 2 = 50
+48 + 3 = 51
+48 + 4 = 52
+48 + 5 = 53
+48 + 6 = 54
+48 + 7 = 55
+48 + 8 = 56
+48 + 9 = 57
+48 + 10 = 58
+48 + 11 = 59
+48 + 12 = 60
+48 + 13 = 61
+48 + 14 = 62
+48 + 15 = 63
+48 + 16 = 64
+48 + 17 = 65
+48 + 18 = 66
+48 + 19 = 67
+48 + 20 = 68
+48 + 21 = 69
+48 + 22 = 70
+48 + 23 = 71
+48 + 24 = 72
+48 + 25 = 73
+48 + 26 = 74
+48 + 27 = 75
+48 + 28 = 76
+48 + 29 = 77
+48 + 30 = 78
+48 + 31 = 79
+48 + 32 = 80
+48 + 33 = 81
+48 + 34 = 82
+48 + 35 = 83
+48 + 36 = 84
+48 + 37 = 85
+48 + 38 = 86
+48 + 39 = 87
+48 + 40 = 88
+48 + 41 = 89
+48 + 42 = 90
+48 + 43 = 91
+48 + 44 = 92
+48 + 45 = 93
+48 + 46 = 94
+48 + 47 = 95
+48 + 48 = 96
+48 + 49 = 97
+48 + 50 = 98
+48 + 51 = 99
+48 + 52 = 100
+48 + 53 = 101
+48 + 54 = 102
+48 + 55 = 103
+48 + 56 = 104
+48 + 57 = 105
+48 + 58 = 106
+48 + 59 = 107
+48 + 60 = 108
+48 + 61 = 109
+48 + 62 = 110
+48 + 63 = 111
+49 + 0 = 49
+49 + 1 = 50
+49 + 2 = 51
+49 + 3 = 52
+49 + 4 = 53
+49 + 5 = 54
+49 + 6 = 55
+49 + 7 = 56
+49 + 8 = 57
+49 + 9 = 58
+49 + 10 = 59
+49 + 11 = 60
+49 + 12 = 61
+49 + 13 = 62
+49 + 14 = 63
+49 + 15 = 64
+49 + 16 = 65
+49 + 17 = 66
+49 + 18 = 67
+49 + 19 = 68
+49 + 20 = 69
+49 + 21 = 70
+49 + 22 = 71
+49 + 23 = 72
+49 + 24 = 73
+49 + 25 = 74
+49 + 26 = 75
+49 + 27 = 76
+49 + 28 = 77
+49 + 29 = 78
+49 + 30 = 79
+49 + 31 = 80
+49 + 32 = 81
+49 + 33 = 82
+49 + 34 = 83
+49 + 35 = 84
+49 + 36 = 85
+49 + 37 = 86
+49 + 38 = 87
+49 + 39 = 88
+49 + 40 = 89
+49 + 41 = 90
+49 + 42 = 91
+49 + 43 = 92
+49 + 44 = 93
+49 + 45 = 94
+49 + 46 = 95
+49 + 47 = 96
+49 + 48 = 97
+49 + 49 = 98
+49 + 50 = 99
+49 + 51 = 100
+49 + 52 = 101
+49 + 53 = 102
+49 + 54 = 103
+49 + 55 = 104
+49 + 56 = 105
+49 + 57 = 106
+49 + 58 = 107
+49 + 59 = 108
+49 + 60 = 109
+49 + 61 = 110
+49 + 62 = 111
+49 + 63 = 112
+50 + 0 = 50
+50 + 1 = 51
+50 + 2 = 52
+50 + 3 = 53
+50 + 4 = 54
+50 + 5 = 55
+50 + 6 = 56
+50 + 7 = 57
+50 + 8 = 58
+50 + 9 = 59
+50 + 10 = 60
+50 + 11 = 61
+50 + 12 = 62
+50 + 13 = 63
+50 + 14 = 64
+50 + 15 = 65
+50 + 16 = 66
+50 + 17 = 67
+50 + 18 = 68
+50 + 19 = 69
+50 + 20 = 70
+50 + 21 = 71
+50 + 22 = 72
+50 + 23 = 73
+50 + 24 = 74
+50 + 25 = 75
+50 + 26 = 76
+50 + 27 = 77
+50 + 28 = 78
+50 + 29 = 79
+50 + 30 = 80
+50 + 31 = 81
+50 + 32 = 82
+50 + 33 = 83
+50 + 34 = 84
+50 + 35 = 85
+50 + 36 = 86
+50 + 37 = 87
+50 + 38 = 88
+50 + 39 = 89
+50 + 40 = 90
+50 + 41 = 91
+50 + 42 = 92
+50 + 43 = 93
+50 + 44 = 94
+50 + 45 = 95
+50 + 46 = 96
+50 + 47 = 97
+50 + 48 = 98
+50 + 49 = 99
+50 + 50 = 100
+50 + 51 = 101
+50 + 52 = 102
+50 + 53 = 103
+50 + 54 = 104
+50 + 55 = 105
+50 + 56 = 106
+50 + 57 = 107
+50 + 58 = 108
+50 + 59 = 109
+50 + 60 = 110
+50 + 61 = 111
+50 + 62 = 112
+50 + 63 = 113
+51 + 0 = 51
+51 + 1 = 52
+51 + 2 = 53
+51 + 3 = 54
+51 + 4 = 55
+51 + 5 = 56
+51 + 6 = 57
+51 + 7 = 58
+51 + 8 = 59
+51 + 9 = 60
+51 + 10 = 61
+51 + 11 = 62
+51 + 12 = 63
+51 + 13 = 64
+51 + 14 = 65
+51 + 15 = 66
+51 + 16 = 67
+51 + 17 = 68
+51 + 18 = 69
+51 + 19 = 70
+51 + 20 = 71
+51 + 21 = 72
+51 + 22 = 73
+51 + 23 = 74
+51 + 24 = 75
+51 + 25 = 76
+51 + 26 = 77
+51 + 27 = 78
+51 + 28 = 79
+51 + 29 = 80
+51 + 30 = 81
+51 + 31 = 82
+51 + 32 = 83
+51 + 33 = 84
+51 + 34 = 85
+51 + 35 = 86
+51 + 36 = 87
+51 + 37 = 88
+51 + 38 = 89
+51 + 39 = 90
+51 + 40 = 91
+51 + 41 = 92
+51 + 42 = 93
+51 + 43 = 94
+51 + 44 = 95
+51 + 45 = 96
+51 + 46 = 97
+51 + 47 = 98
+51 + 48 = 99
+51 + 49 = 100
+51 + 50 = 101
+51 + 51 = 102
+51 + 52 = 103
+51 + 53 = 104
+51 + 54 = 105
+51 + 55 = 106
+51 + 56 = 107
+51 + 57 = 108
+51 + 58 = 109
+51 + 59 = 110
+51 + 60 = 111
+51 + 61 = 112
+51 + 62 = 113
+51 + 63 = 114
+52 + 0 = 52
+52 + 1 = 53
+52 + 2 = 54
+52 + 3 = 55
+52 + 4 = 56
+52 + 5 = 57
+52 + 6 = 58
+52 + 7 = 59
+52 + 8 = 60
+52 + 9 = 61
+52 + 10 = 62
+52 + 11 = 63
+52 + 12 = 64
+52 + 13 = 65
+52 + 14 = 66
+52 + 15 = 67
+52 + 16 = 68
+52 + 17 = 69
+52 + 18 = 70
+52 + 19 = 71
+52 + 20 = 72
+52 + 21 = 73
+52 + 22 = 74
+52 + 23 = 75
+52 + 24 = 76
+52 + 25 = 77
+52 + 26 = 78
+52 + 27 = 79
+52 + 28 = 80
+52 + 29 = 81
+52 + 30 = 82
+52 + 31 = 83
+52 + 32 = 84
+52 + 33 = 85
+52 + 34 = 86
+52 + 35 = 87
+52 + 36 = 88
+52 + 37 = 89
+52 + 38 = 90
+52 + 39 = 91
+52 + 40 = 92
+52 + 41 = 93
+52 + 42 = 94
+52 + 43 = 95
+52 + 44 = 96
+52 + 45 = 97
+52 + 46 = 98
+52 + 47 = 99
+52 + 48 = 100
+52 + 49 = 101
+52 + 50 = 102
+52 + 51 = 103
+52 + 52 = 104
+52 + 53 = 105
+52 + 54 = 106
+52 + 55 = 107
+52 + 56 = 108
+52 + 57 = 109
+52 + 58 = 110
+52 + 59 = 111
+52 + 60 = 112
+52 + 61 = 113
+52 + 62 = 114
+52 + 63 = 115
+53 + 0 = 53
+53 + 1 = 54
+53 + 2 = 55
+53 + 3 = 56
+53 + 4 = 57
+53 + 5 = 58
+53 + 6 = 59
+53 + 7 = 60
+53 + 8 = 61
+53 + 9 = 62
+53 + 10 = 63
+53 + 11 = 64
+53 + 12 = 65
+53 + 13 = 66
+53 + 14 = 67
+53 + 15 = 68
+53 + 16 = 69
+53 + 17 = 70
+53 + 18 = 71
+53 + 19 = 72
+53 + 20 = 73
+53 + 21 = 74
+53 + 22 = 75
+53 + 23 = 76
+53 + 24 = 77
+53 + 25 = 78
+53 + 26 = 79
+53 + 27 = 80
+53 + 28 = 81
+53 + 29 = 82
+53 + 30 = 83
+53 + 31 = 84
+53 + 32 = 85
+53 + 33 = 86
+53 + 34 = 87
+53 + 35 = 88
+53 + 36 = 89
+53 + 37 = 90
+53 + 38 = 91
+53 + 39 = 92
+53 + 40 = 93
+53 + 41 = 94
+53 + 42 = 95
+53 + 43 = 96
+53 + 44 = 97
+53 + 45 = 98
+53 + 46 = 99
+53 + 47 = 100
+53 + 48 = 101
+53 + 49 = 102
+53 + 50 = 103
+53 + 51 = 104
+53 + 52 = 105
+53 + 53 = 106
+53 + 54 = 107
+53 + 55 = 108
+53 + 56 = 109
+53 + 57 = 110
+53 + 58 = 111
+53 + 59 = 112
+53 + 60 = 113
+53 + 61 = 114
+53 + 62 = 115
+53 + 63 = 116
+54 + 0 = 54
+54 + 1 = 55
+54 + 2 = 56
+54 + 3 = 57
+54 + 4 = 58
+54 + 5 = 59
+54 + 6 = 60
+54 + 7 = 61
+54 + 8 = 62
+54 + 9 = 63
+54 + 10 = 64
+54 + 11 = 65
+54 + 12 = 66
+54 + 13 = 67
+54 + 14 = 68
+54 + 15 = 69
+54 + 16 = 70
+54 + 17 = 71
+54 + 18 = 72
+54 + 19 = 73
+54 + 20 = 74
+54 + 21 = 75
+54 + 22 = 76
+54 + 23 = 77
+54 + 24 = 78
+54 + 25 = 79
+54 + 26 = 80
+54 + 27 = 81
+54 + 28 = 82
+54 + 29 = 83
+54 + 30 = 84
+54 + 31 = 85
+54 + 32 = 86
+54 + 33 = 87
+54 + 34 = 88
+54 + 35 = 89
+54 + 36 = 90
+54 + 37 = 91
+54 + 38 = 92
+54 + 39 = 93
+54 + 40 = 94
+54 + 41 = 95
+54 + 42 = 96
+54 + 43 = 97
+54 + 44 = 98
+54 + 45 = 99
+54 + 46 = 100
+54 + 47 = 101
+54 + 48 = 102
+54 + 49 = 103
+54 + 50 = 104
+54 + 51 = 105
+54 + 52 = 106
+54 + 53 = 107
+54 + 54 = 108
+54 + 55 = 109
+54 + 56 = 110
+54 + 57 = 111
+54 + 58 = 112
+54 + 59 = 113
+54 + 60 = 114
+54 + 61 = 115
+54 + 62 = 116
+54 + 63 = 117
+55 + 0 = 55
+55 + 1 = 56
+55 + 2 = 57
+55 + 3 = 58
+55 + 4 = 59
+55 + 5 = 60
+55 + 6 = 61
+55 + 7 = 62
+55 + 8 = 63
+55 + 9 = 64
+55 + 10 = 65
+55 + 11 = 66
+55 + 12 = 67
+55 + 13 = 68
+55 + 14 = 69
+55 + 15 = 70
+55 + 16 = 71
+55 + 17 = 72
+55 + 18 = 73
+55 + 19 = 74
+55 + 20 = 75
+55 + 21 = 76
+55 + 22 = 77
+55 + 23 = 78
+55 + 24 = 79
+55 + 25 = 80
+55 + 26 = 81
+55 + 27 = 82
+55 + 28 = 83
+55 + 29 = 84
+55 + 30 = 85
+55 + 31 = 86
+55 + 32 = 87
+55 + 33 = 88
+55 + 34 = 89
+55 + 35 = 90
+55 + 36 = 91
+55 + 37 = 92
+55 + 38 = 93
+55 + 39 = 94
+55 + 40 = 95
+55 + 41 = 96
+55 + 42 = 97
+55 + 43 = 98
+55 + 44 = 99
+55 + 45 = 100
+55 + 46 = 101
+55 + 47 = 102
+55 + 48 = 103
+55 + 49 = 104
+55 + 50 = 105
+55 + 51 = 106
+55 + 52 = 107
+55 + 53 = 108
+55 + 54 = 109
+55 + 55 = 110
+55 + 56 = 111
+55 + 57 = 112
+55 + 58 = 113
+55 + 59 = 114
+55 + 60 = 115
+55 + 61 = 116
+55 + 62 = 117
+55 + 63 = 118
+56 + 0 = 56
+56 + 1 = 57
+56 + 2 = 58
+56 + 3 = 59
+56 + 4 = 60
+56 + 5 = 61
+56 + 6 = 62
+56 + 7 = 63
+56 + 8 = 64
+56 + 9 = 65
+56 + 10 = 66
+56 + 11 = 67
+56 + 12 = 68
+56 + 13 = 69
+56 + 14 = 70
+56 + 15 = 71
+56 + 16 = 72
+56 + 17 = 73
+56 + 18 = 74
+56 + 19 = 75
+56 + 20 = 76
+56 + 21 = 77
+56 + 22 = 78
+56 + 23 = 79
+56 + 24 = 80
+56 + 25 = 81
+56 + 26 = 82
+56 + 27 = 83
+56 + 28 = 84
+56 + 29 = 85
+56 + 30 = 86
+56 + 31 = 87
+56 + 32 = 88
+56 + 33 = 89
+56 + 34 = 90
+56 + 35 = 91
+56 + 36 = 92
+56 + 37 = 93
+56 + 38 = 94
+56 + 39 = 95
+56 + 40 = 96
+56 + 41 = 97
+56 + 42 = 98
+56 + 43 = 99
+56 + 44 = 100
+56 + 45 = 101
+56 + 46 = 102
+56 + 47 = 103
+56 + 48 = 104
+56 + 49 = 105
+56 + 50 = 106
+56 + 51 = 107
+56 + 52 = 108
+56 + 53 = 109
+56 + 54 = 110
+56 + 55 = 111
+56 + 56 = 112
+56 + 57 = 113
+56 + 58 = 114
+56 + 59 = 115
+56 + 60 = 116
+56 + 61 = 117
+56 + 62 = 118
+56 + 63 = 119
+57 + 0 = 57
+57 + 1 = 58
+57 + 2 = 59
+57 + 3 = 60
+57 + 4 = 61
+57 + 5 = 62
+57 + 6 = 63
+57 + 7 = 64
+57 + 8 = 65
+57 + 9 = 66
+57 + 10 = 67
+57 + 11 = 68
+57 + 12 = 69
+57 + 13 = 70
+57 + 14 = 71
+57 + 15 = 72
+57 + 16 = 73
+57 + 17 = 74
+57 + 18 = 75
+57 + 19 = 76
+57 + 20 = 77
+57 + 21 = 78
+57 + 22 = 79
+57 + 23 = 80
+57 + 24 = 81
+57 + 25 = 82
+57 + 26 = 83
+57 + 27 = 84
+57 + 28 = 85
+57 + 29 = 86
+57 + 30 = 87
+57 + 31 = 88
+57 + 32 = 89
+57 + 33 = 90
+57 + 34 = 91
+57 + 35 = 92
+57 + 36 = 93
+57 + 37 = 94
+57 + 38 = 95
+57 + 39 = 96
+57 + 40 = 97
+57 + 41 = 98
+57 + 42 = 99
+57 + 43 = 100
+57 + 44 = 101
+57 + 45 = 102
+57 + 46 = 103
+57 + 47 = 104
+57 + 48 = 105
+57 + 49 = 106
+57 + 50 = 107
+57 + 51 = 108
+57 + 52 = 109
+57 + 53 = 110
+57 + 54 = 111
+57 + 55 = 112
+57 + 56 = 113
+57 + 57 = 114
+57 + 58 = 115
+57 + 59 = 116
+57 + 60 = 117
+57 + 61 = 118
+57 + 62 = 119
+57 + 63 = 120
+58 + 0 = 58
+58 + 1 = 59
+58 + 2 = 60
+58 + 3 = 61
+58 + 4 = 62
+58 + 5 = 63
+58 + 6 = 64
+58 + 7 = 65
+58 + 8 = 66
+58 + 9 = 67
+58 + 10 = 68
+58 + 11 = 69
+58 + 12 = 70
+58 + 13 = 71
+58 + 14 = 72
+58 + 15 = 73
+58 + 16 = 74
+58 + 17 = 75
+58 + 18 = 76
+58 + 19 = 77
+58 + 20 = 78
+58 + 21 = 79
+58 + 22 = 80
+58 + 23 = 81
+58 + 24 = 82
+58 + 25 = 83
+58 + 26 = 84
+58 + 27 = 85
+58 + 28 = 86
+58 + 29 = 87
+58 + 30 = 88
+58 + 31 = 89
+58 + 32 = 90
+58 + 33 = 91
+58 + 34 = 92
+58 + 35 = 93
+58 + 36 = 94
+58 + 37 = 95
+58 + 38 = 96
+58 + 39 = 97
+58 + 40 = 98
+58 + 41 = 99
+58 + 42 = 100
+58 + 43 = 101
+58 + 44 = 102
+58 + 45 = 103
+58 + 46 = 104
+58 + 47 = 105
+58 + 48 = 106
+58 + 49 = 107
+58 + 50 = 108
+58 + 51 = 109
+58 + 52 = 110
+58 + 53 = 111
+58 + 54 = 112
+58 + 55 = 113
+58 + 56 = 114
+58 + 57 = 115
+58 + 58 = 116
+58 + 59 = 117
+58 + 60 = 118
+58 + 61 = 119
+58 + 62 = 120
+58 + 63 = 121
+59 + 0 = 59
+59 + 1 = 60
+59 + 2 = 61
+59 + 3 = 62
+59 + 4 = 63
+59 + 5 = 64
+59 + 6 = 65
+59 + 7 = 66
+59 + 8 = 67
+59 + 9 = 68
+59 + 10 = 69
+59 + 11 = 70
+59 + 12 = 71
+59 + 13 = 72
+59 + 14 = 73
+59 + 15 = 74
+59 + 16 = 75
+59 + 17 = 76
+59 + 18 = 77
+59 + 19 = 78
+59 + 20 = 79
+59 + 21 = 80
+59 + 22 = 81
+59 + 23 = 82
+59 + 24 = 83
+59 + 25 = 84
+59 + 26 = 85
+59 + 27 = 86
+59 + 28 = 87
+59 + 29 = 88
+59 + 30 = 89
+59 + 31 = 90
+59 + 32 = 91
+59 + 33 = 92
+59 + 34 = 93
+59 + 35 = 94
+59 + 36 = 95
+59 + 37 = 96
+59 + 38 = 97
+59 + 39 = 98
+59 + 40 = 99
+59 + 41 = 100
+59 + 42 = 101
+59 + 43 = 102
+59 + 44 = 103
+59 + 45 = 104
+59 + 46 = 105
+59 + 47 = 106
+59 + 48 = 107
+59 + 49 = 108
+59 + 50 = 109
+59 + 51 = 110
+59 + 52 = 111
+59 + 53 = 112
+59 + 54 = 113
+59 + 55 = 114
+59 + 56 = 115
+59 + 57 = 116
+59 + 58 = 117
+59 + 59 = 118
+59 + 60 = 119
+59 + 61 = 120
+59 + 62 = 121
+59 + 63 = 122
+60 + 0 = 60
+60 + 1 = 61
+60 + 2 = 62
+60 + 3 = 63
+60 + 4 = 64
+60 + 5 = 65
+60 + 6 = 66
+60 + 7 = 67
+60 + 8 = 68
+60 + 9 = 69
+60 + 10 = 70
+60 + 11 = 71
+60 + 12 = 72
+60 + 13 = 73
+60 + 14 = 74
+60 + 15 = 75
+60 + 16 = 76
+60 + 17 = 77
+60 + 18 = 78
+60 + 19 = 79
+60 + 20 = 80
+60 + 21 = 81
+60 + 22 = 82
+60 + 23 = 83
+60 + 24 = 84
+60 + 25 = 85
+60 + 26 = 86
+60 + 27 = 87
+60 + 28 = 88
+60 + 29 = 89
+60 + 30 = 90
+60 + 31 = 91
+60 + 32 = 92
+60 + 33 = 93
+60 + 34 = 94
+60 + 35 = 95
+60 + 36 = 96
+60 + 37 = 97
+60 + 38 = 98
+60 + 39 = 99
+60 + 40 = 100
+60 + 41 = 101
+60 + 42 = 102
+60 + 43 = 103
+60 + 44 = 104
+60 + 45 = 105
+60 + 46 = 106
+60 + 47 = 107
+60 + 48 = 108
+60 + 49 = 109
+60 + 50 = 110
+60 + 51 = 111
+60 + 52 = 112
+60 + 53 = 113
+60 + 54 = 114
+60 + 55 = 115
+60 + 56 = 116
+60 + 57 = 117
+60 + 58 = 118
+60 + 59 = 119
+60 + 60 = 120
+60 + 61 = 121
+60 + 62 = 122
+60 + 63 = 123
+61 + 0 = 61
+61 + 1 = 62
+61 + 2 = 63
+61 + 3 = 64
+61 + 4 = 65
+61 + 5 = 66
+61 + 6 = 67
+61 + 7 = 68
+61 + 8 = 69
+61 + 9 = 70
+61 + 10 = 71
+61 + 11 = 72
+61 + 12 = 73
+61 + 13 = 74
+61 + 14 = 75
+61 + 15 = 76
+61 + 16 = 77
+61 + 17 = 78
+61 + 18 = 79
+61 + 19 = 80
+61 + 20 = 81
+61 + 21 = 82
+61 + 22 = 83
+61 + 23 = 84
+61 + 24 = 85
+61 + 25 = 86
+61 + 26 = 87
+61 + 27 = 88
+61 + 28 = 89
+61 + 29 = 90
+61 + 30 = 91
+61 + 31 = 92
+61 + 32 = 93
+61 + 33 = 94
+61 + 34 = 95
+61 + 35 = 96
+61 + 36 = 97
+61 + 37 = 98
+61 + 38 = 99
+61 + 39 = 100
+61 + 40 = 101
+61 + 41 = 102
+61 + 42 = 103
+61 + 43 = 104
+61 + 44 = 105
+61 + 45 = 106
+61 + 46 = 107
+61 + 47 = 108
+61 + 48 = 109
+61 + 49 = 110
+61 + 50 = 111
+61 + 51 = 112
+61 + 52 = 113
+61 + 53 = 114
+61 + 54 = 115
+61 + 55 = 116
+61 + 56 = 117
+61 + 57 = 118
+61 + 58 = 119
+61 + 59 = 120
+61 + 60 = 121
+61 + 61 = 122
+61 + 62 = 123
+61 + 63 = 124
+62 + 0 = 62
+62 + 1 = 63
+62 + 2 = 64
+62 + 3 = 65
+62 + 4 = 66
+62 + 5 = 67
+62 + 6 = 68
+62 + 7 = 69
+62 + 8 = 70
+62 + 9 = 71
+62 + 10 = 72
+62 + 11 = 73
+62 + 12 = 74
+62 + 13 = 75
+62 + 14 = 76
+62 + 15 = 77
+62 + 16 = 78
+62 + 17 = 79
+62 + 18 = 80
+62 + 19 = 81
+62 + 20 = 82
+62 + 21 = 83
+62 + 22 = 84
+62 + 23 = 85
+62 + 24 = 86
+62 + 25 = 87
+62 + 26 = 88
+62 + 27 = 89
+62 + 28 = 90
+62 + 29 = 91
+62 + 30 = 92
+62 + 31 = 93
+62 + 32 = 94
+62 + 33 = 95
+62 + 34 = 96
+62 + 35 = 97
+62 + 36 = 98
+62 + 37 = 99
+62 + 38 = 100
+62 + 39 = 101
+62 + 40 = 102
+62 + 41 = 103
+62 + 42 = 104
+62 + 43 = 105
+62 + 44 = 106
+62 + 45 = 107
+62 + 46 = 108
+62 + 47 = 109
+62 + 48 = 110
+62 + 49 = 111
+62 + 50 = 112
+62 + 51 = 113
+62 + 52 = 114
+62 + 53 = 115
+62 + 54 = 116
+62 + 55 = 117
+62 + 56 = 118
+62 + 57 = 119
+62 + 58 = 120
+62 + 59 = 121
+62 + 60 = 122
+62 + 61 = 123
+62 + 62 = 124
+62 + 63 = 125
+63 + 0 = 63
+63 + 1 = 64
+63 + 2 = 65
+63 + 3 = 66
+63 + 4 = 67
+63 + 5 = 68
+63 + 6 = 69
+63 + 7 = 70
+63 + 8 = 71
+63 + 9 = 72
+63 + 10 = 73
+63 + 11 = 74
+63 + 12 = 75
+63 + 13 = 76
+63 + 14 = 77
+63 + 15 = 78
+63 + 16 = 79
+63 + 17 = 80
+63 + 18 = 81
+63 + 19 = 82
+63 + 20 = 83
+63 + 21 = 84
+63 + 22 = 85
+63 + 23 = 86
+63 + 24 = 87
+63 + 25 = 88
+63 + 26 = 89
+63 + 27 = 90
+63 + 28 = 91
+63 + 29 = 92
+63 + 30 = 93
+63 + 31 = 94
+63 + 32 = 95
+63 + 33 = 96
+63 + 34 = 97
+63 + 35 = 98
+63 + 36 = 99
+63 + 37 = 100
+63 + 38 = 101
+63 + 39 = 102
+63 + 40 = 103
+63 + 41 = 104
+63 + 42 = 105
+63 + 43 = 106
+63 + 44 = 107
+63 + 45 = 108
+63 + 46 = 109
+63 + 47 = 110
+63 + 48 = 111
+63 + 49 = 112
+63 + 50 = 113
+63 + 51 = 114
+63 + 52 = 115
+63 + 53 = 116
+63 + 54 = 117
+63 + 55 = 118
+63 + 56 = 119
+63 + 57 = 120
+63 + 58 = 121
+63 + 59 = 122
+63 + 60 = 123
+63 + 61 = 124
+63 + 62 = 125
+63 + 63 = 126
+
+Info: /OSCI/SystemC: Simulation stopped by user.
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/promote_add/main.cpp b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/main.cpp
new file mode 100644
index 000000000..30858393b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/main.cpp
@@ -0,0 +1,78 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ main.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /******************************************/
+ /* Main Filename: main.cc */
+ /******************************************/
+ /* */
+ /* 7-bit bool = 6-bit bool + 6-bit bool */
+ /* */
+ /* Max addition is 63 + 63 */
+ /* */
+ /* This example explicitly promotes all */
+ /* variables in the addition to the size */
+ /* of the largest variable (7-bits). */
+ /* */
+ /* This matches Verilog semantics. */
+ /* */
+ /******************************************/
+
+
+#include "datawidth.h"
+#include "stimgen.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// Signal Instantiation
+ sc_signal_bool_vector6 in1 ("in1");
+ sc_signal_bool_vector6 in2 ("in2");
+ sc_signal_bool_vector7 result ("result");
+ sc_signal<bool> ready ("ready");
+
+// Clock Instantiation
+ sc_clock clk( "clock", 10, SC_NS, 0.5, 0, SC_NS);
+
+// Process Instantiation
+ datawidth D1 ("D1", clk, in1, in2, ready, result);
+
+ stimgen T1 ("T1", clk, result, in1, in2, ready);
+
+// Simulation Run Control
+ sc_start();
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/promote_add/promote_add.f b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/promote_add.f
new file mode 100644
index 000000000..b112684ee
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/promote_add.f
@@ -0,0 +1,3 @@
+promote_add/datawidth.cpp
+promote_add/stimgen.cpp
+promote_add/main.cpp
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/promote_add/stimgen.cpp b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/stimgen.cpp
new file mode 100644
index 000000000..6c8c0a149
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/stimgen.cpp
@@ -0,0 +1,68 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /*****************************************/
+ /* Implementation Filename: stimgen.cc */
+ /*****************************************/
+
+#include "stimgen.h"
+
+void
+stimgen::entry()
+{
+ int i;
+ int j;
+
+ ready.write(0);
+
+ for (i = 0; i < 64; i++) { // integer in1 (6 bits of data)
+ for (j = 0; j < 64; j++) { // integer in2 (6 bits of data)
+ in1.write(i);
+ in2.write(j);
+ ready.write(1);
+ wait();
+
+ ready.write(0);
+ wait();
+
+ cout << in1.read().to_uint() << " + " << in2.read().to_uint()
+ << " = " << result.read().to_uint() << endl;
+ }
+ }
+
+ sc_stop();
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/promote_add/stimgen.h b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/stimgen.h
new file mode 100644
index 000000000..438f4df98
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/promote_add/stimgen.h
@@ -0,0 +1,77 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stimgen.h --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+ /************************************/
+ /* Interface Filename: stimgen.h */
+ /************************************/
+
+#include "common.h"
+
+SC_MODULE( stimgen )
+{
+ SC_HAS_PROCESS( stimgen );
+
+ sc_in_clk clk;
+
+ // Inputs
+ const sc_signal_bool_vector7& result;
+ // Outputs
+ sc_signal_bool_vector6& in1;
+ sc_signal_bool_vector6& in2;
+ sc_signal<bool>& ready;
+
+ // Constructor
+ stimgen (sc_module_name NAME,
+ sc_clock& TICK,
+ const sc_signal_bool_vector7& RESULT,
+ sc_signal_bool_vector6& IN1,
+ sc_signal_bool_vector6& IN2,
+ sc_signal<bool>& READY )
+
+ :
+ result (RESULT),
+ in1 (IN1),
+ in2 (IN2),
+ ready (READY)
+
+ {
+ clk (TICK);
+ SC_CTHREAD( entry, clk.pos() );
+ }
+
+ void entry();
+};
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/shift/test1/golden/test1.log b/src/systemc/tests/systemc/misc/unit/data/general/shift/test1/golden/test1.log
new file mode 100644
index 000000000..1c1b9a33d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/shift/test1/golden/test1.log
@@ -0,0 +1,45 @@
+SystemC Simulation
+-34
+width = 7
+value = -34
+bits = 101 1110
+-34
+width = 7
+value = -34
+bits = 101 1110
+-17
+width = 7
+value = -17
+bits = 110 1111
+-9
+width = 7
+value = -9
+bits = 111 0111
+-5
+width = 7
+value = -5
+bits = 111 1011
+-3
+width = 7
+value = -3
+bits = 111 1101
+-17
+width = 7
+value = -17
+bits = 110 1111
+-9
+width = 7
+value = -9
+bits = 111 0111
+-5
+width = 7
+value = -5
+bits = 111 1011
+-3
+width = 7
+value = -3
+bits = 111 1101
+-2
+width = 7
+value = -2
+bits = 111 1110
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/shift/test1/test1.cpp b/src/systemc/tests/systemc/misc/unit/data/general/shift/test1/test1.cpp
new file mode 100644
index 000000000..d380f90ff
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/shift/test1/test1.cpp
@@ -0,0 +1,61 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ test1.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#include "systemc.h"
+
+int
+sc_main(int argc, char* argv[])
+{
+ sc_signed x(7);
+
+ x = -34;
+ cout << x << endl;
+ x.dump(cout);
+ for (int i = 0; i < 5; ++i) {
+ sc_signed y(7);
+ y = x >> i;
+ cout << y << endl;
+ y.dump(cout);
+ }
+ for (int i = 0; i < 5; ++i) {
+ x = x >> 1;
+ cout << x << endl;
+ x.dump(cout);
+ }
+ sc_start(0, SC_NS);
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/std_to_bool/golden/std_to_bool.log b/src/systemc/tests/systemc/misc/unit/data/general/std_to_bool/golden/std_to_bool.log
new file mode 100644
index 000000000..1c5efd6e2
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/std_to_bool/golden/std_to_bool.log
@@ -0,0 +1,5 @@
+SystemC Simulation
+100
+
+Warning: (W207) sc_bv cannot contain values X and Z
+In file: <removed by verify.pl>
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/std_to_bool/std_to_bool.cpp b/src/systemc/tests/systemc/misc/unit/data/general/std_to_bool/std_to_bool.cpp
new file mode 100644
index 000000000..94783c09b
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/std_to_bool/std_to_bool.cpp
@@ -0,0 +1,57 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ std_to_bool.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+/* Main file for bool_vector type simulation */
+
+#include "systemc.h"
+
+int sc_main(int ac, char *av[])
+{
+ sc_bv<3> a;
+ sc_lv<3> b;
+
+ b[2] = '1';
+ b[1] = '0';
+ b[0] = '0';
+
+ a = b;
+ cout << a << endl;
+ // the following line causes error
+ b[1] = 'Z';
+ a = b;
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/std_ulogic_tilda/golden/std_ulogic_tilda.log b/src/systemc/tests/systemc/misc/unit/data/general/std_ulogic_tilda/golden/std_ulogic_tilda.log
new file mode 100644
index 000000000..7108f5cec
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/std_ulogic_tilda/golden/std_ulogic_tilda.log
@@ -0,0 +1,7 @@
+SystemC Simulation
+
+ a = 0 (!1)
+ b = 1 (!0)
+ c = 0 (~1)
+ d = 1 (~0)
+ e = 0 (~1)
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/std_ulogic_tilda/std_ulogic_tilda.cpp b/src/systemc/tests/systemc/misc/unit/data/general/std_ulogic_tilda/std_ulogic_tilda.cpp
new file mode 100644
index 000000000..de21cb0dd
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/std_ulogic_tilda/std_ulogic_tilda.cpp
@@ -0,0 +1,65 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ std_ulogic_tilda.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#include "systemc.h"
+
+int sc_main(int ac, char *av[])
+{
+
+ sc_logic value1 = SC_LOGIC_1;//'1';
+ sc_logic value0 = SC_LOGIC_0;//'0';
+
+ sc_logic a;
+ sc_logic b;
+ sc_logic c;
+ sc_logic d;
+ sc_logic e;
+
+ a = !value1.to_bool();
+ b = !value0.to_bool();
+ c = ~value1;
+ d = ~value0;
+ e = ~sc_logic('1');
+
+ cout << "\n a = " << a << " (!1)"
+ << "\n b = " << b << " (!0)"
+ << "\n c = " << c << " (~1)"
+ << "\n d = " << d << " (~0)"
+ << "\n e = " << e << " (~1)"
+ << endl;
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab1/golden/stab1.log b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab1/golden/stab1.log
new file mode 100644
index 000000000..36ff26d57
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab1/golden/stab1.log
@@ -0,0 +1,1407 @@
+SystemC Simulation
+0011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+0011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+0110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010
+0110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010
+4772331671447451864458176773180
+2089918658842683165477870926064461117931877987786519590800393365932343411570179165664204
+k = 0
+i = 0
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 1
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 2
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 3
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 4
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 5
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 6
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 7
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 8
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 9
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 10
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 11
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 12
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 13
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 14
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 15
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 16
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 17
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 18
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 19
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 20
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 21
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 22
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 23
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 24
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 25
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 26
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 27
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 28
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 29
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 30
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 31
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 32
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 33
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 34
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 35
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 36
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 37
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 38
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 39
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 40
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 41
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 42
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 43
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 44
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 45
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 46
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 47
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 48
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 49
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 50
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 51
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 52
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 53
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 54
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 55
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 56
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 57
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 58
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 59
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 60
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 61
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 62
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 63
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 64
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 65
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 66
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 67
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 68
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 69
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 70
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 71
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 72
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 73
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 74
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 75
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 76
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 77
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 78
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 79
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 80
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 81
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 82
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 83
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 84
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 85
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 86
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 87
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 88
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 89
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 90
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 91
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 92
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 93
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 94
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 95
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 96
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 97
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 98
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 99
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+k = 1
+k = 2
+k = 3
+k = 4
+k = 5
+k = 6
+k = 7
+k = 8
+k = 9
+k = 10
+k = 11
+k = 12
+k = 13
+k = 14
+k = 15
+k = 16
+k = 17
+k = 18
+k = 19
+k = 20
+k = 21
+k = 22
+k = 23
+k = 24
+k = 25
+k = 26
+k = 27
+k = 28
+k = 29
+k = 30
+k = 31
+k = 32
+k = 33
+k = 34
+k = 35
+k = 36
+k = 37
+k = 38
+k = 39
+k = 40
+k = 41
+k = 42
+k = 43
+k = 44
+k = 45
+k = 46
+k = 47
+k = 48
+k = 49
+k = 50
+k = 51
+k = 52
+k = 53
+k = 54
+k = 55
+k = 56
+k = 57
+k = 58
+k = 59
+k = 60
+k = 61
+k = 62
+k = 63
+k = 64
+k = 65
+k = 66
+k = 67
+k = 68
+k = 69
+k = 70
+k = 71
+k = 72
+k = 73
+k = 74
+k = 75
+k = 76
+k = 77
+k = 78
+k = 79
+k = 80
+k = 81
+k = 82
+k = 83
+k = 84
+k = 85
+k = 86
+k = 87
+k = 88
+k = 89
+k = 90
+k = 91
+k = 92
+k = 93
+k = 94
+k = 95
+k = 96
+k = 97
+k = 98
+k = 99
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab1/stab1.cpp b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab1/stab1.cpp
new file mode 100644
index 000000000..9894182f7
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab1/stab1.cpp
@@ -0,0 +1,148 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stab1.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#include "systemc.h"
+
+int
+sc_main( int argc, char* argv[] )
+{
+ int i;
+ sc_bv<325> x;
+ sc_lv<142> y;
+
+ sc_signed z(103);
+ sc_unsigned w(291);
+
+ for (i = 0; i < 325; ++i) {
+ x[i] = ((i & 1) ^ ((i >> 1) & 1));
+ };
+ for (i = 0; i < 325; ++i) {
+ sc_assert( x[i] == ((i & 1) ^ ((i >> 1) & 1)) );
+ };
+ for (i = 0; i < 142; ++i) {
+ y[i] = ((i & 1) ^ ((i >> 2) & 1));
+ }
+ for (i = 0; i < 142; ++i) {
+ // sc_assert( y[i] == char((i & 1) ^ ((i >> 2) & 1)) );
+ sc_assert( y[i] == ((i & 1) ^ ((i >> 2) & 1)) );
+ }
+ for (i = 0; i < 103; ++i) {
+ z[i] = (((i >> 2) & 1) ^ ((i >> 1) & 1));
+ }
+ for (i = 0; i < 103; ++i) {
+ sc_assert( (bool) z[i] == (((i >> 2) & 1) ^ ((i >> 1) & 1)) );
+ }
+ for (i = 0; i < 291; ++i) {
+ w[i] = (((i >> 3) & 1) ^ ((i >> 1) & 1));
+ }
+ for (i = 0; i < 291; ++i) {
+ sc_assert( (bool) w[i] == (((i >> 3) & 1) ^ ((i >> 1) & 1)) );
+ }
+
+ cout << x << endl;
+ cout << x.to_string() << endl;
+ cout << y << endl;
+ cout << y.to_string() << endl;
+ cout << z << endl;
+ cout << w << endl;
+
+ for (int k = 0; k < 100; ++k) {
+ cerr << "k = " << k << endl;
+
+ for (i = 0; i < 100; ++i) {
+ int j;
+
+ if (k == 0) {
+ cout << "i = " << i << endl;
+ cout << x.range(i + 224, i) << endl;
+ cout << x.range(i + 224, i).to_string() << endl;
+ cout << y.range(i + 41, i) << endl;
+ cout << y.range(i + 41, i).to_string() << endl;
+ cout << sc_signed(z.range(i + 2, i)) << endl;
+ cout << sc_unsigned(w.range(i + 190, i)) << endl;
+ cout << x.range(i, i + 224) << endl;
+ cout << x.range(i, i + 224).to_string() << endl;
+ cout << y.range(i, i + 41) << endl;
+ cout << y.range(i, i + 41).to_string() << endl;
+ cout << sc_signed(z.range(i, i + 2)) << endl;
+ cout << sc_unsigned(w.range(i, i + 190)) << endl;
+ } else {
+ (void) x.range(i + 224, i);
+ (void) y.range(i + 41, i);
+ (void) sc_signed(z.range(i + 2, i));
+ (void) sc_unsigned(w.range(i + 190, i));
+ }
+
+ sc_bv<225> foo;
+ sc_bv<225> foo1;
+ foo = x.range(i + 224, i);
+ foo1 = x.range(i, i + 224);
+ for (j = 0; j < 225; ++j) {
+ sc_assert( foo[j] == x[i + j] );
+ sc_assert( foo1[224 - j] == x[i + j] );
+ }
+
+ sc_lv<42> bar;
+ sc_lv<42> bar1;
+ bar = y.range(i + 41, i);
+ bar1 = y.range(i, i + 41);
+ for (j = 0; j < 42; ++j) {
+ sc_assert( bar[j] == y[i + j] );
+ sc_assert( bar1[41 - j] == y[i + j] );
+ }
+
+ sc_signed baz(3);
+ sc_signed baz1(3);
+ baz = z.range(i + 2, i);
+ baz1 = z.range(i, i + 2);
+ for (j = 0; j < 3; ++j) {
+ sc_assert( baz[j] == z[i + j] );
+ sc_assert( baz1[2 - j] == z[i + j] );
+ }
+
+ sc_unsigned quux(191);
+ sc_unsigned quux1(191);
+ quux = w.range(i + 190, i);
+ quux1 = w.range(i, i + 190);
+ for (j = 0; j < 191; ++j) {
+ sc_assert( quux[j] == w[i + j] );
+ sc_assert( quux1[190 - j] == w[i + j] );
+ }
+ }
+ }
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab2/golden/stab2.log b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab2/golden/stab2.log
new file mode 100644
index 000000000..c9fa8e878
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab2/golden/stab2.log
@@ -0,0 +1,1317 @@
+SystemC Simulation
+0011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+0011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+0110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010
+0110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010
+4772331671447451864458176773180
+2089918658842683165477870926064461117931877987786519590800393365932343411570179165664204
+k = 0
+i = 0
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 1
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 2
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 3
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 4
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 5
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 6
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 7
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 8
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 9
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 10
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 11
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 12
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 13
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 14
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 15
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 16
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 17
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 18
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 19
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 20
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 21
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 22
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 23
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 24
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 25
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 26
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 27
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 28
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 29
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 30
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 31
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 32
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 33
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 34
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 35
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 36
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 37
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 38
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 39
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 40
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 41
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 42
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 43
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 44
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 45
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 46
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 47
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 48
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 49
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 50
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 51
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 52
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 53
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 54
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 55
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 56
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 57
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 58
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 59
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 60
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 61
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 62
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 63
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 64
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 65
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 66
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 67
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 68
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 69
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 70
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 71
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 72
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 73
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 74
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 75
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 76
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 77
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 78
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 79
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 80
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 81
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 82
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 83
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+i = 84
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+i = 85
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+i = 86
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+i = 87
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+i = 88
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+i = 89
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+i = 90
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+i = 91
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+i = 92
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+i = 93
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+i = 94
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+i = 95
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+i = 96
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+i = 97
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+i = 98
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+i = 99
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+k = 1
+k = 2
+k = 3
+k = 4
+k = 5
+k = 6
+k = 7
+k = 8
+k = 9
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab2/stab2.cpp b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab2/stab2.cpp
new file mode 100644
index 000000000..487410140
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab2/stab2.cpp
@@ -0,0 +1,172 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stab2.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#include "systemc.h"
+
+int
+sc_main( int argc, char* argv[] )
+{
+ int i;
+ sc_bv<325> x;
+ sc_lv<142> y;
+
+ sc_signed z(103);
+ sc_unsigned w(291);
+
+ for (i = 0; i < 325; ++i) {
+ x[i] = ((i & 1) ^ ((i >> 1) & 1));
+ };
+ for (i = 0; i < 325; ++i) {
+ sc_assert( x[i] == ((i & 1) ^ ((i >> 1) & 1)) );
+ };
+ for (i = 0; i < 142; ++i) {
+ y[i] = ((i & 1) ^ ((i >> 2) & 1));
+ }
+ for (i = 0; i < 142; ++i) {
+ // sc_assert( y[i] == char((i & 1) ^ ((i >> 2) & 1)) );
+ sc_assert( y[i] == ((i & 1) ^ ((i >> 2) & 1)) );
+ }
+ for (i = 0; i < 103; ++i) {
+ z[i] = (((i >> 2) & 1) ^ ((i >> 1) & 1));
+ }
+ for (i = 0; i < 103; ++i) {
+ sc_assert( (bool) z[i] == (((i >> 2) & 1) ^ ((i >> 1) & 1)) );
+ }
+ for (i = 0; i < 291; ++i) {
+ w[i] = (((i >> 3) & 1) ^ ((i >> 1) & 1));
+ }
+ for (i = 0; i < 291; ++i) {
+ sc_assert( (bool) w[i] == (((i >> 3) & 1) ^ ((i >> 1) & 1)) );
+ }
+
+ cout << x << endl;
+ cout << x.to_string() << endl;
+ cout << y << endl;
+ cout << y.to_string() << endl;
+ cout << z << endl;
+ cout << w << endl;
+
+ for (int k = 0; k < 10; ++k) {
+ cerr << "k = " << k << endl;
+
+ for (i = 0; i < 100; ++i) {
+ int j;
+
+ if (k == 0) {
+ cout << "i = " << i << endl;
+ cout << x.range(i + 224, i) << endl;
+ cout << x.range(i + 224, i).to_string() << endl;
+ cout << y.range(i + 41, i) << endl;
+ cout << y.range(i + 41, i).to_string() << endl;
+ cout << sc_signed(z.range(i + 2, i)) << endl;
+ cout << sc_unsigned(w.range(i + 190, i)) << endl;
+ cout << x.range(i, i + 224) << endl;
+ cout << x.range(i, i + 224).to_string() << endl;
+ cout << y.range(i, i + 41) << endl;
+ cout << y.range(i, i + 41).to_string() << endl;
+ cout << sc_signed(z.range(i, i + 2)) << endl;
+ cout << sc_unsigned(w.range(i, i + 190)) << endl;
+ } else {
+ (void) x.range(i + 224, i);
+ (void) y.range(i + 41, i);
+ (void) sc_signed(z.range(i + 2, i));
+ (void) sc_unsigned(w.range(i + 190, i));
+ }
+
+ sc_bv<225> foo;
+ sc_bv<225> foo1;
+ sc_bv<450> foo2;
+ foo = x.range(i + 224, i);
+ foo1 = x.range(i, i + 224);
+ foo2 = (foo1, foo);
+ for (j = 0; j < 225; ++j) {
+ sc_assert( foo[j] == x[i + j] );
+ sc_assert( foo1[224 - j] == x[i + j] );
+ sc_assert( foo2.range(449,225) == foo1 );
+ sc_assert( foo2.range(224,0) == foo );
+ }
+ // (foo, foo1) = (foo1, foo);
+ (foo, foo1) = foo2;
+ for (j = 0; j < 225; ++j) {
+ sc_assert( foo1[j] == x[i + j] );
+ sc_assert( foo[224 - j] == x[i + j] );
+ sc_assert( foo2.range(449,225) == foo );
+ sc_assert( foo2.range(224,0) == foo1 );
+ }
+
+ sc_lv<42> bar;
+ sc_lv<42> bar1;
+ sc_lv<84> bar2;
+ bar = y.range(i + 41, i);
+ bar1 = y.range(i, i + 41);
+ bar2 = (bar1, bar);
+ for (j = 0; j < 42; ++j) {
+ sc_assert( bar[j] == y[i + j] );
+ sc_assert( bar1[41 - j] == y[i + j] );
+ sc_assert( bar2.range(83,42) == bar1 );
+ sc_assert( bar2.range(41,0) == bar );
+ }
+ // (bar, bar1) = (bar1, bar);
+ (bar, bar1) = bar2;
+ for (j = 0; j < 42; ++j) {
+ sc_assert( bar1[j] == y[i + j] );
+ sc_assert( bar[41 - j] == y[i + j] );
+ sc_assert( bar2.range(83,42) == bar );
+ sc_assert( bar2.range(41,0) == bar1 );
+ }
+
+ sc_signed baz(3);
+ sc_signed baz1(3);
+ baz = z.range(i + 2, i);
+ baz1 = z.range(i, i + 2);
+ for (j = 0; j < 3; ++j) {
+ sc_assert( baz[j] == z[i + j] );
+ sc_assert( baz1[2 - j] == z[i + j] );
+ }
+
+ sc_unsigned quux(191);
+ sc_unsigned quux1(191);
+ quux = w.range(i + 190, i);
+ quux1 = w.range(i, i + 190);
+ for (j = 0; j < 191; ++j) {
+ sc_assert( quux[j] == w[i + j] );
+ sc_assert( quux1[190 - j] == w[i + j] );
+ }
+ }
+ }
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab3/golden/stab3.log b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab3/golden/stab3.log
new file mode 100644
index 000000000..663602c05
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab3/golden/stab3.log
@@ -0,0 +1,1717 @@
+SystemC Simulation
+0011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+0011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+0110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010
+0110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010010110100101101001011010
+4772331671447451864458176773180
+2089918658842683165477870926064461117931877987786519590800393365932343411570179165664204
+k = 0
+i = 0
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 1
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 2
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 3
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 4
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 5
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 6
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 7
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 8
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 9
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 10
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 11
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 12
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 13
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 14
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 15
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 16
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 17
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 18
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 19
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 20
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 21
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 22
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 23
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 24
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 25
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 26
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 27
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 28
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 29
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 30
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 31
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 32
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 33
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 34
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 35
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 36
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 37
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 38
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 39
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 40
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 41
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 42
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 43
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 44
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 45
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 46
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 47
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 48
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 49
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 50
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 51
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 52
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 53
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 54
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 55
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 56
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 57
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 58
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 59
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 60
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 61
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 62
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 63
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 64
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 65
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 66
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 67
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 68
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 69
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 70
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 71
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 72
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 73
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 74
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 75
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 76
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 77
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 78
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 79
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 80
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 81
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 82
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 83
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 84
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1648655125052921990501617844616799545085248998059619959612
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+744947871320209195708138433493516831482964362086198648417
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 85
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+2393602996373131186209756278110316376568213360145818608030
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1489895742640418391416276866987033662965928724172397296835
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 86
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1196801498186565593104878139055158188284106680072909304015
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+2979791485280836782832553733974067325931857448344794593670
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 87
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+598400749093282796552439069527579094142053340036454652007
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2821032102868333183747212756344301443812537174457571930892
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 88
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1868475808393311589235166890565706151096615531134235954227
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+2503513338043325985576530801084769679573896626683126605337
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 89
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+2503513338043325985576530801084769679573896626683126605337
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1868475808393311589235166890565706151096615531134235954227
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 90
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+2821032102868333183747212756344301443812537174457571930892
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+598400749093282796552439069527579094142053340036454652007
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 91
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+2979791485280836782832553733974067325931857448344794593670
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1196801498186565593104878139055158188284106680072909304015
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+i = 92
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+3
+1489895742640418391416276866987033662965928724172397296835
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-2
+2393602996373131186209756278110316376568213360145818608030
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+01101001011010010110100101101001011010010100111
+11110101001011010010110100101101001011010010110
+i = 93
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+1
+744947871320209195708138433493516831482964362086198648417
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-4
+1648655125052921990501617844616799545085248998059619959612
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+10110100101101001011010010110100101101001000111
+11110010010110100101101001011010010110100101101
+i = 94
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+0
+1941749369506774788813016572548675019767071042159107952432
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+0
+158759382412503599085340977629765882119320273887222662777
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+01011010010110100101101001011010010110100100111
+11110100101101001011010010110100101101001011010
+i = 95
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+2540150118600057585365455642076254113909124382195562604440
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001011010010110100101101001011010010110100
+001011010010110100101101001011010010110100
+0
+317518764825007198170681955259531764238640547774445325555
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+00101101001011010010110100101101001011010000111
+11110001011010010110100101101001011010010110100
+i = 96
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+100101101001011010010110100101101001011010
+100101101001011010010110100101101001011010
+-4
+1270075059300028792682727821038127056954562191097781302220
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+010110100101101001011010010110100101101001
+010110100101101001011010010110100101101001
+1
+635037529650014396341363910519063528477281095548890651110
+00110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011000111
+11110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+10010110100101101001011010010110100101101000111
+11110010110100101101001011010010110100101101001
+i = 97
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+010010110100101101001011010010110100101101
+010010110100101101001011010010110100101101
+-2
+635037529650014396341363910519063528477281095548890651110
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101101001011010010110100101101001011010010
+101101001011010010110100101101001011010010
+3
+1270075059300028792682727821038127056954562191097781302220
+10011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100111
+11110110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+01001011010010110100101101001011010010110100111
+11110101101001011010010110100101101001011010010
+i = 98
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001
+101001011010010110100101101001011010010110
+101001011010010110100101101001011010010110
+-1
+317518764825007198170681955259531764238640547774445325555
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+011010010110100101101001011010010110100101
+011010010110100101101001011010010110100101
+-1
+2540150118600057585365455642076254113909124382195562604440
+11001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100100111
+11110100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011
+10100101101001011010010110100101101001011000111
+11110011010010110100101101001011010010110100101
+i = 99
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+158759382412503599085340977629765882119320273887222662777
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+110100101101001011010010110100101101001011
+110100101101001011010010110100101101001011
+-1
+1941749369506774788813016572548675019767071042159107952432
+01100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110000111
+11110001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110011001100110
+11010010110100101101001011010010110100101100111
+11110110100101101001011010010110100101101001011
+k = 1
+k = 2
+k = 3
+k = 4
+k = 5
+k = 6
+k = 7
+k = 8
+k = 9
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab3/stab3.cpp b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab3/stab3.cpp
new file mode 100644
index 000000000..bc3afd550
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/subvector/stab3/stab3.cpp
@@ -0,0 +1,223 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ stab3.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#include "systemc.h"
+
+int
+sc_main( int argc, char* argv[] )
+{
+ int i;
+ sc_bv<325> x;
+ sc_lv<142> y;
+
+ sc_signed z(103);
+ sc_unsigned w(291);
+
+ for (i = 0; i < 325; ++i) {
+ x[i] = ((i & 1) ^ ((i >> 1) & 1));
+ };
+ for (i = 0; i < 325; ++i) {
+ sc_assert( x[i] == ((i & 1) ^ ((i >> 1) & 1)) );
+ };
+ for (i = 0; i < 142; ++i) {
+ y[i] = ((i & 1) ^ ((i >> 2) & 1));
+ }
+ for (i = 0; i < 142; ++i) {
+ // sc_assert( y[i] == char((i & 1) ^ ((i >> 2) & 1)) );
+ sc_assert( y[i] == ((i & 1) ^ ((i >> 2) & 1)) );
+ }
+ for (i = 0; i < 103; ++i) {
+ z[i] = (((i >> 2) & 1) ^ ((i >> 1) & 1));
+ }
+ for (i = 0; i < 103; ++i) {
+ sc_assert( (bool) z[i] == (((i >> 2) & 1) ^ ((i >> 1) & 1)) );
+ }
+ for (i = 0; i < 291; ++i) {
+ w[i] = (((i >> 3) & 1) ^ ((i >> 1) & 1));
+ }
+ for (i = 0; i < 291; ++i) {
+ sc_assert( (bool) (w[i] == (((i >> 3) & 1) ^ ((i >> 1) & 1))) );
+ }
+
+ cout << x << endl;
+ cout << x.to_string() << endl;
+ cout << y << endl;
+ cout << y.to_string() << endl;
+ cout << z << endl;
+ cout << w << endl;
+
+ for (int k = 0; k < 10; ++k) {
+ cerr << "k = " << k << endl;
+
+ for (i = 0; i < 100; ++i) {
+ int j;
+
+ if (k == 0) {
+ cout << "i = " << i << endl;
+ cout << x.range(i + 224, i) << endl;
+ cout << x.range(i + 224, i).to_string() << endl;
+ cout << y.range(i + 41, i) << endl;
+ cout << y.range(i + 41, i).to_string() << endl;
+ cout << sc_signed(z.range(i + 2, i)) << endl;
+ cout << sc_unsigned(w.range(i + 190, i)) << endl;
+ cout << x.range(i, i + 224) << endl;
+ cout << x.range(i, i + 224).to_string() << endl;
+ cout << y.range(i, i + 41) << endl;
+ cout << y.range(i, i + 41).to_string() << endl;
+ cout << sc_signed(z.range(i, i + 2)) << endl;
+ cout << sc_unsigned(w.range(i, i + 190)) << endl;
+ } else {
+ (void) x.range(i + 224, i);
+ (void) y.range(i + 41, i);
+ (void) sc_signed(z.range(i + 2, i));
+ (void) sc_unsigned(w.range(i + 190, i));
+ }
+
+ sc_bv<225> foo;
+ sc_bv<225> foo1;
+ sc_bv<450> foo2;
+ foo = x.range(i + 224, i);
+ foo1 = x.range(i, i + 224);
+ foo2 = (foo1, foo);
+ for (j = 0; j < 225; ++j) {
+ sc_assert( foo[j] == x[i + j] );
+ sc_assert( foo1[224 - j] == x[i + j] );
+ sc_assert( foo2.range(449,225) == foo1 );
+ sc_assert( foo2.range(224,0) == foo );
+ }
+ // (foo, foo1) = (foo1, foo);
+ (foo, foo1) = foo2;
+ for (j = 0; j < 225; ++j) {
+ sc_assert( foo1[j] == x[i + j] );
+ sc_assert( foo[224 - j] == x[i + j] );
+ sc_assert( foo2.range(449,225) == foo );
+ sc_assert( foo2.range(224,0) == foo1 );
+ }
+
+ sc_bv<230> foo3;
+ foo3 = (foo1, "01101");
+ sc_assert( foo3.range(4,0) == "01101" );
+ foo3.range(3,1) = "011";
+ sc_assert( foo3.range(4,0) == "00111" );
+ for (j = 0; j < 225; ++j) {
+ sc_assert(foo3[j + 5] == foo1[j]);
+ }
+ if (k == 0) {
+ cout << foo3 << endl;
+ }
+ foo3 = ("10100", foo);
+ sc_assert( foo3.range(229,225) == "10100" );
+ foo3.range(228,226) = "111";
+ sc_assert( foo3.range(229,225) == "11110" );
+ for (j = 0; j < 225; ++j) {
+ sc_assert(foo3[j] == foo[j]);
+ }
+ if (k == 0) {
+ cout << foo3 << endl;
+ }
+ foo3 = ("110", foo3.range(229,5), "01");
+ sc_assert( foo3.range(229,227) == "110" );
+ sc_assert( foo3.range(1,0) == "01" );
+
+ sc_lv<42> bar;
+ sc_lv<42> bar1;
+ sc_lv<84> bar2;
+ bar = y.range(i + 41, i);
+ bar1 = y.range(i, i + 41);
+ bar2 = (bar1, bar);
+ for (j = 0; j < 42; ++j) {
+ sc_assert( bar[j] == y[i + j] );
+ sc_assert( bar1[41 - j] == y[i + j] );
+ sc_assert( bar2.range(83,42) == bar1 );
+ sc_assert( bar2.range(41,0) == bar );
+ }
+ // (bar, bar1) = (bar1, bar);
+ (bar, bar1) = bar2;
+ for (j = 0; j < 42; ++j) {
+ sc_assert( bar1[j] == y[i + j] );
+ sc_assert( bar[41 - j] == y[i + j] );
+ sc_assert( bar2.range(83,42) == bar );
+ sc_assert( bar2.range(41,0) == bar1 );
+ }
+
+ sc_bv<47> bar3;
+ bar3 = (bar1, "01101");
+ sc_assert( bar3.range(4,0) == "01101" );
+ bar3.range(3,1) = "011";
+ sc_assert( bar3.range(4,0) == "00111" );
+ for (j = 0; j < 42; ++j) {
+ sc_assert(bar3[j + 5] == bar1[j]);
+ }
+ if (k == 0) {
+ cout << bar3 << endl;
+ }
+ bar3 = ("10100", bar);
+ sc_assert( bar3.range(46,42) == "10100" );
+ bar3.range(45,43) = "111";
+ sc_assert( bar3.range(46,42) == "11110" );
+ for (j = 0; j < 42; ++j) {
+ sc_assert(bar3[j] == bar[j]);
+ }
+ if (k == 0) {
+ cout << bar3 << endl;
+ }
+ bar3 = ("101", bar3.range(46,5), "10");
+ sc_assert( bar3.range(46,44) == "101" );
+ sc_assert( bar3.range(1,0) == "10" );
+
+
+ sc_signed baz(3);
+ sc_signed baz1(3);
+ baz = z.range(i + 2, i);
+ baz1 = z.range(i, i + 2);
+ for (j = 0; j < 3; ++j) {
+ sc_assert( baz[j] == z[i + j] );
+ sc_assert( baz1[2 - j] == z[i + j] );
+ }
+
+ sc_unsigned quux(191);
+ sc_unsigned quux1(191);
+ quux = w.range(i + 190, i);
+ quux1 = w.range(i, i + 190);
+ for (j = 0; j < 191; ++j) {
+ sc_assert( quux[j] == w[i + j] );
+ sc_assert( quux1[190 - j] == w[i + j] );
+ }
+ }
+ }
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/subvector/test1/golden/test1.log b/src/systemc/tests/systemc/misc/unit/data/general/subvector/test1/golden/test1.log
new file mode 100644
index 000000000..f13d52825
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/subvector/test1/golden/test1.log
@@ -0,0 +1,63 @@
+SystemC Simulation
+b1.range(5,2) ...
+x[3] = 1
+x[2] = 1
+x[1] = 0
+x[0] = 1
+b2.range(4,1) ...
+x[3] = 1
+x[2] = 0
+x[1] = 0
+x[0] = 1
+b3.range(6,3) ...
+x[3] = 1
+x[2] = 0
+x[1] = 1
+x[0] = 1
+b1 = 0010110101
+b2 = 10010011
+b3 = 1011011
+u1 = 235
+u2 = 67
+u3 = 44
+s1 = -235
+s2 = -32
+s3 = -1
+b1.range(3,0) = 0101
+b1.range(0,3) = 1010
+b2.range(4,1) = 1001
+b2.range(1,4) = 1001
+b3.range(5,3) = 011
+b3.range(3,5) = 110
+u1.range(3,0) = 11
+u1.range(0,3) = 13
+u2.range(4,1) = 1
+u2.range(1,4) = 8
+u3.range(5,3) = 5
+u3.range(3,5) = 5
+u3.range(6,3) = 5
+u3 = 44
+s1.range(3,0) = 5
+s1.range(0,3) = -6
+s2.range(4,1) = 0
+s2.range(1,4) = 0
+s3.range(5,3) = -1
+s3.range(3,5) = -1
+s3.range(6,3) = -1
+s3 = -1
+u1.range(3,0) = 5
+u1.range(0,3) = 10
+u2.range(4,1) = 9
+u2.range(1,4) = 9
+u3.range(5,3) = 3
+u3.range(3,5) = 6
+u3.range(6,3) = 11
+u3 = 91
+s1.range(3,0) = 5
+s1.range(0,3) = -6
+s2.range(4,1) = -7
+s2.range(1,4) = -7
+s3.range(5,3) = 3
+s3.range(3,5) = -2
+s3.range(6,3) = -5
+s3 = -37
diff --git a/src/systemc/tests/systemc/misc/unit/data/general/subvector/test1/test1.cpp b/src/systemc/tests/systemc/misc/unit/data/general/subvector/test1/test1.cpp
new file mode 100644
index 000000000..0b90993ef
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/general/subvector/test1/test1.cpp
@@ -0,0 +1,147 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ test1.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+#include "systemc.h"
+
+void
+one_to_four( const sc_bv<4>& x )
+{
+ cout << "x[3] = " << x[3] << endl;
+ cout << "x[2] = " << x[2] << endl;
+ cout << "x[1] = " << x[1] << endl;
+ cout << "x[0] = " << x[0] << endl;
+}
+
+int
+sc_main( int argc, char* argv[] )
+{
+ sc_bv<10> b1;
+ sc_bv<8> b2;
+ sc_bv<7> b3;
+
+ sc_biguint<10> u1;
+ sc_biguint<8> u2;
+ sc_biguint<7> u3;
+
+ sc_bigint<10> s1;
+ sc_bigint<8> s2;
+ sc_bigint<7> s3;
+
+ b1 = "0010110101";
+ b2 = "10010011";
+ b3 = "1011011";
+
+ cout << "b1.range(5,2) ... " << endl;
+ one_to_four(b1.range(5,2));
+ cout << "b2.range(4,1) ... " << endl;
+ one_to_four(b2.range(4,1));
+ cout << "b3.range(6,3) ... " << endl;
+ one_to_four(b3.range(6,3));
+
+ u1 = 235;
+ u2 = 67;
+ u3 = 44;
+
+ s1 = -235;
+ s2 = -32;
+ s3 = -1;
+
+ cout << "b1 = " << b1 << endl;
+ cout << "b2 = " << b2 << endl;
+ cout << "b3 = " << b3 << endl;
+
+ cout << "u1 = " << u1 << endl;
+ cout << "u2 = " << u2 << endl;
+ cout << "u3 = " << u3 << endl;
+
+ cout << "s1 = " << s1 << endl;
+ cout << "s2 = " << s2 << endl;
+ cout << "s3 = " << s3 << endl;
+
+ cout << "b1.range(3,0) = " << b1.range(3,0) << endl;
+ cout << "b1.range(0,3) = " << b1.range(0,3) << endl;
+ cout << "b2.range(4,1) = " << b2.range(4,1) << endl;
+ cout << "b2.range(1,4) = " << b2.range(1,4) << endl;
+ cout << "b3.range(5,3) = " << b3.range(5,3) << endl;
+ cout << "b3.range(3,5) = " << b3.range(3,5) << endl;
+
+ cout << "u1.range(3,0) = " << sc_unsigned(u1.range(3,0)) << endl;
+ cout << "u1.range(0,3) = " << sc_unsigned(u1.range(0,3)) << endl;
+ cout << "u2.range(4,1) = " << sc_unsigned(u2.range(4,1)) << endl;
+ cout << "u2.range(1,4) = " << sc_unsigned(u2.range(1,4)) << endl;
+ cout << "u3.range(5,3) = " << sc_unsigned(u3.range(5,3)) << endl;
+ cout << "u3.range(3,5) = " << sc_unsigned(u3.range(3,5)) << endl;
+ cout << "u3.range(6,3) = " << sc_unsigned(u3.range(6,3)) << endl;
+ cout << "u3 = " << u3 << endl;
+
+ cout << "s1.range(3,0) = " << sc_signed(s1.range(3,0)) << endl;
+ cout << "s1.range(0,3) = " << sc_signed(s1.range(0,3)) << endl;
+ cout << "s2.range(4,1) = " << sc_signed(s2.range(4,1)) << endl;
+ cout << "s2.range(1,4) = " << sc_signed(s2.range(1,4)) << endl;
+ cout << "s3.range(5,3) = " << sc_signed(s3.range(5,3)) << endl;
+ cout << "s3.range(3,5) = " << sc_signed(s3.range(3,5)) << endl;
+ cout << "s3.range(6,3) = " << sc_signed(s3.range(6,3)) << endl;
+ cout << "s3 = " << s3 << endl;
+
+ u1 = b1;
+ u2 = b2;
+ u3 = b3;
+
+ s1 = b1;
+ s2 = b2;
+ s3 = b3;
+
+ cout << "u1.range(3,0) = " << sc_unsigned(u1.range(3,0)) << endl;
+ cout << "u1.range(0,3) = " << sc_unsigned(u1.range(0,3)) << endl;
+ cout << "u2.range(4,1) = " << sc_unsigned(u2.range(4,1)) << endl;
+ cout << "u2.range(1,4) = " << sc_unsigned(u2.range(1,4)) << endl;
+ cout << "u3.range(5,3) = " << sc_unsigned(u3.range(5,3)) << endl;
+ cout << "u3.range(3,5) = " << sc_unsigned(u3.range(3,5)) << endl;
+ cout << "u3.range(6,3) = " << sc_unsigned(u3.range(6,3)) << endl;
+ cout << "u3 = " << u3 << endl;
+
+ cout << "s1.range(3,0) = " << sc_signed(s1.range(3,0)) << endl;
+ cout << "s1.range(0,3) = " << sc_signed(s1.range(0,3)) << endl;
+ cout << "s2.range(4,1) = " << sc_signed(s2.range(4,1)) << endl;
+ cout << "s2.range(1,4) = " << sc_signed(s2.range(1,4)) << endl;
+ cout << "s3.range(5,3) = " << sc_signed(s3.range(5,3)) << endl;
+ cout << "s3.range(3,5) = " << sc_signed(s3.range(3,5)) << endl;
+ cout << "s3.range(6,3) = " << sc_signed(s3.range(6,3)) << endl;
+ cout << "s3 = " << s3 << endl;
+
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/c_array_datatype/c_array_datatype.cpp b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/c_array_datatype/c_array_datatype.cpp
new file mode 100644
index 000000000..db29e9061
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/c_array_datatype/c_array_datatype.cpp
@@ -0,0 +1,110 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ c_array_datatype.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+/* Main file for "C array" data type */
+
+#include "systemc.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// 1. DECLARATION SYNTAX
+ int a[4] = { 0, 23, -534, 23423 };
+ long b[4] = { 0, 23, -534, 23423 };
+ short c[4] = { 0, 23, -534, 23423 };
+ char d[9] = { 'U', 'X', '0', '1', 'Z', 'W', 'L', 'H', '-' };
+
+ unsigned int e[4] = { 0, 23, 534, 23423 };
+ unsigned long f[4] = { 0, 23, 534, 23423 };
+ unsigned short g[4] = { 0, 23, 534, 23423 };
+ unsigned char h[9] = { 'U', 'X', '0', '1', 'Z', 'W', 'L', 'H', '-' };
+
+ float i[4] = { 0, 4.89, -345.6778, 543222.898394322 };
+ double j[4] = { 0, 4.89, -345.6778, 543222.898394322 };
+// type 'long double' is non-portable
+// long double k[4] = { 0, 4.89, -345.6778, 543222.898394322 };
+
+ bool l[4] = { 0, 1, true, false };
+
+ sc_logic m[9] = { sc_logic('U'), sc_logic('X'), sc_logic('0'), sc_logic('1'),
+ sc_logic('Z'), sc_logic('W'), sc_logic('L'), sc_logic('H'), sc_logic('-') };
+
+
+// 2. TYPE CONVERSION
+
+ // No type conversion because assignment of arrays is illegal
+
+// 3. OPERATORS
+// Supported operators: []
+
+ cout.precision(15);
+ cout << "\nINT \t\t"
+ << a[0] << "\t" << a[1] << "\t" << a[2] << "\t" << a[3]
+ << "\nLONG \t\t"
+ << b[0] << "\t" << b[1] << "\t" << b[2] << "\t" << b[3]
+ << "\nSHORT \t\t"
+ << c[0] << "\t" << c[1] << "\t" << c[2] << "\t" << c[3]
+ << "\nCHAR \t\t"
+ << d[0] << "\t" << d[1] << "\t" << d[2] << "\t"
+ << d[3] << "\t" << d[4] << "\t" << d[5] << "\t"
+ << d[6] << "\t" << d[7] << "\t" << d[8]
+ << "\n\nUNSIGNED INT \t"
+ << e[0] << "\t" << e[1] << "\t" << e[2] << "\t" << e[3]
+ << "\nUNSIGNED LONG \t"
+ << f[0] << "\t" << f[1] << "\t" << f[2] << "\t" << f[3]
+ << "\nUNSIGNED SHORT \t"
+ << g[0] << "\t" << g[1] << "\t" << g[2] << "\t" << g[3]
+ << "\nUNSIGNED CHAR \t"
+ << h[0] << "\t" << h[1] << "\t" << h[2] << "\t"
+ << h[3] << "\t" << h[4] << "\t" << h[5] << "\t"
+ << h[6] << "\t" << h[7] << "\t" << h[8]
+ << "\n\nFLOAT \t\t"
+ << i[0] << "\t" << i[1] << "\t" << i[2] << "\t" << i[3]
+ << "\nDOUBLE \t\t"
+ << j[0] << "\t" << j[1] << "\t" << j[2] << "\t" << j[3]
+// type 'long double' is non-portable
+// << "\nLONG DOUBLE \t"
+// << k[0] << "\t" << k[1] << "\t" << k[2] << "\t" << k[3]
+ << "\n\nBOOL \t\t"
+ << l[0] << "\t" << l[1] << "\t" << l[2] << "\t" << l[3]
+ << "\nSTD_ULOGIC \t"
+ << m[0] << "\t" << m[1] << "\t" << m[2] << "\t"
+ << m[3] << "\t" << m[4] << "\t" << m[5] << "\t"
+ << m[6] << "\t" << m[7] << "\t" << m[8]
+ << endl;
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/c_array_datatype/golden/c_array_datatype.log b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/c_array_datatype/golden/c_array_datatype.log
new file mode 100644
index 000000000..3e0671235
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/c_array_datatype/golden/c_array_datatype.log
@@ -0,0 +1,17 @@
+SystemC Simulation
+
+INT 0 23 -534 23423
+LONG 0 23 -534 23423
+SHORT 0 23 -534 23423
+CHAR U X 0 1 Z W L H -
+
+UNSIGNED INT 0 23 534 23423
+UNSIGNED LONG 0 23 534 23423
+UNSIGNED SHORT 0 23 534 23423
+UNSIGNED CHAR U X 0 1 Z W L H -
+
+FLOAT 0 4.8899998664856 -345.677795410156 543222.875
+DOUBLE 0 4.89 -345.6778 543222.898394322
+
+BOOL 0 1 1 0
+STD_ULOGIC X X 0 1 Z X X X X
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/int_datatype/golden/int_datatype.log b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/int_datatype/golden/int_datatype.log
new file mode 100644
index 000000000..dcaba007d
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/int_datatype/golden/int_datatype.log
@@ -0,0 +1,46 @@
+SystemC Simulation
+int <= int
+---------------------
+A = 5 5
+B = -12 -12
+
+op1 operator op2 result [All operands are int]
+----------------------------------------------------------------
+13 * 3 = 39
+13 / 3 = 4
+13 % 3 = 1
+13 + 3 = 16
+13 - 3 = 10
+!(13) = 0
+13 && 3 = 1
+13 || 3 = 1
+13 < 3 = 0
+13 <= 3 = 0
+13 > 3 = 1
+13 >= 3 = 1
+13 += 3 = 16
+13 -= 3 = 10
+13 *= 3 = 39
+13 /= 3 = 4
+13 %= 3 = 1
+13 <<= 3 = 104
+13 >>= 3 = 1
+13 &= 3 = 1
+13 ^= 3 = 14
+13 |= 3 = 15
+ ()++ 3 = 3
+ ++() 3 = 4
+ ()-- 3 = 3
+ --() 3 = 2
+13 > ?: 3 = 1
+13 < ?: 3 = 0
+13 , 3 = 3
+~(13) = 4294967282
+13 << 3 = 104
+13 >> 3 = 1
+13 & 3 = 1
+13 ^ 3 = 14
+13 | 3 = 15
+13 == 3 -> false
+13 != 3 -> true
+0 = 0
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/int_datatype/int_datatype.cpp b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/int_datatype/int_datatype.cpp
new file mode 100644
index 000000000..c1a8fb6cc
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/int_datatype/int_datatype.cpp
@@ -0,0 +1,217 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ int_datatype.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+/* Main file for "int" data type */
+
+#include "systemc.h"
+
+int sc_main(int ac, char *av[])
+{
+
+// 1. DECLARATION SYNTAX
+ int a;
+ int b;
+
+// 2. TYPE CONVERSION
+
+ // int <- int
+ a = 5;
+ b = -12;
+
+ cout << "int \t<=\t int"
+ << "\n---------------------"
+ << "\nA = " << a << "\t\t 5"
+ << "\nB = " << b << "\t\t -12"
+ << "\n" << endl;
+
+ // **** ADD MORE TYPE CONVERSIONS *****
+
+// 3. OPERATORS
+// Supported operators: ! && || ~ & ^ | + - * / % << >>
+// &= ^= |= += -= *= /= %= <<= >>=
+// = == != < <= > >= << >>
+// ()++ ++() ()-- --() ?: ,
+
+#define VAL1 13
+#define VAL2 3
+
+ unsigned int op1 = VAL1;
+ unsigned int op2 = VAL2;
+ unsigned int r1, r2, r3, r4, r5, r6, r7, r8, r9;
+ unsigned int r10, r11, r12, r13, r14, r15, r16, r17, r18, r19;
+ unsigned int r20, r21, r22, r23, r24, r25, r26, r27, r28, r29;
+ unsigned int r30, r31, r32, r33, r34, r35;
+
+ r1 = op1 * op2; // Multiplication
+
+ r2 = op1 / op2; // Division
+
+ r3 = op1 % op2; // Modulus
+
+ r4 = op1 + op2; // Addition
+
+ r5 = op1 - op2; // Subtraction
+
+ r6 = !op1; // Logical NOT
+
+ r7 = op1 && op2; // Logical AND
+
+ r8 = op1 || op2; // Logical OR
+
+ r9 = op1 < op2; // Less than
+
+ r10 = op1 <= op2; // Less than or equal
+
+ r11 = op1 > op2; // Greater than
+
+ r12 = op1 >= op2; // Greater than or equal
+
+ r13 = op1 += op2; // Compound addition
+ op1 = VAL1; op2 = VAL2;
+
+ r14 = op1 -= op2; // Compound subtraction
+ op1 = VAL1; op2 = VAL2;
+
+ r15 = op1 *= op2; // Compound multiplication
+ op1 = VAL1; op2 = VAL2;
+
+ r16 = op1 /= op2; // Compound division
+ op1 = VAL1; op2 = VAL2;
+
+ r17 = op1 %= op2; // Compound modulus
+ op1 = VAL1; op2 = VAL2;
+
+ r18 = op1 <<= op2; // Compound shift left
+ op1 = VAL1; op2 = VAL2;
+
+ r19 = op1 >>= op2; // Compound shift right
+ op1 = VAL1; op2 = VAL2;
+
+ r20 = op1 &= op2; // Compound bitwise AND
+ op1 = VAL1; op2 = VAL2;
+
+ r21 = op1 ^= op2; // Compound bitwise XOR
+ op1 = VAL1; op2 = VAL2;
+
+ r22 = op1 |= op2; // Compound bitwise OR
+ op1 = VAL1; op2 = VAL2;
+
+ r23 = op2++; // Postfix increment
+ op1 = VAL1; op2 = VAL2;
+
+ r24 = ++op2; // Prefix increment
+ op1 = VAL1; op2 = VAL2;
+
+ r25 = op2--; // Postfix decrement
+ op1 = VAL1; op2 = VAL2;
+
+ r26 = --op2; // Prefix decrement
+ op1 = VAL1; op2 = VAL2;
+
+ r27 = (op1 > op2) ? true : false; // Arithmetic if
+ r28 = (op1 < op2) ? true : false; // Arithmetic if
+
+ r29 = op1, r29 = op2; // Comma
+
+ r30 = ~op1; // Bitwise NOT
+
+ r31 = op1 << op2; // Left shift
+ op1 = VAL1; op2 = VAL2;
+
+ r32 = op1 >> op2; // Right shift
+ op1 = VAL1; op2 = VAL2;
+
+ r33 = op1 & op2; // Bitwise AND
+
+ r34 = op1 ^ op2; // Bitwise XOR
+
+ r35 = op1 | op2; // Bitwise OR
+
+ cout << "op1 \t operator \t op2 \t result [All operands are int]"
+ << "\n----------------------------------------------------------------"
+ << "\n" << op1 << "\t * \t\t " << op2 << "\t = " << r1
+ << "\n" << op1 << "\t / \t\t " << op2 << "\t = " << r2
+ << "\n" << op1 << "\t % \t\t " << op2 << "\t = " << r3
+ << "\n" << op1 << "\t + \t\t " << op2 << "\t = " << r4
+ << "\n" << op1 << "\t - \t\t " << op2 << "\t = " << r5
+ << "\n!(" << op1 << ") \t\t\t\t = " << r6
+ << "\n" << op1 << "\t && \t\t " << op2 << "\t = " << r7
+ << "\n" << op1 << "\t || \t\t " << op2 << "\t = " << r8
+ << "\n" << op1 << "\t < \t\t " << op2 << "\t = " << r9
+ << "\n" << op1 << "\t <= \t\t " << op2 << "\t = " << r10
+ << "\n" << op1 << "\t > \t\t " << op2 << "\t = " << r11
+ << "\n" << op1 << "\t >= \t\t " << op2 << "\t = " << r12
+ << "\n" << op1 << "\t += \t\t " << op2 << "\t = " << r13
+ << "\n" << op1 << "\t -= \t\t " << op2 << "\t = " << r14
+ << "\n" << op1 << "\t *= \t\t " << op2 << "\t = " << r15
+ << "\n" << op1 << "\t /= \t\t " << op2 << "\t = " << r16
+ << "\n" << op1 << "\t %= \t\t " << op2 << "\t = " << r17
+ << "\n" << op1 << "\t <<=\t\t " << op2 << "\t = " << r18
+ << "\n" << op1 << "\t >>=\t\t " << op2 << "\t = " << r19
+ << "\n" << op1 << "\t &= \t\t " << op2 << "\t = " << r20
+ << "\n" << op1 << "\t ^= \t\t " << op2 << "\t = " << r21
+ << "\n" << op1 << "\t |= \t\t " << op2 << "\t = " << r22
+ << "\n" << "\t ()++ \t " << op2 << "\t = " << r23
+ << "\n" << "\t ++() \t " << op2 << "\t = " << r24
+ << "\n" << "\t ()-- \t " << op2 << "\t = " << r25
+ << "\n" << "\t --() \t " << op2 << "\t = " << r26
+ << "\n" << op1 << "\t > ?: \t " << op2 << "\t = " << r27
+ << "\n" << op1 << "\t < ?: \t " << op2 << "\t = " << r28
+ << "\n" << op1 << "\t , \t\t " << op2 << "\t = " << r29
+ << "\n~(" << op1 << ") \t\t\t\t = " << r30
+ << "\n" << op1 << "\t << \t\t " << op2 << "\t = " << r31
+ << "\n" << op1 << "\t >> \t\t " << op2 << "\t = " << r32
+ << "\n" << op1 << "\t & \t\t " << op2 << "\t = " << r33
+ << "\n" << op1 << "\t ^ \t\t " << op2 << "\t = " << r34
+ << "\n" << op1 << "\t | \t\t " << op2 << "\t = " << r35
+ << endl;
+
+ if (op1 == op2) // Equality
+ cout << op1 << "\t == \t\t " << op2 << "\t -> true" << endl;
+ else
+ cout << op1 << "\t == \t\t " << op2 << "\t -> false" << endl;
+
+ if (op1 != op2) // Inequality
+ cout << op1 << "\t != \t\t " << op2 << "\t -> true" << endl;
+ else
+ cout << op1 << "\t != \t\t " << op2 << "\t -> false" << endl;
+
+ op1 = op2 = 0; // Assignment operator concatenation
+ cout << op1 << "\t = \t\t " << op2 << endl;
+ sc_start(0, SC_NS);
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/golden/std_ulogic_da b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/golden/std_ulogic_da
new file mode 100644
index 000000000..989b39e58
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/golden/std_ulogic_da
@@ -0,0 +1,106 @@
+SystemC Simulation
+
+std_ulogic <= std_ulogic
+-------------------------------------------
+UNINITIALIZED = X 'U'
+UNKNOWN = X 'X'
+ZERO = 0 '0'
+ONE = 1 '1'
+TRISTATE = Z 'Z'
+WEAK-UNKNOWN = X 'W'
+WEAK-ZERO = X 'L'
+WEAK-ONE = X 'H'
+DONT-CARE = X '-'
+TRUE = 1 true
+FALSE = 0 false
+
+std_ulogic <= literals
+-------------------------
+A = 1 true
+B = 0 false
+C = 1 1
+D = 0 0
+
+std_ulogic <= bool
+---------------------
+TRUE = 1 1
+FALSE = 0 0
+1 = 1 1
+0 = 0 0
+
+std_ulogic <= char
+---------------------
+SC1 = X 'U'
+SC2 = X 'u'
+SC3 = X 'X'
+SC4 = X 'x'
+SC5 = 0 '0'
+SC6 = 1 '1'
+SC7 = Z 'Z'
+SC8 = Z 'z'
+SC9 = X 'W'
+SC10 = X 'w'
+SC11 = X 'L'
+SC12 = X 'l'
+SC13 = X 'H'
+SC14 = X 'h'
+SC15 = X '-'
+SC16 = X 'D'
+SC17 = X 'd'
+SC18 = X 'B'
+SC19 = X 'F'
+
+op1 operator op2 result [All operands are std_ulogic]
+----------------------------------------------------------------
+1 &= 1 = 1
+1 ^= 1 = 0
+1 |= 1 = 1
+~(1) = 0
+1 & 1 = 1
+1 ^ 1 = 0
+1 | 1 = 1
+1 == 1 -> true
+1 != 1 -> false
+0 = 0
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/golden/std_ulogic_datatype.log b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/golden/std_ulogic_datatype.log
new file mode 100644
index 000000000..989b39e58
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/golden/std_ulogic_datatype.log
@@ -0,0 +1,106 @@
+SystemC Simulation
+
+std_ulogic <= std_ulogic
+-------------------------------------------
+UNINITIALIZED = X 'U'
+UNKNOWN = X 'X'
+ZERO = 0 '0'
+ONE = 1 '1'
+TRISTATE = Z 'Z'
+WEAK-UNKNOWN = X 'W'
+WEAK-ZERO = X 'L'
+WEAK-ONE = X 'H'
+DONT-CARE = X '-'
+TRUE = 1 true
+FALSE = 0 false
+
+std_ulogic <= literals
+-------------------------
+A = 1 true
+B = 0 false
+C = 1 1
+D = 0 0
+
+std_ulogic <= bool
+---------------------
+TRUE = 1 1
+FALSE = 0 0
+1 = 1 1
+0 = 0 0
+
+std_ulogic <= char
+---------------------
+SC1 = X 'U'
+SC2 = X 'u'
+SC3 = X 'X'
+SC4 = X 'x'
+SC5 = 0 '0'
+SC6 = 1 '1'
+SC7 = Z 'Z'
+SC8 = Z 'z'
+SC9 = X 'W'
+SC10 = X 'w'
+SC11 = X 'L'
+SC12 = X 'l'
+SC13 = X 'H'
+SC14 = X 'h'
+SC15 = X '-'
+SC16 = X 'D'
+SC17 = X 'd'
+SC18 = X 'B'
+SC19 = X 'F'
+
+op1 operator op2 result [All operands are std_ulogic]
+----------------------------------------------------------------
+1 &= 1 = 1
+1 ^= 1 = 0
+1 |= 1 = 1
+~(1) = 0
+1 & 1 = 1
+1 ^ 1 = 0
+1 | 1 = 1
+1 == 1 -> true
+1 != 1 -> false
+0 = 0
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/std_ulogic_datatype.cpp b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/std_ulogic_datatype.cpp
new file mode 100644
index 000000000..3822e98f8
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_datatype/std_ulogic_datatype.cpp
@@ -0,0 +1,542 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ std_ulogic_datatype.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+/* Main file for "std_ulogic" data type */
+
+#include "systemc.h"
+
+typedef sc_logic std_ulogic;
+
+int sc_main(int ac, char *av[])
+{
+
+// 1. DECLARATION SYNTAX
+ std_ulogic s1;
+ std_ulogic s2, s3, s4, s5, s6, s7, s8, s9, s10, s11;
+
+
+// 2. TYPE CONVERSION
+
+ // std_ulogic <- std_ulogic
+ s1 = 'U';
+ s2 = 'X';
+ s3 = '0';
+ s4 = '1';
+ s5 = 'Z';
+ s6 = 'W';
+ s7 = 'L';
+ s8 = 'H';
+ s9 = '-';
+ s10 = true;
+ s11 = false;
+
+ cout << "\nstd_ulogic \t<=\t\t std_ulogic"
+ << "\n-------------------------------------------"
+ << "\nUNINITIALIZED \t= " << s1 << "\t\t 'U'"
+ << "\nUNKNOWN \t= " << s2 << "\t\t 'X'"
+ << "\nZERO \t\t= " << s3 << "\t\t '0'"
+ << "\nONE \t\t= " << s4 << "\t\t '1'"
+ << "\nTRISTATE \t= " << s5 << "\t\t 'Z'"
+ << "\nWEAK-UNKNOWN \t= " << s6 << "\t\t 'W'"
+ << "\nWEAK-ZERO \t= " << s7 << "\t\t 'L'"
+ << "\nWEAK-ONE \t= " << s8 << "\t\t 'H'"
+ << "\nDONT-CARE \t= " << s9 << "\t\t '-'"
+ << "\nTRUE \t\t= " << s10 << "\t\t true"
+ << "\nFALSE \t\t= " << s11 << "\t\t false"
+ << "\n" << endl;
+
+ // std_ulogic <- literals
+ std_ulogic a, b, c, d;
+
+ a = true;
+ b = false;
+ c = 1;
+ d = 0;
+
+ cout << "std_ulogic <=\t literals"
+ << "\n-------------------------"
+ << "\nA = " << a << "\t\t true"
+ << "\nB = " << b << "\t\t false"
+ << "\nC = " << c << "\t\t 1"
+ << "\nD = " << d << "\t\t 0"
+ << "\n" << endl;
+
+ // std_ulogic <- bool
+ std_ulogic su1, su2, su3, su4;
+ bool b1, b2, b3, b4;
+
+ b1 = true;
+ b2 = false;
+ b3 = 1;
+ b4 = 0;
+
+ su1 = b1;
+ su2 = b2;
+ su3 = b3;
+ su4 = b4;
+
+ cout << "std_ulogic <=\t bool"
+ << "\n---------------------"
+ << "\nTRUE \t= " << su1 << "\t " << b1
+ << "\nFALSE \t= " << su2 << "\t " << b2
+ << "\n1 \t= " << su3 << "\t " << b3
+ << "\n0 \t= " << su4 << "\t " << b4
+ << "\n" << endl;
+
+ // std_ulogic <- char
+ std_ulogic sc1, sc2, sc3, sc4, sc5, sc6, sc7, sc8, sc9;
+ std_ulogic sc10, sc11, sc12, sc13, sc14, sc15, sc16, sc17, sc18, sc19;
+ char c1, c2, c3, c4, c5, c6, c7, c8, c9;
+ char c10, c11, c12, c13, c14, c15, c16, c17, c18, c19;
+
+ c1 = 'U';
+ c2 = 'u';
+ c3 = 'X';
+ c4 = 'x';
+ c5 = '0';
+ c6 = '1';
+ c7 = 'Z';
+ c8 = 'z';
+ c9 = 'W';
+ c10 = 'w';
+ c11 = 'L';
+ c12 = 'l';
+ c13 = 'H';
+ c14 = 'h';
+ c15 = '-';
+ c16 = 'D';
+ c17 = 'd';
+ c18 = 'B';
+ c19 = 'F';
+
+ sc1 = c1;
+ sc2 = c2;
+ sc3 = c3;
+ sc4 = c4;
+ sc5 = c5;
+ sc6 = c6;
+ sc7 = c7;
+ sc8 = c8;
+ sc9 = c9;
+ sc10 = c10;
+ sc11 = c11;
+ sc12 = c12;
+ sc13 = c13;
+ sc14 = c14;
+ sc15 = c15;
+ sc16 = c16;
+ sc17 = c17;
+ sc18 = c18;
+ sc19 = c19;
+
+ cout << "std_ulogic <=\t char"
+ << "\n---------------------"
+ << "\nSC1 \t= " << sc1 << "\t '" << c1 << "'"
+ << "\nSC2 \t= " << sc2 << "\t '" << c2 << "'"
+ << "\nSC3 \t= " << sc3 << "\t '" << c3 << "'"
+ << "\nSC4 \t= " << sc4 << "\t '" << c4 << "'"
+ << "\nSC5 \t= " << sc5 << "\t '" << c5 << "'"
+ << "\nSC6 \t= " << sc6 << "\t '" << c6 << "'"
+ << "\nSC7 \t= " << sc7 << "\t '" << c7 << "'"
+ << "\nSC8 \t= " << sc8 << "\t '" << c8 << "'"
+ << "\nSC9 \t= " << sc9 << "\t '" << c9 << "'"
+ << "\nSC10 \t= " << sc10 << "\t '" << c10 << "'"
+ << "\nSC11 \t= " << sc11 << "\t '" << c11 << "'"
+ << "\nSC12 \t= " << sc12 << "\t '" << c12 << "'"
+ << "\nSC13 \t= " << sc13 << "\t '" << c13 << "'"
+ << "\nSC14 \t= " << sc14 << "\t '" << c14 << "'"
+ << "\nSC15 \t= " << sc15 << "\t '" << c15 << "'"
+ << "\nSC16 \t= " << sc16 << "\t '" << c16 << "'"
+ << "\nSC17 \t= " << sc17 << "\t '" << c17 << "'"
+ << "\nSC18 \t= " << sc18 << "\t '" << c18 << "'"
+ << "\nSC19 \t= " << sc19 << "\t '" << c19 << "'"
+ << "\n" << endl;
+
+
+// 3. OPERATORS
+// Supported operators: ~ & ^ | &= ^= |= == != =
+
+#define VAL1 '1'
+#define VAL2 '1'
+
+ std_ulogic op1 = sc_logic(VAL1);
+ std_ulogic op2 = sc_logic(VAL2);
+ std_ulogic r1, r2, r3, r4, r5, r6, r7, r8, r9;
+ std_ulogic r10, r11, r12, r13, r14, r15, r16, r17, r18, r19;
+ std_ulogic r20, r21, r22, r23, r24, r25, r26, r27, r28, r29;
+ std_ulogic r30, r31, r32, r33, r34, r35;
+
+// r1 = op1 * op2; // Multiplication
+
+// r2 = op1 / op2; // Division
+
+// r3 = op1 % op2; // Modulus
+
+// r4 = op1 + op2; // Addition
+
+// r5 = op1 - op2; // Subtraction
+
+// r6 = !op1; // Logical NOT
+
+// r7 = op1 && op2; // Logical AND
+
+// r8 = op1 || op2; // Logical OR
+
+// r9 = op1 < op2; // Less than
+
+// r10 = op1 <= op2; // Less than or equal
+
+// r11 = op1 > op2; // Greater than
+
+// r12 = op1 >= op2; // Greater than or equal
+
+// r13 = op1 += op2; // Compound addition
+// op1 = VAL1; op2 = VAL2;
+
+// r14 = op1 -= op2; // Compound subtraction
+// op1 = VAL1; op2 = VAL2;
+
+// r15 = op1 *= op2; // Compound multiplication
+// op1 = VAL1; op2 = VAL2;
+
+// r16 = op1 /= op2; // Compound division
+// op1 = VAL1; op2 = VAL2;
+
+// r17 = op1 %= op2; // Compound modulus
+// op1 = VAL1; op2 = VAL2;
+
+// r18 = op1 <<= op2; // Compound shift left
+// op1 = VAL1; op2 = VAL2;
+
+// r19 = op1 >>= op2; // Compound shift right
+// op1 = VAL1; op2 = VAL2;
+
+ r20 = op1 &= op2; // Compound bitwise AND
+ op1 = VAL1; op2 = VAL2;
+
+ r21 = op1 ^= op2; // Compound bitwise XOR
+ op1 = VAL1; op2 = VAL2;
+
+ r22 = op1 |= op2; // Compound bitwise OR
+ op1 = VAL1; op2 = VAL2;
+
+// r23 = op2++; // Postfix increment
+// op1 = VAL1; op2 = VAL2;
+
+// r24 = ++op2; // Prefix increment
+// op1 = VAL1; op2 = VAL2;
+
+// r25 = op2--; // Postfix decrement
+// op1 = VAL1; op2 = VAL2;
+
+// r26 = --op2; // Prefix decrement
+// op1 = VAL1; op2 = VAL2;
+
+// r27 = (op1 > op2) ? true : false; // Arithmetic if
+// r28 = (op1 < op2) ? true : false; // Arithmetic if
+
+// r29 = op1, r29 = op2; // Comma
+
+ r30 = ~op1; // Bitwise NOT
+
+// r31 = op1 << op2; // Left shift
+// op1 = VAL1; op2 = VAL2;
+
+// r32 = op1 >> op2; // Right shift
+// op1 = VAL1; op2 = VAL2;
+
+ r33 = op1 & op2; // Bitwise AND
+
+ r34 = op1 ^ op2; // Bitwise XOR
+
+ r35 = op1 | op2; // Bitwise OR
+
+ cout << "op1 \t operator \t op2 \t result [All operands are std_ulogic]"
+ << "\n----------------------------------------------------------------"
+// << "\n" << op1 << "\t * \t\t " << op2 << "\t = " << r1
+// << "\n" << op1 << "\t / \t\t " << op2 << "\t = " << r2
+// << "\n" << op1 << "\t % \t\t " << op2 << "\t = " << r3
+// << "\n" << op1 << "\t + \t\t " << op2 << "\t = " << r4
+// << "\n" << op1 << "\t - \t\t " << op2 << "\t = " << r5
+// << "\n!(" << op1 << ") \t\t\t\t = " << r6
+// << "\n" << op1 << "\t && \t\t " << op2 << "\t = " << r7
+// << "\n" << op1 << "\t || \t\t " << op2 << "\t = " << r8
+// << "\n" << op1 << "\t < \t\t " << op2 << "\t = " << r9
+// << "\n" << op1 << "\t <= \t\t " << op2 << "\t = " << r10
+// << "\n" << op1 << "\t > \t\t " << op2 << "\t = " << r11
+// << "\n" << op1 << "\t >= \t\t " << op2 << "\t = " << r12
+// << "\n" << op1 << "\t += \t\t " << op2 << "\t = " << r13
+// << "\n" << op1 << "\t -= \t\t " << op2 << "\t = " << r14
+// << "\n" << op1 << "\t *= \t\t " << op2 << "\t = " << r15
+// << "\n" << op1 << "\t /= \t\t " << op2 << "\t = " << r16
+// << "\n" << op1 << "\t %= \t\t " << op2 << "\t = " << r17
+// << "\n" << op1 << "\t <<=\t\t " << op2 << "\t = " << r18
+// << "\n" << op1 << "\t >>=\t\t " << op2 << "\t = " << r19
+ << "\n" << op1 << "\t &= \t\t " << op2 << "\t = " << r20
+ << "\n" << op1 << "\t ^= \t\t " << op2 << "\t = " << r21
+ << "\n" << op1 << "\t |= \t\t " << op2 << "\t = " << r22
+// << "\n" << "\t ()++ \t " << op2 << "\t = " << r23
+// << "\n" << "\t ++() \t " << op2 << "\t = " << r24
+// << "\n" << "\t ()-- \t " << op2 << "\t = " << r25
+// << "\n" << "\t --() \t " << op2 << "\t = " << r26
+// << "\n" << op1 << "\t > ?: \t " << op2 << "\t = " << r27
+// << "\n" << op1 << "\t < ?: \t " << op2 << "\t = " << r28
+// << "\n" << op1 << "\t , \t\t " << op2 << "\t = " << r29
+ << "\n~(" << op1 << ") \t\t\t\t = " << r30
+// << "\n" << op1 << "\t << \t\t " << op2 << "\t = " << r31
+// << "\n" << op1 << "\t >> \t\t " << op2 << "\t = " << r32
+ << "\n" << op1 << "\t & \t\t " << op2 << "\t = " << r33
+ << "\n" << op1 << "\t ^ \t\t " << op2 << "\t = " << r34
+ << "\n" << op1 << "\t | \t\t " << op2 << "\t = " << r35
+ << endl;
+
+ if (op1 == op2) // Equality
+ cout << op1 << "\t == \t\t " << op2 << "\t -> true" << endl;
+ else
+ cout << op1 << "\t == \t\t " << op2 << "\t -> false" << endl;
+
+ if (op1 != op2) // Inequality
+ cout << op1 << "\t != \t\t " << op2 << "\t -> true" << endl;
+ else
+ cout << op1 << "\t != \t\t " << op2 << "\t -> false" << endl;
+
+ op1 = op2 = 0; // Assignment operator concatenation
+ cout << op1 << "\t = \t\t " << op2 << endl;
+
+// 4. OPERATOR DEFINITIONS
+// & | ^ ~
+ std_ulogic v1, v2, v3, v4, v5, v6, v7, v8, v9;
+ std_ulogic uu, ux, u0, u1, uz, uw, ul, uh, ud;
+ std_ulogic xu, xx, x0, x1, xz, xw, xl, xh, xd;
+ std_ulogic _0u, _0x, _00, _01, _0z, _0w, _0l, _0h, _0d;
+ std_ulogic _1u, _1x, _10, _11, _1z, _1w, _1l, _1h, _1d;
+ std_ulogic zu, zx, z0, z1, zz, zw, zl, zh, zd;
+ std_ulogic wu, wx, w0, w1, wz, ww, wl, wh, wd;
+ std_ulogic lu, lx, l0, l1, lz, lw, ll, lh, ld;
+ std_ulogic hu, hx, h0, h1, hz, hw, hl, hh, hd;
+ std_ulogic du, dx, d0, d1, dz, dw, dl, dh, dd;
+
+ v1 = 'U';
+ v2 = 'X';
+ v3 = '0';
+ v4 = '1';
+ v5 = 'Z';
+ v6 = 'W';
+ v7 = 'L';
+ v8 = 'H';
+ v9 = '-';
+
+ uu = v1 & v1; ux = v1 & v2; u0 = v1 & v3;
+ u1 = v1 & v4; uz = v1 & v5; uw = v1 & v6;
+ ul = v1 & v7; uh = v1 & v8; ud = v1 & v9;
+
+ xu = v2 & v1; xx = v2 & v2; x0 = v2 & v3;
+ x1 = v2 & v4; xz = v2 & v5; xw = v2 & v6;
+ xl = v2 & v7; xh = v2 & v8; xd = v2 & v9;
+
+ _0u = v3 & v1; _0x = v3 & v2; _00 = v3 & v3;
+ _01 = v3 & v4; _0z = v3 & v5; _0w = v3 & v6;
+ _0l = v3 & v7; _0h = v3 & v8; _0d = v3 & v9;
+
+ _1u = v4 & v1; _1x = v4 & v2; _10 = v4 & v3;
+ _11 = v4 & v4; _1z = v4 & v5; _1w = v4 & v6;
+ _1l = v4 & v7; _1h = v4 & v8; _1d = v4 & v9;
+
+ zu = v5 & v1; zx = v5 & v2; z0 = v5 & v3;
+ z1 = v5 & v4; zz = v5 & v5; zw = v5 & v6;
+ zl = v5 & v7; zh = v5 & v8; zd = v5 & v9;
+
+ wu = v6 & v1; wx = v6 & v2; w0 = v6 & v3;
+ w1 = v6 & v4; wz = v6 & v5; ww = v6 & v6;
+ wl = v6 & v7; wh = v6 & v8; wd = v6 & v9;
+
+ lu = v7 & v1; lx = v7 & v2; l0 = v7 & v3;
+ l1 = v7 & v4; lz = v7 & v5; lw = v7 & v6;
+ ll = v7 & v7; lh = v7 & v8; ld = v7 & v9;
+
+ hu = v8 & v1; hx = v8 & v2; h0 = v8 & v3;
+ h1 = v8 & v4; hz = v8 & v5; hw = v8 & v6;
+ hl = v8 & v7; hh = v8 & v8; hd = v8 & v9;
+
+ du = v9 & v1; dx = v9 & v2; d0 = v9 & v3;
+ d1 = v9 & v4; dz = v9 & v5; dw = v9 & v6;
+ dl = v9 & v7; dh = v9 & v8; dd = v9 & v9;
+
+ cout << "\n+-------------------------+"
+ << "\n| AND (&) | X | 0 | 1 | Z |"
+ << "\n+-------------------------+"
+ << "\n| X | " << xx << " | " << x0 << " | "
+ << x1 << " | " << xz << " | "
+ << "\n+-------------------------+"
+ << "\n| 0 | " << _0x << " | " << _00 << " | "
+ << _01 << " | " << _0z << " | "
+ << "\n+-------------------------+"
+ << "\n| 1 | " << _1x << " | " << _10 << " | "
+ << _11 << " | " << _1z << " | "
+ << "\n+-------------------------+"
+ << "\n| Z | " << zx << " | " << z0 << " | "
+ << z1 << " | " << zz << " | "
+ << "\n+-------------------------+"
+ << endl;
+
+ uu = v1 | v1; ux = v1 | v2; u0 = v1 | v3;
+ u1 = v1 | v4; uz = v1 | v5; uw = v1 | v6;
+ ul = v1 | v7; uh = v1 | v8; ud = v1 | v9;
+
+ xu = v2 | v1; xx = v2 | v2; x0 = v2 | v3;
+ x1 = v2 | v4; xz = v2 | v5; xw = v2 | v6;
+ xl = v2 | v7; xh = v2 | v8; xd = v2 | v9;
+
+ _0u = v3 | v1; _0x = v3 | v2; _00 = v3 | v3;
+ _01 = v3 | v4; _0z = v3 | v5; _0w = v3 | v6;
+ _0l = v3 | v7; _0h = v3 | v8; _0d = v3 | v9;
+
+ _1u = v4 | v1; _1x = v4 | v2; _10 = v4 | v3;
+ _11 = v4 | v4; _1z = v4 | v5; _1w = v4 | v6;
+ _1l = v4 | v7; _1h = v4 | v8; _1d = v4 | v9;
+
+ zu = v5 | v1; zx = v5 | v2; z0 = v5 | v3;
+ z1 = v5 | v4; zz = v5 | v5; zw = v5 | v6;
+ zl = v5 | v7; zh = v5 | v8; zd = v5 | v9;
+
+ wu = v6 | v1; wx = v6 | v2; w0 = v6 | v3;
+ w1 = v6 | v4; wz = v6 | v5; ww = v6 | v6;
+ wl = v6 | v7; wh = v6 | v8; wd = v6 | v9;
+
+ lu = v7 | v1; lx = v7 | v2; l0 = v7 | v3;
+ l1 = v7 | v4; lz = v7 | v5; lw = v7 | v6;
+ ll = v7 | v7; lh = v7 | v8; ld = v7 | v9;
+
+ hu = v8 | v1; hx = v8 | v2; h0 = v8 | v3;
+ h1 = v8 | v4; hz = v8 | v5; hw = v8 | v6;
+ hl = v8 | v7; hh = v8 | v8; hd = v8 | v9;
+
+ du = v9 | v1; dx = v9 | v2; d0 = v9 | v3;
+ d1 = v9 | v4; dz = v9 | v5; dw = v9 | v6;
+ dl = v9 | v7; dh = v9 | v8; dd = v9 | v9;
+
+ cout << "\n+-------------------------+"
+ << "\n| OR (|) | X | 0 | 1 | Z |"
+ << "\n+-------------------------+"
+ << "\n| X | " << xx << " | " << x0 << " | "
+ << x1 << " | " << xz << " | "
+ << "\n+-------------------------+"
+ << "\n| 0 | " << _0x << " | " << _00 << " | "
+ << _01 << " | " << _0z << " | "
+ << "\n+-------------------------+"
+ << "\n| 1 | " << _1x << " | " << _10 << " | "
+ << _11 << " | " << _1z << " | "
+ << "\n+-------------------------+"
+ << "\n| Z | " << zx << " | " << z0 << " | "
+ << z1 << " | " << zz << " | "
+ << "\n+-------------------------+"
+ << endl;
+
+ uu = v1 ^ v1; ux = v1 ^ v2; u0 = v1 ^ v3;
+ u1 = v1 ^ v4; uz = v1 ^ v5; uw = v1 ^ v6;
+ ul = v1 ^ v7; uh = v1 ^ v8; ud = v1 ^ v9;
+
+ xu = v2 ^ v1; xx = v2 ^ v2; x0 = v2 ^ v3;
+ x1 = v2 ^ v4; xz = v2 ^ v5; xw = v2 ^ v6;
+ xl = v2 ^ v7; xh = v2 ^ v8; xd = v2 ^ v9;
+
+ _0u = v3 ^ v1; _0x = v3 ^ v2; _00 = v3 ^ v3;
+ _01 = v3 ^ v4; _0z = v3 ^ v5; _0w = v3 ^ v6;
+ _0l = v3 ^ v7; _0h = v3 ^ v8; _0d = v3 ^ v9;
+
+ _1u = v4 ^ v1; _1x = v4 ^ v2; _10 = v4 ^ v3;
+ _11 = v4 ^ v4; _1z = v4 ^ v5; _1w = v4 ^ v6;
+ _1l = v4 ^ v7; _1h = v4 ^ v8; _1d = v4 ^ v9;
+
+ zu = v5 ^ v1; zx = v5 ^ v2; z0 = v5 ^ v3;
+ z1 = v5 ^ v4; zz = v5 ^ v5; zw = v5 ^ v6;
+ zl = v5 ^ v7; zh = v5 ^ v8; zd = v5 ^ v9;
+
+ wu = v6 ^ v1; wx = v6 ^ v2; w0 = v6 ^ v3;
+ w1 = v6 ^ v4; wz = v6 ^ v5; ww = v6 ^ v6;
+ wl = v6 ^ v7; wh = v6 ^ v8; wd = v6 ^ v9;
+
+ lu = v7 ^ v1; lx = v7 ^ v2; l0 = v7 ^ v3;
+ l1 = v7 ^ v4; lz = v7 ^ v5; lw = v7 ^ v6;
+ ll = v7 ^ v7; lh = v7 ^ v8; ld = v7 ^ v9;
+
+ hu = v8 ^ v1; hx = v8 ^ v2; h0 = v8 ^ v3;
+ h1 = v8 ^ v4; hz = v8 ^ v5; hw = v8 ^ v6;
+ hl = v8 ^ v7; hh = v8 ^ v8; hd = v8 ^ v9;
+
+ du = v9 ^ v1; dx = v9 ^ v2; d0 = v9 ^ v3;
+ d1 = v9 ^ v4; dz = v9 ^ v5; dw = v9 ^ v6;
+ dl = v9 ^ v7; dh = v9 ^ v8; dd = v9 ^ v9;
+
+ cout << "\n+-------------------------+"
+ << "\n| XOR (^) | X | 0 | 1 | Z |"
+ << "\n+-------------------------+"
+ << "\n| X | " << xx << " | " << x0 << " | "
+ << x1 << " | " << xz << " | "
+ << "\n+-------------------------+"
+ << "\n| 0 | " << _0x << " | " << _00 << " | "
+ << _01 << " | " << _0z << " | "
+ << "\n+-------------------------+"
+ << "\n| 1 | " << _1x << " | " << _10 << " | "
+ << _11 << " | " << _1z << " | "
+ << "\n+-------------------------+"
+ << "\n| Z | " << zx << " | " << z0 << " | "
+ << z1 << " | " << zz << " | "
+ << "\n+-------------------------+"
+ << endl;
+
+ std_ulogic nu, nx, n0, n1, nz, nw, nl, nh, nd;
+
+ nu = ~v1;
+ nx = ~v2;
+ n0 = ~v3;
+ n1 = ~v4;
+ nz = ~v5;
+ nw = ~v6;
+ nl = ~v7;
+ nh = ~v8;
+ nd = ~v9;
+
+ cout << "\n+-------------------------+"
+ << "\n| NOT (~) | X | 0 | 1 | Z |"
+ << "\n+-------------------------+"
+ << "\n| | " << nx << " | " << n0 << " | "
+ << n1 << " | " << nz << " | "
+ << "\n+-------------------------+"
+ << endl;
+ return 0;
+}
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ul b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ul
new file mode 100644
index 000000000..7947cc42e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ul
@@ -0,0 +1,203 @@
+SystemC Simulation
+
+INTEGER SIZE = 4 bytes
+SHORT INTEGER SIZE = 2 bytes
+LONG INTEGER SIZE = 4 bytes
+UNSIGNED LONG SIZE = 4 bytes
+SIGNED LONG SIZE = 4 bytes
+
+std_ulogic_vector <= C++ string
+-------------------------------------------
+A = 01XZXXXXX "01XZUWLH-"
+B = XX0XX1XXX "ZZ1XX0UU1WWW"
+BIG = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+HUGE = 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111
+
+std_ulogic_vector <= std_ulogic_vector
+--------------------------------------------------
+C = XX0XX1XXX ZZ1XX0XX1XXX
+BIG2 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+
+std_ulogic_vector <= C++ array of bool
+--------------------------------------------------
+D = XXXXZX10X -, L, H, W, Z, X, 1, 0, U
+E = 10011XXXX X, X, 1, 1, 0, 0, 1, 1, X, X, U, U
+BIG3 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111
+ 000011110000"
+
+std_ulogic_vector <= bool_vector
+--------------------------------------------
+F = 1010 "1010"
+
+std_ulogic_vector <= unsigned long
+----------------------------------------------
+H = 1001 ...10001001 (137)
+I = 00000000000000000000000010001001 ...10001001 (137)
+J = 0000000000000000000000000000000010001001 ...10001001 (137)
+
+std_ulogic_vector <= sc_unsigned
+--------------------------------------------
+K = 0011 11 (3)
+L = 1101 1101 (13)
+M = 1001 10001001 (137)
+
+std_ulogic_vector <= signed long
+--------------------------------------------
+N = 01001 ...010001001 (137)
+O = 00000000000000000000000010001001 ...010001001 (137)
+P = 0000000000000000000000000000000010001001 ...010001001 (137)
+Q = 10111 ...101110111 (-137)
+R = 11111111111111111111111101110111 ...101110111 (-137)
+S = 1111111111111111111111111111111101110111 ...101110111 (-137)
+
+std_ulogic_vector <= sc_signed
+------------------------------------------
+T = 00011 011 (3)
+U = 01101 01101 (13)
+V = 01001 010001001 (137)
+W = 11101 101 (-3)
+X = 10011 10011 (-13)
+Y = 10111 101110111 (-137)
+
+std_ulogic_vector <= to_uint()
+-----------------------------------------------------------------
+TU1 = 1001 9
+TU2 = 10000000000000000000000000000001 2147483649
+TU3 = 0000000110000000000000000000000000000001 2147483649
+TU4 = 1101 1 (01)
+TU4 = 1101 13 (1101)
+TU4 = 1101 13 (00001101)
+
+std_ulogic_vector <= to_int()
+-----------------------------------------------------------------
+TS1 = 1001 -7
+TS2 = 11111111111111111111101111111001 -1031
+TS3 = 0000000111111111111111111111101111111001 -1031
+TS4 = 11001 1 (001)
+TS4 = 11001 -7 (11001)
+TS4 = 11001 -7 (111111001)
+
+std_ulogic_vector <= Typecast sc_unsigned
+-----------------------------------------------------------------
+TCU1 = 1101 1 (01)
+TCU1 = 1101 13 (1101)
+TCU1 = 1101 13 (00001101)
+
+std_ulogic_vector <= Typecast sc_signed
+-----------------------------------------------------------------
+TCS1 = 11001 1 (001)
+TCS1 = 11001 -7 (11001)
+TCS1 = 11001 25 (000011001)
+
+std_ulogic_vector <= to_string()
+--------------------------------------------
+TSTR = XXZ01XXXX XXZ01XXXX
+
+range() tests
+-----------------------------------------------------------------
+INITIAL 4-BIT 1000
+INITIAL 9-BIT XXZ01XXXX
+
+LVALUE RISE 1 0 0 0
+LVALUE FALL 0 0 0 1
+LVALUE SUB RISE 0 1 0 0
+LVALUE SUB FALL X X X X 1 0 Z X X
+LVALUE BIT 1 1 0 1
+
+RVALUE RISE 1 0 0 0
+RVALUE FALL 0 0 0 1
+RVALUE SUB FALL X X X X 1 0 Z X X
+RVALUE SUB RISE 1 0 0 0
+RVALUE BIT [] 1 0 1 1
+RVALUE BIT 0 0 1 0
+
+op1 operator op2 result [All operands are std_ulogic_vector]
+----------------------------------------------------------------
+1010 &= 1000 = 1000
+1010 ^= 1000 = 0010
+1010 |= 1000 = 1010
+~(1010) = 0101
+1010 & 1000 = 1000
+1010 ^ 1000 = 0010
+1010 | 1000 = 1010
+
+1010 &= 111011 = 1010
+1010 ^= 111011 = 0001
+1010 |= 111011 = 1011
+1010 & 111011 = 1010
+1010 ^ 111011 = 0001
+1010 | 111011 = 1011
+
+1010 and_reduce() = 0
+1010 or_reduce() = 1
+1010 xor_reduce() = 0
+
+1010 == 1000 -> false
+1010 != 1000 -> true
+
+1111 = 1111
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log
new file mode 100644
index 000000000..7947cc42e
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log
@@ -0,0 +1,203 @@
+SystemC Simulation
+
+INTEGER SIZE = 4 bytes
+SHORT INTEGER SIZE = 2 bytes
+LONG INTEGER SIZE = 4 bytes
+UNSIGNED LONG SIZE = 4 bytes
+SIGNED LONG SIZE = 4 bytes
+
+std_ulogic_vector <= C++ string
+-------------------------------------------
+A = 01XZXXXXX "01XZUWLH-"
+B = XX0XX1XXX "ZZ1XX0UU1WWW"
+BIG = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+HUGE = 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111
+
+std_ulogic_vector <= std_ulogic_vector
+--------------------------------------------------
+C = XX0XX1XXX ZZ1XX0XX1XXX
+BIG2 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+
+std_ulogic_vector <= C++ array of bool
+--------------------------------------------------
+D = XXXXZX10X -, L, H, W, Z, X, 1, 0, U
+E = 10011XXXX X, X, 1, 1, 0, 0, 1, 1, X, X, U, U
+BIG3 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111
+ 000011110000"
+
+std_ulogic_vector <= bool_vector
+--------------------------------------------
+F = 1010 "1010"
+
+std_ulogic_vector <= unsigned long
+----------------------------------------------
+H = 1001 ...10001001 (137)
+I = 00000000000000000000000010001001 ...10001001 (137)
+J = 0000000000000000000000000000000010001001 ...10001001 (137)
+
+std_ulogic_vector <= sc_unsigned
+--------------------------------------------
+K = 0011 11 (3)
+L = 1101 1101 (13)
+M = 1001 10001001 (137)
+
+std_ulogic_vector <= signed long
+--------------------------------------------
+N = 01001 ...010001001 (137)
+O = 00000000000000000000000010001001 ...010001001 (137)
+P = 0000000000000000000000000000000010001001 ...010001001 (137)
+Q = 10111 ...101110111 (-137)
+R = 11111111111111111111111101110111 ...101110111 (-137)
+S = 1111111111111111111111111111111101110111 ...101110111 (-137)
+
+std_ulogic_vector <= sc_signed
+------------------------------------------
+T = 00011 011 (3)
+U = 01101 01101 (13)
+V = 01001 010001001 (137)
+W = 11101 101 (-3)
+X = 10011 10011 (-13)
+Y = 10111 101110111 (-137)
+
+std_ulogic_vector <= to_uint()
+-----------------------------------------------------------------
+TU1 = 1001 9
+TU2 = 10000000000000000000000000000001 2147483649
+TU3 = 0000000110000000000000000000000000000001 2147483649
+TU4 = 1101 1 (01)
+TU4 = 1101 13 (1101)
+TU4 = 1101 13 (00001101)
+
+std_ulogic_vector <= to_int()
+-----------------------------------------------------------------
+TS1 = 1001 -7
+TS2 = 11111111111111111111101111111001 -1031
+TS3 = 0000000111111111111111111111101111111001 -1031
+TS4 = 11001 1 (001)
+TS4 = 11001 -7 (11001)
+TS4 = 11001 -7 (111111001)
+
+std_ulogic_vector <= Typecast sc_unsigned
+-----------------------------------------------------------------
+TCU1 = 1101 1 (01)
+TCU1 = 1101 13 (1101)
+TCU1 = 1101 13 (00001101)
+
+std_ulogic_vector <= Typecast sc_signed
+-----------------------------------------------------------------
+TCS1 = 11001 1 (001)
+TCS1 = 11001 -7 (11001)
+TCS1 = 11001 25 (000011001)
+
+std_ulogic_vector <= to_string()
+--------------------------------------------
+TSTR = XXZ01XXXX XXZ01XXXX
+
+range() tests
+-----------------------------------------------------------------
+INITIAL 4-BIT 1000
+INITIAL 9-BIT XXZ01XXXX
+
+LVALUE RISE 1 0 0 0
+LVALUE FALL 0 0 0 1
+LVALUE SUB RISE 0 1 0 0
+LVALUE SUB FALL X X X X 1 0 Z X X
+LVALUE BIT 1 1 0 1
+
+RVALUE RISE 1 0 0 0
+RVALUE FALL 0 0 0 1
+RVALUE SUB FALL X X X X 1 0 Z X X
+RVALUE SUB RISE 1 0 0 0
+RVALUE BIT [] 1 0 1 1
+RVALUE BIT 0 0 1 0
+
+op1 operator op2 result [All operands are std_ulogic_vector]
+----------------------------------------------------------------
+1010 &= 1000 = 1000
+1010 ^= 1000 = 0010
+1010 |= 1000 = 1010
+~(1010) = 0101
+1010 & 1000 = 1000
+1010 ^ 1000 = 0010
+1010 | 1000 = 1010
+
+1010 &= 111011 = 1010
+1010 ^= 111011 = 0001
+1010 |= 111011 = 1011
+1010 & 111011 = 1010
+1010 ^ 111011 = 0001
+1010 | 111011 = 1011
+
+1010 and_reduce() = 0
+1010 or_reduce() = 1
+1010 xor_reduce() = 0
+
+1010 == 1000 -> false
+1010 != 1000 -> true
+
+1111 = 1111
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.bsd64 b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.bsd64
new file mode 100644
index 000000000..d168d15ca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.bsd64
@@ -0,0 +1,203 @@
+SystemC Simulation
+
+INTEGER SIZE = 4 bytes
+SHORT INTEGER SIZE = 2 bytes
+LONG INTEGER SIZE = 8 bytes
+UNSIGNED LONG SIZE = 8 bytes
+SIGNED LONG SIZE = 8 bytes
+
+std_ulogic_vector <= C++ string
+-------------------------------------------
+A = 01XZXXXXX "01XZUWLH-"
+B = XX0XX1XXX "ZZ1XX0UU1WWW"
+BIG = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+HUGE = 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111
+
+std_ulogic_vector <= std_ulogic_vector
+--------------------------------------------------
+C = XX0XX1XXX ZZ1XX0XX1XXX
+BIG2 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+
+std_ulogic_vector <= C++ array of bool
+--------------------------------------------------
+D = XXXXZX10X -, L, H, W, Z, X, 1, 0, U
+E = 10011XXXX X, X, 1, 1, 0, 0, 1, 1, X, X, U, U
+BIG3 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111
+ 000011110000"
+
+std_ulogic_vector <= bool_vector
+--------------------------------------------
+F = 1010 "1010"
+
+std_ulogic_vector <= unsigned long
+----------------------------------------------
+H = 1001 ...10001001 (137)
+I = 00000000000000000000000010001001 ...10001001 (137)
+J = 0000000000000000000000000000000010001001 ...10001001 (137)
+
+std_ulogic_vector <= sc_unsigned
+--------------------------------------------
+K = 0011 11 (3)
+L = 1101 1101 (13)
+M = 1001 10001001 (137)
+
+std_ulogic_vector <= signed long
+--------------------------------------------
+N = 01001 ...010001001 (137)
+O = 00000000000000000000000010001001 ...010001001 (137)
+P = 0000000000000000000000000000000010001001 ...010001001 (137)
+Q = 10111 ...101110111 (-137)
+R = 11111111111111111111111101110111 ...101110111 (-137)
+S = 1111111111111111111111111111111101110111 ...101110111 (-137)
+
+std_ulogic_vector <= sc_signed
+------------------------------------------
+T = 00011 011 (3)
+U = 01101 01101 (13)
+V = 01001 010001001 (137)
+W = 11101 101 (-3)
+X = 10011 10011 (-13)
+Y = 10111 101110111 (-137)
+
+std_ulogic_vector <= to_uint()
+-----------------------------------------------------------------
+TU1 = 1001 9
+TU2 = 10000000000000000000000000000001 2147483649
+TU3 = 0000000110000000000000000000000000000001 2147483649
+TU4 = 1101 1 (01)
+TU4 = 1101 13 (1101)
+TU4 = 1101 13 (00001101)
+
+std_ulogic_vector <= to_int()
+-----------------------------------------------------------------
+TS1 = 1001 -7
+TS2 = 11111111111111111111101111111001 -1031
+TS3 = 0000000111111111111111111111101111111001 -1031
+TS4 = 11001 1 (001)
+TS4 = 11001 -7 (11001)
+TS4 = 11001 -7 (111111001)
+
+std_ulogic_vector <= Typecast sc_unsigned
+-----------------------------------------------------------------
+TCU1 = 1101 1 (01)
+TCU1 = 1101 13 (1101)
+TCU1 = 1101 13 (00001101)
+
+std_ulogic_vector <= Typecast sc_signed
+-----------------------------------------------------------------
+TCS1 = 11001 1 (001)
+TCS1 = 11001 -7 (11001)
+TCS1 = 11001 25 (000011001)
+
+std_ulogic_vector <= to_string()
+--------------------------------------------
+TSTR = XXZ01XXXX XXZ01XXXX
+
+range() tests
+-----------------------------------------------------------------
+INITIAL 4-BIT 1000
+INITIAL 9-BIT XXZ01XXXX
+
+LVALUE RISE 1 0 0 0
+LVALUE FALL 0 0 0 1
+LVALUE SUB RISE 0 1 0 0
+LVALUE SUB FALL X X X X 1 0 Z X X
+LVALUE BIT 1 1 0 1
+
+RVALUE RISE 1 0 0 0
+RVALUE FALL 0 0 0 1
+RVALUE SUB FALL X X X X 1 0 Z X X
+RVALUE SUB RISE 1 0 0 0
+RVALUE BIT [] 1 0 1 1
+RVALUE BIT 0 0 1 0
+
+op1 operator op2 result [All operands are std_ulogic_vector]
+----------------------------------------------------------------
+1010 &= 1000 = 1000
+1010 ^= 1000 = 0010
+1010 |= 1000 = 1010
+~(1010) = 0101
+1010 & 1000 = 1000
+1010 ^ 1000 = 0010
+1010 | 1000 = 1010
+
+1010 &= 111011 = 1010
+1010 ^= 111011 = 0001
+1010 |= 111011 = 1011
+1010 & 111011 = 1010
+1010 ^ 111011 = 0001
+1010 | 111011 = 1011
+
+1010 and_reduce() = 0
+1010 or_reduce() = 1
+1010 xor_reduce() = 0
+
+1010 == 1000 -> false
+1010 != 1000 -> true
+
+1111 = 1111
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.cygwin64 b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.cygwin64
new file mode 100644
index 000000000..d168d15ca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.cygwin64
@@ -0,0 +1,203 @@
+SystemC Simulation
+
+INTEGER SIZE = 4 bytes
+SHORT INTEGER SIZE = 2 bytes
+LONG INTEGER SIZE = 8 bytes
+UNSIGNED LONG SIZE = 8 bytes
+SIGNED LONG SIZE = 8 bytes
+
+std_ulogic_vector <= C++ string
+-------------------------------------------
+A = 01XZXXXXX "01XZUWLH-"
+B = XX0XX1XXX "ZZ1XX0UU1WWW"
+BIG = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+HUGE = 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111
+
+std_ulogic_vector <= std_ulogic_vector
+--------------------------------------------------
+C = XX0XX1XXX ZZ1XX0XX1XXX
+BIG2 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+
+std_ulogic_vector <= C++ array of bool
+--------------------------------------------------
+D = XXXXZX10X -, L, H, W, Z, X, 1, 0, U
+E = 10011XXXX X, X, 1, 1, 0, 0, 1, 1, X, X, U, U
+BIG3 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111
+ 000011110000"
+
+std_ulogic_vector <= bool_vector
+--------------------------------------------
+F = 1010 "1010"
+
+std_ulogic_vector <= unsigned long
+----------------------------------------------
+H = 1001 ...10001001 (137)
+I = 00000000000000000000000010001001 ...10001001 (137)
+J = 0000000000000000000000000000000010001001 ...10001001 (137)
+
+std_ulogic_vector <= sc_unsigned
+--------------------------------------------
+K = 0011 11 (3)
+L = 1101 1101 (13)
+M = 1001 10001001 (137)
+
+std_ulogic_vector <= signed long
+--------------------------------------------
+N = 01001 ...010001001 (137)
+O = 00000000000000000000000010001001 ...010001001 (137)
+P = 0000000000000000000000000000000010001001 ...010001001 (137)
+Q = 10111 ...101110111 (-137)
+R = 11111111111111111111111101110111 ...101110111 (-137)
+S = 1111111111111111111111111111111101110111 ...101110111 (-137)
+
+std_ulogic_vector <= sc_signed
+------------------------------------------
+T = 00011 011 (3)
+U = 01101 01101 (13)
+V = 01001 010001001 (137)
+W = 11101 101 (-3)
+X = 10011 10011 (-13)
+Y = 10111 101110111 (-137)
+
+std_ulogic_vector <= to_uint()
+-----------------------------------------------------------------
+TU1 = 1001 9
+TU2 = 10000000000000000000000000000001 2147483649
+TU3 = 0000000110000000000000000000000000000001 2147483649
+TU4 = 1101 1 (01)
+TU4 = 1101 13 (1101)
+TU4 = 1101 13 (00001101)
+
+std_ulogic_vector <= to_int()
+-----------------------------------------------------------------
+TS1 = 1001 -7
+TS2 = 11111111111111111111101111111001 -1031
+TS3 = 0000000111111111111111111111101111111001 -1031
+TS4 = 11001 1 (001)
+TS4 = 11001 -7 (11001)
+TS4 = 11001 -7 (111111001)
+
+std_ulogic_vector <= Typecast sc_unsigned
+-----------------------------------------------------------------
+TCU1 = 1101 1 (01)
+TCU1 = 1101 13 (1101)
+TCU1 = 1101 13 (00001101)
+
+std_ulogic_vector <= Typecast sc_signed
+-----------------------------------------------------------------
+TCS1 = 11001 1 (001)
+TCS1 = 11001 -7 (11001)
+TCS1 = 11001 25 (000011001)
+
+std_ulogic_vector <= to_string()
+--------------------------------------------
+TSTR = XXZ01XXXX XXZ01XXXX
+
+range() tests
+-----------------------------------------------------------------
+INITIAL 4-BIT 1000
+INITIAL 9-BIT XXZ01XXXX
+
+LVALUE RISE 1 0 0 0
+LVALUE FALL 0 0 0 1
+LVALUE SUB RISE 0 1 0 0
+LVALUE SUB FALL X X X X 1 0 Z X X
+LVALUE BIT 1 1 0 1
+
+RVALUE RISE 1 0 0 0
+RVALUE FALL 0 0 0 1
+RVALUE SUB FALL X X X X 1 0 Z X X
+RVALUE SUB RISE 1 0 0 0
+RVALUE BIT [] 1 0 1 1
+RVALUE BIT 0 0 1 0
+
+op1 operator op2 result [All operands are std_ulogic_vector]
+----------------------------------------------------------------
+1010 &= 1000 = 1000
+1010 ^= 1000 = 0010
+1010 |= 1000 = 1010
+~(1010) = 0101
+1010 & 1000 = 1000
+1010 ^ 1000 = 0010
+1010 | 1000 = 1010
+
+1010 &= 111011 = 1010
+1010 ^= 111011 = 0001
+1010 |= 111011 = 1011
+1010 & 111011 = 1010
+1010 ^ 111011 = 0001
+1010 | 111011 = 1011
+
+1010 and_reduce() = 0
+1010 or_reduce() = 1
+1010 xor_reduce() = 0
+
+1010 == 1000 -> false
+1010 != 1000 -> true
+
+1111 = 1111
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.linux64 b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.linux64
new file mode 100644
index 000000000..d168d15ca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.linux64
@@ -0,0 +1,203 @@
+SystemC Simulation
+
+INTEGER SIZE = 4 bytes
+SHORT INTEGER SIZE = 2 bytes
+LONG INTEGER SIZE = 8 bytes
+UNSIGNED LONG SIZE = 8 bytes
+SIGNED LONG SIZE = 8 bytes
+
+std_ulogic_vector <= C++ string
+-------------------------------------------
+A = 01XZXXXXX "01XZUWLH-"
+B = XX0XX1XXX "ZZ1XX0UU1WWW"
+BIG = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+HUGE = 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111
+
+std_ulogic_vector <= std_ulogic_vector
+--------------------------------------------------
+C = XX0XX1XXX ZZ1XX0XX1XXX
+BIG2 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+
+std_ulogic_vector <= C++ array of bool
+--------------------------------------------------
+D = XXXXZX10X -, L, H, W, Z, X, 1, 0, U
+E = 10011XXXX X, X, 1, 1, 0, 0, 1, 1, X, X, U, U
+BIG3 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111
+ 000011110000"
+
+std_ulogic_vector <= bool_vector
+--------------------------------------------
+F = 1010 "1010"
+
+std_ulogic_vector <= unsigned long
+----------------------------------------------
+H = 1001 ...10001001 (137)
+I = 00000000000000000000000010001001 ...10001001 (137)
+J = 0000000000000000000000000000000010001001 ...10001001 (137)
+
+std_ulogic_vector <= sc_unsigned
+--------------------------------------------
+K = 0011 11 (3)
+L = 1101 1101 (13)
+M = 1001 10001001 (137)
+
+std_ulogic_vector <= signed long
+--------------------------------------------
+N = 01001 ...010001001 (137)
+O = 00000000000000000000000010001001 ...010001001 (137)
+P = 0000000000000000000000000000000010001001 ...010001001 (137)
+Q = 10111 ...101110111 (-137)
+R = 11111111111111111111111101110111 ...101110111 (-137)
+S = 1111111111111111111111111111111101110111 ...101110111 (-137)
+
+std_ulogic_vector <= sc_signed
+------------------------------------------
+T = 00011 011 (3)
+U = 01101 01101 (13)
+V = 01001 010001001 (137)
+W = 11101 101 (-3)
+X = 10011 10011 (-13)
+Y = 10111 101110111 (-137)
+
+std_ulogic_vector <= to_uint()
+-----------------------------------------------------------------
+TU1 = 1001 9
+TU2 = 10000000000000000000000000000001 2147483649
+TU3 = 0000000110000000000000000000000000000001 2147483649
+TU4 = 1101 1 (01)
+TU4 = 1101 13 (1101)
+TU4 = 1101 13 (00001101)
+
+std_ulogic_vector <= to_int()
+-----------------------------------------------------------------
+TS1 = 1001 -7
+TS2 = 11111111111111111111101111111001 -1031
+TS3 = 0000000111111111111111111111101111111001 -1031
+TS4 = 11001 1 (001)
+TS4 = 11001 -7 (11001)
+TS4 = 11001 -7 (111111001)
+
+std_ulogic_vector <= Typecast sc_unsigned
+-----------------------------------------------------------------
+TCU1 = 1101 1 (01)
+TCU1 = 1101 13 (1101)
+TCU1 = 1101 13 (00001101)
+
+std_ulogic_vector <= Typecast sc_signed
+-----------------------------------------------------------------
+TCS1 = 11001 1 (001)
+TCS1 = 11001 -7 (11001)
+TCS1 = 11001 25 (000011001)
+
+std_ulogic_vector <= to_string()
+--------------------------------------------
+TSTR = XXZ01XXXX XXZ01XXXX
+
+range() tests
+-----------------------------------------------------------------
+INITIAL 4-BIT 1000
+INITIAL 9-BIT XXZ01XXXX
+
+LVALUE RISE 1 0 0 0
+LVALUE FALL 0 0 0 1
+LVALUE SUB RISE 0 1 0 0
+LVALUE SUB FALL X X X X 1 0 Z X X
+LVALUE BIT 1 1 0 1
+
+RVALUE RISE 1 0 0 0
+RVALUE FALL 0 0 0 1
+RVALUE SUB FALL X X X X 1 0 Z X X
+RVALUE SUB RISE 1 0 0 0
+RVALUE BIT [] 1 0 1 1
+RVALUE BIT 0 0 1 0
+
+op1 operator op2 result [All operands are std_ulogic_vector]
+----------------------------------------------------------------
+1010 &= 1000 = 1000
+1010 ^= 1000 = 0010
+1010 |= 1000 = 1010
+~(1010) = 0101
+1010 & 1000 = 1000
+1010 ^ 1000 = 0010
+1010 | 1000 = 1010
+
+1010 &= 111011 = 1010
+1010 ^= 111011 = 0001
+1010 |= 111011 = 1011
+1010 & 111011 = 1010
+1010 ^ 111011 = 0001
+1010 | 111011 = 1011
+
+1010 and_reduce() = 0
+1010 or_reduce() = 1
+1010 xor_reduce() = 0
+
+1010 == 1000 -> false
+1010 != 1000 -> true
+
+1111 = 1111
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.linuxaarch64 b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.linuxaarch64
new file mode 100644
index 000000000..d168d15ca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.linuxaarch64
@@ -0,0 +1,203 @@
+SystemC Simulation
+
+INTEGER SIZE = 4 bytes
+SHORT INTEGER SIZE = 2 bytes
+LONG INTEGER SIZE = 8 bytes
+UNSIGNED LONG SIZE = 8 bytes
+SIGNED LONG SIZE = 8 bytes
+
+std_ulogic_vector <= C++ string
+-------------------------------------------
+A = 01XZXXXXX "01XZUWLH-"
+B = XX0XX1XXX "ZZ1XX0UU1WWW"
+BIG = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+HUGE = 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111
+
+std_ulogic_vector <= std_ulogic_vector
+--------------------------------------------------
+C = XX0XX1XXX ZZ1XX0XX1XXX
+BIG2 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+
+std_ulogic_vector <= C++ array of bool
+--------------------------------------------------
+D = XXXXZX10X -, L, H, W, Z, X, 1, 0, U
+E = 10011XXXX X, X, 1, 1, 0, 0, 1, 1, X, X, U, U
+BIG3 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111
+ 000011110000"
+
+std_ulogic_vector <= bool_vector
+--------------------------------------------
+F = 1010 "1010"
+
+std_ulogic_vector <= unsigned long
+----------------------------------------------
+H = 1001 ...10001001 (137)
+I = 00000000000000000000000010001001 ...10001001 (137)
+J = 0000000000000000000000000000000010001001 ...10001001 (137)
+
+std_ulogic_vector <= sc_unsigned
+--------------------------------------------
+K = 0011 11 (3)
+L = 1101 1101 (13)
+M = 1001 10001001 (137)
+
+std_ulogic_vector <= signed long
+--------------------------------------------
+N = 01001 ...010001001 (137)
+O = 00000000000000000000000010001001 ...010001001 (137)
+P = 0000000000000000000000000000000010001001 ...010001001 (137)
+Q = 10111 ...101110111 (-137)
+R = 11111111111111111111111101110111 ...101110111 (-137)
+S = 1111111111111111111111111111111101110111 ...101110111 (-137)
+
+std_ulogic_vector <= sc_signed
+------------------------------------------
+T = 00011 011 (3)
+U = 01101 01101 (13)
+V = 01001 010001001 (137)
+W = 11101 101 (-3)
+X = 10011 10011 (-13)
+Y = 10111 101110111 (-137)
+
+std_ulogic_vector <= to_uint()
+-----------------------------------------------------------------
+TU1 = 1001 9
+TU2 = 10000000000000000000000000000001 2147483649
+TU3 = 0000000110000000000000000000000000000001 2147483649
+TU4 = 1101 1 (01)
+TU4 = 1101 13 (1101)
+TU4 = 1101 13 (00001101)
+
+std_ulogic_vector <= to_int()
+-----------------------------------------------------------------
+TS1 = 1001 -7
+TS2 = 11111111111111111111101111111001 -1031
+TS3 = 0000000111111111111111111111101111111001 -1031
+TS4 = 11001 1 (001)
+TS4 = 11001 -7 (11001)
+TS4 = 11001 -7 (111111001)
+
+std_ulogic_vector <= Typecast sc_unsigned
+-----------------------------------------------------------------
+TCU1 = 1101 1 (01)
+TCU1 = 1101 13 (1101)
+TCU1 = 1101 13 (00001101)
+
+std_ulogic_vector <= Typecast sc_signed
+-----------------------------------------------------------------
+TCS1 = 11001 1 (001)
+TCS1 = 11001 -7 (11001)
+TCS1 = 11001 25 (000011001)
+
+std_ulogic_vector <= to_string()
+--------------------------------------------
+TSTR = XXZ01XXXX XXZ01XXXX
+
+range() tests
+-----------------------------------------------------------------
+INITIAL 4-BIT 1000
+INITIAL 9-BIT XXZ01XXXX
+
+LVALUE RISE 1 0 0 0
+LVALUE FALL 0 0 0 1
+LVALUE SUB RISE 0 1 0 0
+LVALUE SUB FALL X X X X 1 0 Z X X
+LVALUE BIT 1 1 0 1
+
+RVALUE RISE 1 0 0 0
+RVALUE FALL 0 0 0 1
+RVALUE SUB FALL X X X X 1 0 Z X X
+RVALUE SUB RISE 1 0 0 0
+RVALUE BIT [] 1 0 1 1
+RVALUE BIT 0 0 1 0
+
+op1 operator op2 result [All operands are std_ulogic_vector]
+----------------------------------------------------------------
+1010 &= 1000 = 1000
+1010 ^= 1000 = 0010
+1010 |= 1000 = 1010
+~(1010) = 0101
+1010 & 1000 = 1000
+1010 ^ 1000 = 0010
+1010 | 1000 = 1010
+
+1010 &= 111011 = 1010
+1010 ^= 111011 = 0001
+1010 |= 111011 = 1011
+1010 & 111011 = 1010
+1010 ^ 111011 = 0001
+1010 | 111011 = 1011
+
+1010 and_reduce() = 0
+1010 or_reduce() = 1
+1010 xor_reduce() = 0
+
+1010 == 1000 -> false
+1010 != 1000 -> true
+
+1111 = 1111
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.macosx64 b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.macosx64
new file mode 100644
index 000000000..d168d15ca
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/golden/std_ulogic_vector_datatype.log.macosx64
@@ -0,0 +1,203 @@
+SystemC Simulation
+
+INTEGER SIZE = 4 bytes
+SHORT INTEGER SIZE = 2 bytes
+LONG INTEGER SIZE = 8 bytes
+UNSIGNED LONG SIZE = 8 bytes
+SIGNED LONG SIZE = 8 bytes
+
+std_ulogic_vector <= C++ string
+-------------------------------------------
+A = 01XZXXXXX "01XZUWLH-"
+B = XX0XX1XXX "ZZ1XX0UU1WWW"
+BIG = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+HUGE = 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111000011110000111100001111000011110000111100001111000011110000
+ 1111
+
+std_ulogic_vector <= std_ulogic_vector
+--------------------------------------------------
+C = XX0XX1XXX ZZ1XX0XX1XXX
+BIG2 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111"
+
+std_ulogic_vector <= C++ array of bool
+--------------------------------------------------
+D = XXXXZX10X -, L, H, W, Z, X, 1, 0, U
+E = 10011XXXX X, X, 1, 1, 0, 0, 1, 1, X, X, U, U
+BIG3 = 11110000111100001111000011110000111100001111000011110000111100001111
+ "11110000111100001111000011110000111100001111000011110000111100001111
+ 000011110000"
+
+std_ulogic_vector <= bool_vector
+--------------------------------------------
+F = 1010 "1010"
+
+std_ulogic_vector <= unsigned long
+----------------------------------------------
+H = 1001 ...10001001 (137)
+I = 00000000000000000000000010001001 ...10001001 (137)
+J = 0000000000000000000000000000000010001001 ...10001001 (137)
+
+std_ulogic_vector <= sc_unsigned
+--------------------------------------------
+K = 0011 11 (3)
+L = 1101 1101 (13)
+M = 1001 10001001 (137)
+
+std_ulogic_vector <= signed long
+--------------------------------------------
+N = 01001 ...010001001 (137)
+O = 00000000000000000000000010001001 ...010001001 (137)
+P = 0000000000000000000000000000000010001001 ...010001001 (137)
+Q = 10111 ...101110111 (-137)
+R = 11111111111111111111111101110111 ...101110111 (-137)
+S = 1111111111111111111111111111111101110111 ...101110111 (-137)
+
+std_ulogic_vector <= sc_signed
+------------------------------------------
+T = 00011 011 (3)
+U = 01101 01101 (13)
+V = 01001 010001001 (137)
+W = 11101 101 (-3)
+X = 10011 10011 (-13)
+Y = 10111 101110111 (-137)
+
+std_ulogic_vector <= to_uint()
+-----------------------------------------------------------------
+TU1 = 1001 9
+TU2 = 10000000000000000000000000000001 2147483649
+TU3 = 0000000110000000000000000000000000000001 2147483649
+TU4 = 1101 1 (01)
+TU4 = 1101 13 (1101)
+TU4 = 1101 13 (00001101)
+
+std_ulogic_vector <= to_int()
+-----------------------------------------------------------------
+TS1 = 1001 -7
+TS2 = 11111111111111111111101111111001 -1031
+TS3 = 0000000111111111111111111111101111111001 -1031
+TS4 = 11001 1 (001)
+TS4 = 11001 -7 (11001)
+TS4 = 11001 -7 (111111001)
+
+std_ulogic_vector <= Typecast sc_unsigned
+-----------------------------------------------------------------
+TCU1 = 1101 1 (01)
+TCU1 = 1101 13 (1101)
+TCU1 = 1101 13 (00001101)
+
+std_ulogic_vector <= Typecast sc_signed
+-----------------------------------------------------------------
+TCS1 = 11001 1 (001)
+TCS1 = 11001 -7 (11001)
+TCS1 = 11001 25 (000011001)
+
+std_ulogic_vector <= to_string()
+--------------------------------------------
+TSTR = XXZ01XXXX XXZ01XXXX
+
+range() tests
+-----------------------------------------------------------------
+INITIAL 4-BIT 1000
+INITIAL 9-BIT XXZ01XXXX
+
+LVALUE RISE 1 0 0 0
+LVALUE FALL 0 0 0 1
+LVALUE SUB RISE 0 1 0 0
+LVALUE SUB FALL X X X X 1 0 Z X X
+LVALUE BIT 1 1 0 1
+
+RVALUE RISE 1 0 0 0
+RVALUE FALL 0 0 0 1
+RVALUE SUB FALL X X X X 1 0 Z X X
+RVALUE SUB RISE 1 0 0 0
+RVALUE BIT [] 1 0 1 1
+RVALUE BIT 0 0 1 0
+
+op1 operator op2 result [All operands are std_ulogic_vector]
+----------------------------------------------------------------
+1010 &= 1000 = 1000
+1010 ^= 1000 = 0010
+1010 |= 1000 = 1010
+~(1010) = 0101
+1010 & 1000 = 1000
+1010 ^ 1000 = 0010
+1010 | 1000 = 1010
+
+1010 &= 111011 = 1010
+1010 ^= 111011 = 0001
+1010 |= 111011 = 1011
+1010 & 111011 = 1010
+1010 ^ 111011 = 0001
+1010 | 111011 = 1011
+
+1010 and_reduce() = 0
+1010 or_reduce() = 1
+1010 xor_reduce() = 0
+
+1010 == 1000 -> false
+1010 != 1000 -> true
+
+1111 = 1111
+
++-------------------------+
+| AND (&) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | 0 | X | X |
++-------------------------+
+| 0 | 0 | 0 | 0 | 0 |
++-------------------------+
+| 1 | X | 0 | 1 | X |
++-------------------------+
+| Z | X | 0 | X | X |
++-------------------------+
+
++-------------------------+
+| OR (|) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | 1 | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | 1 | 1 | 1 | 1 |
++-------------------------+
+| Z | X | X | 1 | X |
++-------------------------+
+
++-------------------------+
+| XOR (^) | X | 0 | 1 | Z |
++-------------------------+
+| X | X | X | X | X |
++-------------------------+
+| 0 | X | 0 | 1 | X |
++-------------------------+
+| 1 | X | 1 | 0 | X |
++-------------------------+
+| Z | X | X | X | X |
++-------------------------+
+
++-------------------------+
+| NOT (~) | X | 0 | 1 | Z |
++-------------------------+
+| | X | 1 | 0 | X |
++-------------------------+
diff --git a/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/std_ulogic_vector_datatype.cpp b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/std_ulogic_vector_datatype.cpp
new file mode 100644
index 000000000..f35433774
--- /dev/null
+++ b/src/systemc/tests/systemc/misc/unit/data/user_guide/ch9/std_ulogic_vector_datatype/std_ulogic_vector_datatype.cpp
@@ -0,0 +1,772 @@
+/*****************************************************************************
+
+ Licensed to Accellera Systems Initiative Inc. (Accellera) under one or
+ more contributor license agreements. See the NOTICE file distributed
+ with this work for additional information regarding copyright ownership.
+ Accellera licenses this file to you under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with the
+ License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied. See the License for the specific language governing
+ permissions and limitations under the License.
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ std_ulogic_vector_datatype.cpp --
+
+ Original Author: Martin Janssen, Synopsys, Inc., 2002-02-15
+
+ *****************************************************************************/
+
+/*****************************************************************************
+
+ MODIFICATION LOG - modifiers, enter your name, affiliation, date and
+ changes you are making here.
+
+ Name, Affiliation, Date:
+ Description of Modification:
+
+ *****************************************************************************/
+
+/* Main file for "std_ulogic_vector" data type */
+
+#include "systemc.h"
+
+typedef sc_logic std_ulogic;
+
+#define std_ulogic_vector sc_lv
+#define bool_vector sc_bv
+
+int sc_main(int ac, char *av[])
+{
+
+// 0. SIZE OF TYPES
+ int integer;
+ short short_integer;
+ long long_integer;
+ unsigned long unsigned_long;
+ signed long signed_long;
+
+ cout << "\nINTEGER SIZE \t\t= " << sizeof integer << " bytes"
+ << "\nSHORT INTEGER SIZE \t= " << sizeof short_integer << " bytes"
+ << "\nLONG INTEGER SIZE \t= " << sizeof long_integer << " bytes"
+ << "\nUNSIGNED LONG SIZE \t= " << sizeof unsigned_long << " bytes"
+ << "\nSIGNED LONG SIZE \t= " << sizeof signed_long << " bytes"
+ << "\n" << endl;
+
+// 1. DECLARATION SYNTAX
+ std_ulogic_vector<9> a;
+ std_ulogic_vector<9> b;
+ std_ulogic_vector<68> big;
+ std_ulogic_vector<1284> huge_;
+
+// 2. TYPE CONVERSION
+
+ // std_ulogic_vector <- C++ string
+ a = "01XZUWLH-";
+ b = "ZZ1XX0UU1WWW";
+ big = "11110000111100001111000011110000111100001111000011110000111100001111";
+ huge_ = "111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111000011110000111100001111";
+
+ cout << "std_ulogic_vector \t<=\t C++ string"
+ << "\n-------------------------------------------"
+ << "\nA = " << a << "\t\t \"01XZUWLH-\" "
+ << "\nB = " << b << "\t\t \"ZZ1XX0UU1WWW\" "
+ << "\nBIG = " << big << "\n "
+ <<"\"11110000111100001111000011110000111100001111000011110000111100001111\""
+ << "\nHUGE = " << huge_.range(0,63) << "\n "
+ << huge_.range(64,127) << "\n "
+ << huge_.range(128,191) << "\n "
+ << huge_.range(192,255) << "\n "
+ << huge_.range(256,319) << "\n "
+ << huge_.range(320,383) << "\n "
+ << huge_.range(384,447) << "\n "
+ << huge_.range(448,511) << "\n "
+ << huge_.range(512,575) << "\n "
+ << huge_.range(576,639) << "\n "
+ << huge_.range(640,703) << "\n "
+ << huge_.range(704,767) << "\n "
+ << huge_.range(768,831) << "\n "
+ << huge_.range(832,895) << "\n "
+ << huge_.range(896,959) << "\n "
+ << huge_.range(960,1023) << "\n "
+ << huge_.range(1024,1087) << "\n "
+ << huge_.range(1088,1151) << "\n "
+ << huge_.range(1152,1215) << "\n "
+ << huge_.range(1216,1279) << "\n "
+ << huge_.range(1280,1283)
+ << "\n" << endl;
+
+ // std_ulogic_vector <- std_ulogic_vector
+ std_ulogic_vector<9> c;
+ std_ulogic_vector<68> big2;
+
+ c = b;
+ big2 = big;
+
+ cout << "std_ulogic_vector \t<=\t std_ulogic_vector"
+ << "\n--------------------------------------------------"
+ << "\nC = " << c << "\t\t ZZ1XX0XX1XXX"
+ << "\nBIG2 = " << big2 << "\n "
+ <<"\"11110000111100001111000011110000111100001111000011110000111100001111\""
+ << "\n" << endl;
+
+ // std_ulogic_vector <- C++ array of std_ulogic
+ std_ulogic_vector<9> d;
+ std_ulogic_vector<9> e;
+ std_ulogic_vector<68> big3;
+ std_ulogic cb1[9] = { sc_logic( 'U' ), sc_logic( 0 ) , sc_logic( 1 ),
+ sc_logic( 'X' ), sc_logic( 'Z' ), sc_logic( 'W' ),
+ sc_logic( 'H' ), sc_logic( 'L' ), sc_logic( '-' ) };
+ std_ulogic cb2[12] = { sc_logic( 'U' ), sc_logic( 'U' ), sc_logic( 'X' ),
+ sc_logic( 'X' ), sc_logic( 1 ) , sc_logic( 1 ),
+ sc_logic( 0 ) , sc_logic( 0 ) , sc_logic( 1 ),
+ sc_logic( 1 ) , sc_logic( 'X' ), sc_logic( 'X' ) };
+ std_ulogic cb3[80] = { sc_logic( 1 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 1 ), sc_logic( 1 ), sc_logic( 1 ),
+ sc_logic( 1 ), sc_logic( 0 ), sc_logic( 0 ),
+ sc_logic( 0 ), sc_logic( 0 ) };
+
+ d = cb1;
+ e = cb2;
+ big3 = cb3;
+
+ cout << "std_ulogic_vector \t<=\t C++ array of bool"
+ << "\n--------------------------------------------------"
+ << "\nD = " << d << "\t\t -, L, H, W, Z, X, 1, 0, U"
+ << "\nE = " << e << "\t\t X, X, 1, 1, 0, 0, 1, 1, X, X, U, U"
+ << "\nBIG3 = " << big3 << "\n "
+ <<"\"11110000111100001111000011110000111100001111000011110000111100001111"
+ <<"\n 000011110000\""
+ << "\n" << endl;
+
+ // std_ulogic_vector <- bool_vector
+ std_ulogic_vector<4> f;
+ bool_vector<4> sv1;
+
+ sv1 = "1010";
+
+ f = sv1;
+
+ cout << "std_ulogic_vector \t<=\t bool_vector"
+ << "\n--------------------------------------------"
+ << "\nF = " << f << "\t\t \"1010\" "
+ << "\n" << endl;
+
+ // std_ulogic_vector <- unsigned long
+ std_ulogic_vector<4> h;
+ std_ulogic_vector<32> i;
+ std_ulogic_vector<40> j;
+ unsigned long ul1 = 137; // ...10001001
+ unsigned long ul2 = 137; // ...10001001
+ unsigned long ul3 = 137; // ...10001001
+
+ h = ul1;
+ i = ul2;
+ j = ul3;
+
+ cout << "std_ulogic_vector \t<=\t unsigned long"
+ << "\n----------------------------------------------"
+ << "\nH = " << h << "\t\t\t\t\t ...10001001 (137)"
+ << "\nI = " << i << "\t\t ...10001001 (137)"
+ << "\nJ = " << j << "\t ...10001001 (137)"
+ << "\n" << endl;
+
+ // std_ulogic_vector <- sc_unsigned
+ std_ulogic_vector<4> k;
+ std_ulogic_vector<4> l;
+ std_ulogic_vector<4> m;
+ sc_biguint<2> scu1;
+ sc_biguint<4> scu2;
+ sc_biguint<8> scu3;
+
+ scu1 = 3; // .........11
+ scu2 = 13; // .......1101
+ scu3 = 137; // ...10001001
+
+ k = scu1;
+ l = scu2;
+ m = scu3;
+
+ cout << "std_ulogic_vector \t<=\t sc_unsigned"
+ << "\n--------------------------------------------"
+ << "\nK = " << k << "\t\t 11 (3)"
+ << "\nL = " << l << "\t\t 1101 (13)"
+ << "\nM = " << m << "\t\t 10001001 (137)"
+ << "\n" << endl;
+
+ // std_ulogic_vector <- signed long
+ std_ulogic_vector<5> n;
+ std_ulogic_vector<32> o;
+ std_ulogic_vector<40> p;
+ std_ulogic_vector<5> q;
+ std_ulogic_vector<32> r;
+ std_ulogic_vector<40> s;
+ signed long sl1 = 137; // ...010001001
+ signed long sl2 = 137; // ...010001001
+ signed long sl3 = 137; // ...010001001
+ signed long sl4 = -137; // ...101110111
+ signed long sl5 = -137; // ...101110111
+ signed long sl6 = -137; // ...101110111
+
+ n = sl1;
+ o = sl2;
+ p = sl3;
+ q = sl4;
+ r = sl5;
+ s = sl6;
+
+ cout << "std_ulogic_vector \t<=\t signed long"
+ << "\n--------------------------------------------"
+ << "\nN = " << n << "\t\t\t\t\t ...010001001 (137)"
+ << "\nO = " << o << "\t\t ...010001001 (137)"
+ << "\nP = " << p << "\t ...010001001 (137)"
+ << "\nQ = " << q << "\t\t\t\t\t ...101110111 (-137)"
+ << "\nR = " << r << "\t\t ...101110111 (-137)"
+ << "\nS = " << s << "\t ...101110111 (-137)"
+ << "\n" << endl;
+
+ // std_ulogic_vector <- sc_signed
+ std_ulogic_vector<5> t;
+ std_ulogic_vector<5> u;
+ std_ulogic_vector<5> v;
+ std_ulogic_vector<5> w;
+ std_ulogic_vector<5> x;
+ std_ulogic_vector<5> y;
+ sc_bigint<3> scs1;
+ sc_bigint<5> scs2;
+ sc_bigint<9> scs3;
+ sc_bigint<3> scs4;
+ sc_bigint<5> scs5;
+ sc_bigint<9> scs6;
+
+ scs1 = 3; // ........011
+ scs2 = 13; // ......01101
+ scs3 = 137; // ..010001001
+ scs4 = -3; // ........101
+ scs5 = -13; // ......10011
+ scs6 = -137; // ..101110111
+
+ t = scs1;
+ u = scs2;
+ v = scs3;
+ w = scs4;
+ x = scs5;
+ y = scs6;
+
+ cout << "std_ulogic_vector \t<=\t sc_signed"
+ << "\n------------------------------------------"
+ << "\nT = " << t << "\t\t 011 (3)"
+ << "\nU = " << u << "\t\t 01101 (13)"
+ << "\nV = " << v << "\t\t 010001001 (137)"
+ << "\nW = " << w << "\t\t 101 (-3)"
+ << "\nX = " << x << "\t\t 10011 (-13)"
+ << "\nY = " << y << "\t\t 101110111 (-137)"
+ << "\n" << endl;
+
+ // std_ulogic_vector .to_uint()
+ std_ulogic_vector<4> tu1;
+ std_ulogic_vector<32> tu2;
+ std_ulogic_vector<40> tu3;
+ std_ulogic_vector<4> tu4;
+ sc_biguint<2> tu5;
+ sc_biguint<4> tu6;
+ sc_biguint<8> tu7;
+
+ tu1 = "1001"; // 9
+ tu2 = "10000000000000000000000000000001"; // 2147483649
+ tu3 = "0000000110000000000000000000000000000001"; // 6442450945
+ tu4 = "1101";
+ tu5 = tu4.to_uint();
+ tu6 = tu4.to_uint();
+ tu7 = tu4.to_uint();
+
+ cout << "std_ulogic_vector \t\t<=\t\t to_uint()"
+ << "\n-----------------------------------------------------------------"
+ << "\nTU1 = \t\t\t\t " << tu1 << "\t " << tu1.to_uint()
+ << "\nTU2 = " << tu2 << "\t " << tu2.to_uint()
+ << "\nTU3 = " << tu3 << "\t " << tu3.to_uint()
+ << "\nTU4 = " << tu4 << " \t\t\t\t\t " << tu5 << "\t ("
+ << tu5[1] << tu5[0] << ")"
+ << "\nTU4 = " << tu4 << " \t\t\t\t\t " << tu6 << "\t ("
+ << tu6[3] << tu6[2] << tu6[1] << tu6[0] << ")"
+ << "\nTU4 = " << tu4 << " \t\t\t\t\t " << tu7 << "\t("
+ << tu7[7] << tu7[6] << tu7[5] << tu7[4]
+ << tu7[3] << tu7[2] << tu7[1] << tu7[0] << ")"
+ << "\n" << endl;
+
+ // std_ulogic_vector .to_int()
+ std_ulogic_vector<4> ts1;
+ std_ulogic_vector<32> ts2;
+ std_ulogic_vector<40> ts3;
+ std_ulogic_vector<5> ts4;
+ sc_bigint<3> ts5;
+ sc_bigint<5> ts6;
+ sc_bigint<9> ts7;
+
+ ts1 = "1001"; // -7
+ ts2 = "11111111111111111111101111111001"; // -1031
+ ts3 = "0000000111111111111111111111101111111001"; // 8589933561
+ ts4 = "11001";
+ ts5 = ts4.to_int();
+ ts6 = ts4.to_int();
+ ts7 = ts4.to_int();
+
+ cout << "std_ulogic_vector \t\t<=\t\t to_int()"
+ << "\n-----------------------------------------------------------------"
+ << "\nTS1 = \t\t\t\t " << ts1 << "\t " << ts1.to_int()
+ << "\nTS2 = " << ts2 << "\t " << ts2.to_int()
+ << "\nTS3 = " << ts3 << "\t " << ts3.to_int()
+ << "\nTS4 = " << ts4 << " \t\t\t\t\t " << ts5 << "\t ("
+ << ts5[2] << ts5[1] << ts5[0] << ")"
+ << "\nTS4 = " << ts4 << " \t\t\t\t\t " << ts6 << "\t ("
+ << ts6[4] << ts6[3] << ts6[2] << ts6[1] << ts6[0] << ")"
+ << "\nTS4 = " << ts4 << " \t\t\t\t\t " << ts7 << "\t("
+ << ts7[8] << ts7[7] << ts7[6] << ts7[5]
+ << ts7[4] << ts7[3] << ts7[2] << ts7[1] << ts7[0] << ")"
+ << "\n" << endl;
+
+ // std_ulogic_vector Typecasted to sc_unsigned
+ std_ulogic_vector<4> tcu1;
+ sc_biguint<2> tcu2;
+ sc_biguint<4> tcu3;
+ sc_biguint<8> tcu4;
+
+ tcu1 = "1101";
+ tcu2 = tcu1;
+ tcu3 = tcu1;
+ tcu4 = tcu1;
+
+ cout << "std_ulogic_vector \t\t<=\t\t Typecast sc_unsigned"
+ << "\n-----------------------------------------------------------------"
+ << "\nTCU1 = " << tcu1 << " \t\t\t\t\t " << tcu2 << "\t ("
+ << tcu2[1] << tcu2[0] << ")"
+ << "\nTCU1 = " << tcu1 << " \t\t\t\t\t " << tcu3 << "\t ("
+ << tcu3[3] << tcu3[2] << tcu3[1] << tcu3[0] << ")"
+ << "\nTCU1 = " << tcu1 << " \t\t\t\t\t " << tcu4 << "\t("
+ << tcu4[7] << tcu4[6] << tcu4[5] << tcu4[4]
+ << tcu4[3] << tcu4[2] << tcu4[1] << tcu4[0] << ")"
+ << "\n" << endl;
+
+ // std_ulogic_vector Typecasted to sc_signed
+ std_ulogic_vector<5> tcs1;
+ sc_bigint<3> tcs2;
+ sc_bigint<5> tcs3;
+ sc_bigint<9> tcs4;
+
+ tcs1 = "11001";
+ tcs2 = sc_bigint<3>(tcs1);
+ tcs3 = sc_bigint<5>(tcs1);
+ tcs4 = sc_bigint<9>(tcs1);
+
+ cout << "std_ulogic_vector \t\t<=\t\t Typecast sc_signed"
+ << "\n-----------------------------------------------------------------"
+ << "\nTCS1 = " << tcs1 << " \t\t\t\t\t " << tcs2 << "\t ("
+ << tcs2[2] << tcs2[1] << tcs2[0] << ")"
+ << "\nTCS1 = " << tcs1 << " \t\t\t\t\t " << tcs3 << "\t ("
+ << tcs3[4] << tcs3[3] << tcs3[2] << tcs3[1] << tcs3[0] << ")"
+ << "\nTCS1 = " << tcs1 << " \t\t\t\t\t " << tcs4 << "\t("
+ << tcs4[8] << tcs4[7] << tcs4[6] << tcs4[5]
+ << tcs4[4] << tcs4[3] << tcs4[2] << tcs4[1] << tcs4[0] << ")"
+ << "\n" << endl;
+
+ // std_ulogic_vector .to_string()
+ std_ulogic_vector<9> tstr;
+ std::string str;
+
+ tstr = "UXZ01WLH-";
+ str = tstr.to_string();
+
+ cout << "std_ulogic_vector \t<=\t to_string()"
+ << "\n--------------------------------------------"
+ << "\nTSTR = " << tstr << " \t\t " << str
+ << endl;
+
+
+// 3. OPERATORS
+// Supported operators: ~ & ^ | &= ^= |= = [] range()
+// and_reduce() or_reduce() xor_reduce()
+ std_ulogic_vector<4> ra;
+ std_ulogic_vector<4> rb;
+ std_ulogic_vector<4> rc;
+ std_ulogic_vector<9> rd;
+ std_ulogic_vector<4> re;
+ std_ulogic_vector<4> rf;
+ std_ulogic_vector<4> rg;
+ std_ulogic_vector<9> rh;
+ std_ulogic_vector<4> ri;
+ std_ulogic_vector<4> rj;
+ std_ulogic_vector<4> rl;
+
+ std_ulogic_vector<4> rdata4;
+ std_ulogic_vector<9> rdata9;
+
+ rdata4 = "1000";
+ rdata9 = "UXZ01WHL-";
+
+ ra.range(0,3) = rdata4;
+ rb.range(3,0) = rdata4;
+ ( rc.range(1,3), rc.range(0,0) ) = rdata4;
+ ( rd.range(8,6), rd.range(5,0) ) = rdata9;
+ re = "1111";
+ re.range(2,2) = std_ulogic_vector<1>( rdata4[1] );
+
+ rf = rdata4.range(0,3);
+ rg = rdata4.range(3,0);
+ rh = ( rdata9.range(8,6), rdata9.range(5,0) );
+ ri = ( rdata4.range(0,1), rdata4.range(2,3) );
+ rj = "1111";
+ rj[1] = rdata4.range(2,2)[0];
+ rl = ( rdata4.range(1,1), rdata4.range(3,3),
+ rdata4.range(0,0), rdata4.range(2,2) );
+
+ cout.precision(15);
+ cout << "\nrange() tests"
+ << "\n-----------------------------------------------------------------"
+ << "\nINITIAL 4-BIT \t" << rdata4
+ << "\nINITIAL 9-BIT \t" << rdata9 << "\n"
+ << "\nLVALUE RISE \t"
+ << ra[0] << "\t" << ra[1] << "\t" << ra[2] << "\t" << ra[3]
+ << "\nLVALUE FALL \t"
+ << rb[0] << "\t" << rb[1] << "\t" << rb[2] << "\t" << rb[3]
+ << "\nLVALUE SUB RISE "
+ << rc[0] << "\t" << rc[1] << "\t" << rc[2] << "\t" << rc[3]
+ << "\nLVALUE SUB FALL "
+ << rd[0] << "\t" << rd[1] << "\t" << rd[2] << "\t"
+ << rd[3] << "\t" << rd[4] << "\t" << rd[5] << "\t"
+ << rd[6] << "\t" << rd[7] << "\t" << rd[8]
+ << "\nLVALUE BIT \t"
+ << re[0] << "\t" << re[1] << "\t" << re[2] << "\t" << re[3]
+ << "\n\nRVALUE RISE \t"
+ << rf[0] << "\t" << rf[1] << "\t" << rf[2] << "\t" << rf[3]
+ << "\nRVALUE FALL \t"
+ << rg[0] << "\t" << rg[1] << "\t" << rg[2] << "\t" << rg[3]
+ << "\nRVALUE SUB FALL "
+ << rh[0] << "\t" << rh[1] << "\t" << rh[2] << "\t"
+ << rh[3] << "\t" << rh[4] << "\t" << rh[5] << "\t"
+ << rh[6] << "\t" << rh[7] << "\t" << rh[8]
+ << "\nRVALUE SUB RISE "
+ << ri[0] << "\t" << ri[1] << "\t" << ri[2] << "\t" << ri[3]
+ << "\nRVALUE BIT [] \t"
+ << rj[0] << "\t" << rj[1] << "\t" << rj[2] << "\t" << rj[3]
+ << "\nRVALUE BIT \t"
+ << rl[0] << "\t" << rl[1] << "\t" << rl[2] << "\t" << rl[3]
+ << endl;
+
+#define VAL1 "1010"
+#define VAL2 "1000"
+#define VAL3 "111011"
+
+ std_ulogic_vector<4> op1;
+ op1 = VAL1;
+ std_ulogic_vector<4> op2;
+ op2 = VAL2;
+ std_ulogic_vector<4> r1, r2, r3, r4, r5, r6, r7, r8;
+ std_ulogic_vector<4> r9, r10, r11, r12, r13, r14;
+ std_ulogic_vector<4> r15, r16, r17, r18, r19;
+ std_ulogic_vector<4> r20, r21, r22, r23, r24;
+ std_ulogic_vector<4> r25, r26, r27, r28, r29;
+ std_ulogic_vector<4> r30, r31, r32, r33, r34, r35;
+ std_ulogic_vector<4> r36, r37, r38, r39, r40, r41;
+ std_ulogic r42, r43, r44;
+
+// r1 = op1 * op2; // Multiplication
+
+// r2 = op1 / op2; // Division
+
+// r3 = op1 % op2; // Modulus
+
+// r4 = op1 + op2; // Addition
+
+// r5 = op1 - op2; // Subtraction
+
+// r6 = !op1; // Logical NOT
+
+// r7 = op1 && op2; // Logical AND
+
+// r8 = op1 || op2; // Logical OR
+
+// r9 = op1 < op2; // Less than
+
+// r10 = op1 <= op2; // Less than or equal
+
+// r11 = op1 > op2; // Greater than
+
+// r12 = op1 >= op2; // Greater than or equal
+
+// r13 = op1 += op2; // Compound addition
+// op1 = VAL1; op2 = VAL2;
+
+// r14 = op1 -= op2; // Compound subtraction
+// op1 = VAL1; op2 = VAL2;
+
+// r15 = op1 *= op2; // Compound multiplication
+// op1 = VAL1; op2 = VAL2;
+
+// r16 = op1 /= op2; // Compound division
+// op1 = VAL1; op2 = VAL2;
+
+// r17 = op1 %= op2; // Compound modulus
+// op1 = VAL1; op2 = VAL2;
+
+// r18 = op1 <<= op2; // Compound shift left
+// op1 = VAL1; op2 = VAL2;
+
+// r19 = op1 >>= op2; // Compound shift right
+// op1 = VAL1; op2 = VAL2;
+
+ r20 = op1 &= op2; // Compound bitwise AND
+ op1 = VAL1; op2 = VAL2;
+ r36 = op1 &= VAL3;
+ op1 = VAL1;
+
+ r21 = op1 ^= op2; // Compound bitwise XOR
+ op1 = VAL1; op2 = VAL2;
+ r37 = op1 ^= VAL3;
+ op1 = VAL1;
+
+ r22 = op1 |= op2; // Compound bitwise OR
+ op1 = VAL1; op2 = VAL2;
+ r38 = op1 |= VAL3;
+ op1 = VAL1;
+
+// r23 = op2++; // Postfix increment
+// op1 = VAL1; op2 = VAL2;
+
+// r24 = ++op2; // Prefix increment
+// op1 = VAL1; op2 = VAL2;
+
+// r25 = op2--; // Postfix decrement
+// op1 = VAL1; op2 = VAL2;
+
+// r26 = --op2; // Prefix decrement
+// op1 = VAL1; op2 = VAL2;
+
+// r27 = (op1 > op2) ? true : false; // Arithmetic if
+// r28 = (op1 < op2) ? true : false; // Arithmetic if
+
+// r29 = op1, r29 = op2; // Comma
+
+ r30 = ~op1; // Bitwise NOT
+
+// r31 = op1 << op2; // Left shift
+// op1 = VAL1; op2 = VAL2;
+
+// r32 = op1 >> op2; // Right shift
+// op1 = VAL1; op2 = VAL2;
+
+ r33 = op1 & op2; // Bitwise AND
+ r39 = op1 & VAL3;
+
+ r34 = op1 ^ op2; // Bitwise XOR
+ r40 = op1 ^ VAL3;
+
+ r35 = op1 | op2; // Bitwise OR
+ r41 = op1 | VAL3;
+
+ r42 = and_reduce(op1); // AND reduction
+
+ r43 = or_reduce(op1); // OR reduction
+
+ r44 = xor_reduce(op1); // XOR reduction
+
+cout << "\nop1\t operator\t op2\t result [All operands are std_ulogic_vector]"
+ << "\n----------------------------------------------------------------"
+// << "\n" << op1 << "\t * \t\t " << op2 << "\t = " << r1
+// << "\n" << op1 << "\t / \t\t " << op2 << "\t = " << r2
+// << "\n" << op1 << "\t % \t\t " << op2 << "\t = " << r3
+// << "\n" << op1 << "\t + \t\t " << op2 << "\t = " << r4
+// << "\n" << op1 << "\t - \t\t " << op2 << "\t = " << r5
+// << "\n!(" << op1 << ") \t\t\t\t = " << r6
+// << "\n" << op1 << "\t && \t\t " << op2 << "\t = " << r7
+// << "\n" << op1 << "\t || \t\t " << op2 << "\t = " << r8
+// << "\n" << op1 << "\t < \t\t " << op2 << "\t = " << r9
+// << "\n" << op1 << "\t <= \t\t " << op2 << "\t = " << r10
+// << "\n" << op1 << "\t > \t\t " << op2 << "\t = " << r11
+// << "\n" << op1 << "\t >= \t\t " << op2 << "\t = " << r12
+// << "\n" << op1 << "\t += \t\t " << op2 << "\t = " << r13
+// << "\n" << op1 << "\t -= \t\t " << op2 << "\t = " << r14
+// << "\n" << op1 << "\t *= \t\t " << op2 << "\t = " << r15
+// << "\n" << op1 << "\t /= \t\t " << op2 << "\t = " << r16
+// << "\n" << op1 << "\t %= \t\t " << op2 << "\t = " << r17
+// << "\n" << op1 << "\t <<=\t\t " << op2 << "\t = " << r18
+// << "\n" << op1 << "\t >>=\t\t " << op2 << "\t = " << r19
+ << "\n" << op1 << "\t &= \t\t " << op2 << "\t = " << r20
+ << "\n" << op1 << "\t ^= \t\t " << op2 << "\t = " << r21
+ << "\n" << op1 << "\t |= \t\t " << op2 << "\t = " << r22
+// << "\n" << "\t ()++ \t " << op2 << "\t = " << r23
+// << "\n" << "\t ++() \t " << op2 << "\t = " << r24
+// << "\n" << "\t ()-- \t " << op2 << "\t = " << r25
+// << "\n" << "\t --() \t " << op2 << "\t = " << r26
+// << "\n" << op1 << "\t > ?: \t " << op2 << "\t = " << r27
+// << "\n" << op1 << "\t < ?: \t " << op2 << "\t = " << r28
+// << "\n" << op1 << "\t , \t\t " << op2 << "\t = " << r29
+ << "\n~(" << op1 << ") \t\t\t = " << r30
+// << "\n" << op1 << "\t << \t\t " << op2 << "\t = " << r31
+// << "\n" << op1 << "\t >> \t\t " << op2 << "\t = " << r32
+ << "\n" << op1 << "\t & \t\t " << op2 << "\t = " << r33
+ << "\n" << op1 << "\t ^ \t\t " << op2 << "\t = " << r34
+ << "\n" << op1 << "\t | \t\t " << op2 << "\t = " << r35
+ << "\n\n" << op1 << "\t &= \t\t " << VAL3 << "\t = " << r36
+ << "\n" << op1 << "\t ^= \t\t " << VAL3 << "\t = " << r37
+ << "\n" << op1 << "\t |= \t\t " << VAL3 << "\t = " << r38
+ << "\n" << op1 << "\t & \t\t " << VAL3 << "\t = " << r39
+ << "\n" << op1 << "\t ^ \t\t " << VAL3 << "\t = " << r40
+ << "\n" << op1 << "\t | \t\t " << VAL3 << "\t = " << r41
+ << "\n\n" << op1 << "\t and_reduce() \t = " << r42
+ << "\n" << op1 << "\t or_reduce() \t = " << r43
+ << "\n" << op1 << "\t xor_reduce() \t = " << r44
+ << endl;
+
+ if (op1 == op2) // Equality
+ cout << "\n" << op1 << "\t == \t\t " << op2 << "\t -> true" << endl;
+ else
+ cout << "\n" << op1 << "\t == \t\t " << op2 << "\t -> false" << endl;
+
+ if (op1 != op2) // Inequality
+ cout << op1 << "\t != \t\t " << op2 << "\t -> true" << endl;
+ else
+ cout << op1 << "\t != \t\t " << op2 << "\t -> false" << endl;
+
+ op1 = op2 = "1111"; // Assignment operator concatenation
+ cout << "\n" << op1 << "\t = \t\t " << op2 << endl;
+
+
+// 4. OPERATOR DEFINITIONS
+// & | ^ ~
+ std_ulogic_vector<9> suv;
+ std_ulogic_vector<9> vu;
+ std_ulogic_vector<9> vx;
+ std_ulogic_vector<9> v0;
+ std_ulogic_vector<9> v1;
+ std_ulogic_vector<9> vz;
+ std_ulogic_vector<9> vw;
+ std_ulogic_vector<9> vl;
+ std_ulogic_vector<9> vh;
+ std_ulogic_vector<9> vd;
+ std_ulogic_vector<9> bang;
+
+ suv = "UX01ZWLH-";
+
+ vu = "UUUUUUUUU" & suv;
+ vx = "XXXXXXXXX" & suv;
+ v0 = "000000000" & suv;
+ v1 = "111111111" & suv;
+ vz = "ZZZZZZZZZ" & suv;
+ vw = "WWWWWWWWW" & suv;
+ vl = "LLLLLLLLL" & suv;
+ vh = "HHHHHHHHH" & suv;
+ vd = "---------" & suv;
+
+ cout << "\n+-------------------------+"
+ << "\n| AND (&) | X | 0 | 1 | Z |"
+ << "\n+-------------------------+"
+ << "\n| X | " << vx[7] << " | " << vx[6] << " | "
+ << vx[5] << " | " << vx[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| 0 | " << v0[7] << " | " << v0[6] << " | "
+ << v0[5] << " | " << v0[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| 1 | " << v1[7] << " | " << v1[6] << " | "
+ << v1[5] << " | " << v1[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| Z | " << vz[7] << " | " << vz[6] << " | "
+ << vz[5] << " | " << vz[4] << " | "
+ << "\n+-------------------------+"
+ << endl;
+
+ vu = "UUUUUUUUU" | suv;
+ vx = "XXXXXXXXX" | suv;
+ v0 = "000000000" | suv;
+ v1 = "111111111" | suv;
+ vz = "ZZZZZZZZZ" | suv;
+ vw = "WWWWWWWWW" | suv;
+ vl = "LLLLLLLLL" | suv;
+ vh = "HHHHHHHHH" | suv;
+ vd = "---------" | suv;
+
+ cout << "\n+-------------------------+"
+ << "\n| OR (|) | X | 0 | 1 | Z |"
+ << "\n+-------------------------+"
+ << "\n| X | " << vx[7] << " | " << vx[6] << " | "
+ << vx[5] << " | " << vx[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| 0 | " << v0[7] << " | " << v0[6] << " | "
+ << v0[5] << " | " << v0[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| 1 | " << v1[7] << " | " << v1[6] << " | "
+ << v1[5] << " | " << v1[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| Z | " << vz[7] << " | " << vz[6] << " | "
+ << vz[5] << " | " << vz[4] << " | "
+ << "\n+-------------------------+"
+ << endl;
+
+ vu = "UUUUUUUUU" ^ suv;
+ vx = "XXXXXXXXX" ^ suv;
+ v0 = "000000000" ^ suv;
+ v1 = "111111111" ^ suv;
+ vz = "ZZZZZZZZZ" ^ suv;
+ vw = "WWWWWWWWW" ^ suv;
+ vl = "LLLLLLLLL" ^ suv;
+ vh = "HHHHHHHHH" ^ suv;
+ vd = "---------" ^ suv;
+
+ cout << "\n+-------------------------+"
+ << "\n| XOR (^) | X | 0 | 1 | Z |"
+ << "\n+-------------------------+"
+ << "\n| X | " << vx[7] << " | " << vx[6] << " | "
+ << vx[5] << " | " << vx[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| 0 | " << v0[7] << " | " << v0[6] << " | "
+ << v0[5] << " | " << v0[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| 1 | " << v1[7] << " | " << v1[6] << " | "
+ << v1[5] << " | " << v1[4] << " | "
+ << "\n+-------------------------+"
+ << "\n| Z | " << vz[7] << " | " << vz[6] << " | "
+ << vz[5] << " | " << vz[4] << " | "
+ << "\n+-------------------------+"
+ << endl;
+
+ bang = ~suv;
+
+ cout << "\n+-------------------------+"
+ << "\n| NOT (~) | X | 0 | 1 | Z |"
+ << "\n+-------------------------+"
+ << "\n| | " << bang[7] << " | " << bang[6] << " | "
+ << bang[5] << " | " << bang[4] << " | "
+ << "\n+-------------------------+"
+ << endl;
+ return 0;
+}