ATM COPY: makes second copy of non-blank portion of tape (with 1 blank as separator) 0 1 // input alphabet 0 1 a b B // tape alphabet 1 // number of tapes 1 // number of tracks on tape 0 1 // tape 0 is 1-way infinite [copy_init] // initial state [copy_done] // final state [copy_init] 0 [copy_0] a R [copy_init] 1 [copy_1] b R [copy_init] B [copy_init_B] B R [copy_init_B] 0 [copy_0] a R [copy_init_B] 1 [copy_1] b R [copy_init_B] B [done] B R [copy_0] 0 [copy_0] 0 R [copy_0] 1 [copy_0] 1 R [copy_0] B [copy_0a] B R [copy_1] 0 [copy_1] 0 R [copy_1] 1 [copy_1] 1 R [copy_1] B [copy_1a] B R [copy_0a] 0 [copy_0a] 0 R [copy_0a] 1 [copy_0a] 1 R [copy_0a] B [go_left] 0 L [copy_1a] 0 [copy_1a] 0 R [copy_1a] 1 [copy_1a] 1 R [copy_1a] B [go_left] 1 L [go_left] 0 [go_left] 0 L [go_left] 1 [go_left] 1 L [go_left] B [go_left] B L [go_left] a [grab] 0 R [go_left] b [grab] 1 R [grab] 0 [copy_0] a R [grab] 1 [copy_1] b R [grab] B [finish] B L [finish] 0 [finish] 0 L [finish] 1 [finish] 1 L [finish] B [copy_done] B R end