just about there on foldl