@Override
	public boolean equals(Object obj)
	{
		if (obj == null)
		{
			return false;
		}
		if (obj instanceof MarketClock)
		{
			MarketClock other = (MarketClock) obj;
			for (MarketClockField f : MarketClockField.values())
			{
				if (this.hasField(f) == other.hasField(f) && this.hasField(f))
				{
					this.getField(f).equals(other.getField(f));
				}
				else if (this.hasField(f) || other.hasField(f))
				{
					return false;
				}
			}
		}
		else
		{
			return false;
		}

		return true;
	}