Major re-write of Stem