|  | @@ -1,10 +1,12 @@
 | 
	
		
			
				|  |  | +using System;
 | 
	
		
			
				|  |  |  using System.Collections.Generic;
 | 
	
		
			
				|  |  |  using System.IO;
 | 
	
		
			
				|  |  | +using System.Net;
 | 
	
		
			
				|  |  |  using System.Net.Sockets;
 | 
	
		
			
				|  |  |  using System.Numerics;
 | 
	
		
			
				|  |  |  using System.Text.RegularExpressions;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -namespace System.Net
 | 
	
		
			
				|  |  | +namespace Emby.Server.Implementations.Networking.IPNetwork
 | 
	
		
			
				|  |  |  {
 | 
	
		
			
				|  |  |      /// <summary>
 | 
	
		
			
				|  |  |      /// IP Network utility class.
 | 
	
	
		
			
				|  | @@ -60,7 +62,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |              get
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                int width = this._family == Sockets.AddressFamily.InterNetwork ? 4 : 16;
 | 
	
		
			
				|  |  | +                int width = this._family == System.Net.Sockets.AddressFamily.InterNetwork ? 4 : 16;
 | 
	
		
			
				|  |  |                  var uintBroadcast = this._network + this._netmask.PositiveReverse(width);
 | 
	
		
			
				|  |  |                  return uintBroadcast;
 | 
	
		
			
				|  |  |              }
 | 
	
	
		
			
				|  | @@ -73,7 +75,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  |              get
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  | -                if (this._family == Sockets.AddressFamily.InterNetworkV6)
 | 
	
		
			
				|  |  | +                if (this._family == System.Net.Sockets.AddressFamily.InterNetworkV6)
 | 
	
		
			
				|  |  |                  {
 | 
	
		
			
				|  |  |                      return null;
 | 
	
		
			
				|  |  |                  }
 | 
	
	
		
			
				|  | @@ -88,7 +90,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  |              get
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  | -                var fisrt = this._family == Sockets.AddressFamily.InterNetworkV6
 | 
	
		
			
				|  |  | +                var fisrt = this._family == System.Net.Sockets.AddressFamily.InterNetworkV6
 | 
	
		
			
				|  |  |                      ? this._network
 | 
	
		
			
				|  |  |                      : (this.Usable <= 0) ? this._network : this._network + 1;
 | 
	
		
			
				|  |  |                  return IPNetwork.ToIPAddress(fisrt, this._family);
 | 
	
	
		
			
				|  | @@ -102,7 +104,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  |              get
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  | -                var last = this._family == Sockets.AddressFamily.InterNetworkV6
 | 
	
		
			
				|  |  | +                var last = this._family == System.Net.Sockets.AddressFamily.InterNetworkV6
 | 
	
		
			
				|  |  |                      ? this._broadcast
 | 
	
		
			
				|  |  |                      : (this.Usable <= 0) ? this._network : this._broadcast - 1;
 | 
	
		
			
				|  |  |                  return IPNetwork.ToIPAddress(last, this._family);
 | 
	
	
		
			
				|  | @@ -117,7 +119,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |              get
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                if (this._family == Sockets.AddressFamily.InterNetworkV6)
 | 
	
		
			
				|  |  | +                if (this._family == System.Net.Sockets.AddressFamily.InterNetworkV6)
 | 
	
		
			
				|  |  |                  {
 | 
	
		
			
				|  |  |                      return this.Total;
 | 
	
		
			
				|  |  |                  }
 | 
	
	
		
			
				|  | @@ -136,7 +138,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |              get
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -                int max = this._family == Sockets.AddressFamily.InterNetwork ? 32 : 128;
 | 
	
		
			
				|  |  | +                int max = this._family == System.Net.Sockets.AddressFamily.InterNetwork ? 32 : 128;
 | 
	
		
			
				|  |  |                  var count = BigInteger.Pow(2, (max - _cidr));
 | 
	
		
			
				|  |  |                  return count;
 | 
	
		
			
				|  |  |              }
 | 
	
	
		
			
				|  | @@ -161,7 +163,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |          IPNetwork(BigInteger ipaddress, AddressFamily family, byte cidr)
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            int maxCidr = family == Sockets.AddressFamily.InterNetwork ? 32 : 128;
 | 
	
		
			
				|  |  | +            int maxCidr = family == System.Net.Sockets.AddressFamily.InterNetwork ? 32 : 128;
 | 
	
		
			
				|  |  |              if (cidr > maxCidr)
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  |                  throw new ArgumentOutOfRangeException(nameof(cidr));
 | 
	
	
		
			
				|  | @@ -930,7 +932,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |              ///     return;
 | 
	
		
			
				|  |  |              /// }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            int maxCidr = family == Sockets.AddressFamily.InterNetwork ? 32 : 128;
 | 
	
		
			
				|  |  | +            int maxCidr = family == System.Net.Sockets.AddressFamily.InterNetwork ? 32 : 128;
 | 
	
		
			
				|  |  |              if (cidr > maxCidr)
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  |                  if (tryParse == false)
 | 
	
	
		
			
				|  | @@ -1303,7 +1305,7 @@ namespace System.Net
 | 
	
		
			
				|  |  |                  return;
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            int maxCidr = network._family == Sockets.AddressFamily.InterNetwork ? 32 : 128;
 | 
	
		
			
				|  |  | +            int maxCidr = network._family == System.Net.Sockets.AddressFamily.InterNetwork ? 32 : 128;
 | 
	
		
			
				|  |  |              if (cidr > maxCidr)
 | 
	
		
			
				|  |  |              {
 | 
	
		
			
				|  |  |                  if (trySubnet == false)
 |