improved init and reset and object sizes