If block labeling and repeat block cycles are available on your control, then just call up the work offset (G54 ect) and repeat the blocks of the program, then call G55 and do the same. Another method is to label the program as a subroutine then position to G54 then call the subroutine , then G55, ECT