Why is this constructor package protected?