Modification: constructor function