Move code into, abstract code