Implementing new constructor