reorganizing code to be more logically placed within various deferred classes