/// <summary>
        /// Returns true if objects are equal
        /// </summary>
        public bool Equals(ServerSchedulerHints input)
        {
            if (input == null)
            {
                return(false);
            }

            return
                ((
                     this.Group == input.Group ||
                     this.Group != null &&
                     input.Group != null &&
                     this.Group.SequenceEqual(input.Group)
                     ) &&
                 (
                     this.Tenancy == input.Tenancy ||
                     this.Tenancy != null &&
                     input.Tenancy != null &&
                     this.Tenancy.SequenceEqual(input.Tenancy)
                 ) &&
                 (
                     this.DedicatedHostId == input.DedicatedHostId ||
                     this.DedicatedHostId != null &&
                     input.DedicatedHostId != null &&
                     this.DedicatedHostId.SequenceEqual(input.DedicatedHostId)
                 ));
        }
        /// <summary>
        /// Returns true if objects are equal
        /// </summary>
        public bool Equals(ServerSchedulerHints input)
        {
            if (input == null)
            {
                return(false);
            }

            return
                ((
                     this.Group == input.Group ||
                     this.Group != null &&
                     input.Group != null &&
                     this.Group.SequenceEqual(input.Group)
                     ) &&
                 (
                     this.DifferentHost == input.DifferentHost ||
                     this.DifferentHost != null &&
                     input.DifferentHost != null &&
                     this.DifferentHost.SequenceEqual(input.DifferentHost)
                 ) &&
                 (
                     this.SameHost == input.SameHost ||
                     this.SameHost != null &&
                     input.SameHost != null &&
                     this.SameHost.SequenceEqual(input.SameHost)
                 ) &&
                 (
                     this.Cidr == input.Cidr ||
                     this.Cidr != null &&
                     input.Cidr != null &&
                     this.Cidr.SequenceEqual(input.Cidr)
                 ) &&
                 (
                     this.BuildNearHostIp == input.BuildNearHostIp ||
                     this.BuildNearHostIp != null &&
                     input.BuildNearHostIp != null &&
                     this.BuildNearHostIp.SequenceEqual(input.BuildNearHostIp)
                 ));
        }