updated contact object creation flow