# System.IO

``` diff
 namespace System.IO {
     public class MemoryStream : Stream {
+        public override void CopyTo(ReadOnlySpanAction<byte, object> callback, object state, int bufferSize);
+        public override Task CopyToAsync(Func<ReadOnlyMemory<byte>, object, CancellationToken, ValueTask> callback, object state, int bufferSize, CancellationToken cancellationToken);
     }
     public abstract class Stream : MarshalByRefObject, IAsyncDisposable, IDisposable {
+        public virtual void CopyTo(ReadOnlySpanAction<byte, object> callback, object state, int bufferSize);
+        public virtual Task CopyToAsync(Func<ReadOnlyMemory<byte>, object, CancellationToken, ValueTask> callback, object state, int bufferSize, CancellationToken cancellationToken);
     }
     public class UnmanagedMemoryStream : Stream {
+        public override void CopyTo(ReadOnlySpanAction<byte, object> callback, object state, int bufferSize);
     }
 }
```

