(define (task lst r)
(if (null? lst) (reverse r)
(if (atom? (car lst)) (cons (car lst) (task (cdr lst) r))
(task (cdr lst) (cons (car lst) r)))))
(display (task '(1 2 (1 2) 3 4 (5 6)) '()))
KGRlZmluZSAodGFzayBsc3QgcikKICAoaWYgKG51bGw/IGxzdCkgKHJldmVyc2UgcikKICAgICAgKGlmIChhdG9tPyAoY2FyIGxzdCkpIChjb25zIChjYXIgbHN0KSAodGFzayAoY2RyIGxzdCkgcikpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAodGFzayAoY2RyIGxzdCkgKGNvbnMgKGNhciBsc3QpIHIpKSkpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgCihkaXNwbGF5ICh0YXNrICcoMSAyICgxIDIpIDMgNCAoNSA2KSkgJygpKSkK