introducing new constructor