Throwable System.IO.IOException System.SystemException new Throwable() new Throwable(${message}) System.String message new IOException(${info},${ctxt}) System.SerializationInfo info System.StreamingContext ctxt new Throwable(${message}, ${inner}) System.String message System.Exception inner