I have made the code more understandible and am still working on the can
rec function

jb