removed not thrown IOException
removed constructor, everything can be initialized at decl