removed need for init()