defer object creation