First proper run-through with new data structs