smaller initialize method