reformatted init