This is an extension for this question asked an hour ago.
We cannot modify the access modifiers, when overriding a virtual method
Protected internal means protected OR internal. So if by overriding outside the original assembly you were allowed to mark it protected internal you would be allowing other classes in the same assembly as the overrider to call this method. That would effectively mean that original parent's internal encapsulation would be violated.