protected abstract void UnlockInternal();
protected sealed override void UnlockInternal() { @this.UnlockInternal(); }