change to public and remove final