midway through abstracting into templates
midway through abstracting into templates p2
awk testing code all over