replaces ADD_TT with BINARY_LOOP