initial parts all_1_1_0 1 1 all_2_2_0 1 1 all_3_3_0 1 1 all_4_4_0 1 1 parts with gap all_1_1_0 1 1 all_2_2_0 1 1 all_3_3_1 0 0 all_4_4_0 1 1 CANNOT_ASSIGN_OPTIMIZE parts after optimize all_1_1_0 1 0 all_1_2_1 2 1 all_2_2_0 1 0 all_3_3_1 0 0 all_4_4_0 1 1 parts after detach/attach all_1_1_0 1 0 all_1_2_1 2 1 all_2_2_0 1 0 all_3_3_1 0 0 all_4_4_0 1 1