Changed design of the constructor method