Define posn type instead of using lists for positions