necessary headers implemented
init version