call super constuctor