using alternate initialize function