protected constructor
protected constructor