private static void ProcessExitResult(ProcessExitResult r) {
     switch (r.ExitCode) {
     case 3:
         // TODO
         throw new SteamInitializationException(
             "The Steam client does not appear to be running, or runs under different (Administrator?) priviledges. Please start Steam and/or restart the withSIX client under the same priviledges");
     case 4:
         throw new SteamNotFoundException(
             "The Steam client does not appear to be running, nor was Steam found");
     case 9:
         throw new TimeoutException("The operation timed out waiting for a response from the Steam client");
     case 10:
         throw new OperationCanceledException("The operation was canceled");
     }
     r.ConfirmSuccess();
 }