added constructor from user