protected virtual void LoadText(TextReader input) { if (input == null) { throw new ArgumentNullException(nameof(input)); } var reader = ProviderFactory.CreateReader(input); reader.CopyTo(this); }