why we need it while init method exists