move instance code to a separate source file