first full run-through trying to add everything needed