/// <summary>
 /// Gets the hash code
 /// </summary>
 /// <returns>Hash code</returns>
 public override int GetHashCode()
 {
     unchecked // Overflow is fine, just wrap
     {
         var hashCode = 41;
         // Suitable nullity checks etc, of course :)
         if (TcpPort != null)
         {
             hashCode = hashCode * 59 + TcpPort.GetHashCode();
         }
         if (AllowRemoteAccess != null)
         {
             hashCode = hashCode * 59 + AllowRemoteAccess.GetHashCode();
         }
         if (MaxRenderRgnPixels != null)
         {
             hashCode = hashCode * 59 + MaxRenderRgnPixels.GetHashCode();
         }
         if (MaxMessageSize != null)
         {
             hashCode = hashCode * 59 + MaxMessageSize.GetHashCode();
         }
         if (RandomAccessUrlTimeout != null)
         {
             hashCode = hashCode * 59 + RandomAccessUrlTimeout.GetHashCode();
         }
         if (WorkerThreads != null)
         {
             hashCode = hashCode * 59 + WorkerThreads.GetHashCode();
         }
         return(hashCode);
     }
 }