(defun Split_ALE (L n / g h r)
(if (> (setq g (length L)) n 0)
(progn
(setq g (- g (1+ n)) r (reverse L) h (nth n L))
(while (/= n (length (setq r (cdr (member h r))))))
(while (/= g (length (setq L (cdr (member h L))))))
(list (reverse r) (cons h L))
)
L
)
)