`protected internal` means it's visible to `protected` OR `internal` (see [my post](http://haacked.com/archive/2007/10/29/what-does-protected-internal-mean.aspx)). So it'd be just as exposed as it is today as it's only exposed on a protected constructor.

Unfortunately C# doesn't allow `protected` AND `internal` where it requires both to be true. I guess I could make it an internal property, but that gets ugly.