fixed requires? and removed init because it complains a lot about it