///<summary>
		/// Determines whether the specified <see cref="VcsCountryBase"/> instances are considered equal.
		///</summary>
		///<param name="Object1">The first <see cref="VcsCountryBase"/> to compare.</param>
		///<param name="Object2">The second <see cref="VcsCountryBase"/> to compare. </param>
		///<returns>true if Object1 is the same instance as Object2 or if both are null references or if objA.Equals(objB) returns true; otherwise, false.</returns>
		public static bool Equals(VcsCountryBase Object1, VcsCountryBase Object2)
		{
			// both are null
			if (Object1 == null && Object2 == null)
				return true;

			// one or the other is null, but not both
			if (Object1 == null ^ Object2 == null)
				return false;

			bool equal = true;
			if (Object1.CountryName != Object2.CountryName)
				equal = false;
			if (Object1.CitizenName != null && Object2.CitizenName != null )
			{
				if (Object1.CitizenName != Object2.CitizenName)
					equal = false;
			}
			else if (Object1.CitizenName == null ^ Object1.CitizenName == null )
			{
				equal = false;
			}
			if (Object1.NationalCode != null && Object2.NationalCode != null )
			{
				if (Object1.NationalCode != Object2.NationalCode)
					equal = false;
			}
			else if (Object1.NationalCode == null ^ Object1.NationalCode == null )
			{
				equal = false;
			}
			if (Object1.CreateUser != null && Object2.CreateUser != null )
			{
				if (Object1.CreateUser != Object2.CreateUser)
					equal = false;
			}
			else if (Object1.CreateUser == null ^ Object1.CreateUser == null )
			{
				equal = false;
			}
			if (Object1.CreateDate != Object2.CreateDate)
				equal = false;
			if (Object1.IsDisabled != Object2.IsDisabled)
				equal = false;
			if (Object1.Remark != null && Object2.Remark != null )
			{
				if (Object1.Remark != Object2.Remark)
					equal = false;
			}
			else if (Object1.Remark == null ^ Object1.Remark == null )
			{
				equal = false;
			}
			return equal;
		}
		///<summary>
		/// Returns a value indicating whether this instance is equal to a specified object.
		///</summary>
		///<param name="toObject">An object to compare to this instance.</param>
		///<returns>true if toObject is a <see cref="VcsCountryBase"/> and has the same value as this instance; otherwise, false.</returns>
		public virtual bool Equals(VcsCountryBase toObject)
		{
			if (toObject == null)
				return false;
			return Equals(this, toObject);
		}