Adding in the v0.5 re-write