Seems to me to be more understandable having each list be one line of input, instead of the head of each list being related. Then transpose when you build. But I guess this works.