defer() first pass