@Override
	public boolean equals (Object other){
		if(other == null)
			return false;

		if (!(other instanceof Meld)) 
			return false;

		Meld otherMeld = (Meld) other;
		if(this.isRun != otherMeld.isRun)
			return false;
		if(this.getNumTiles() != otherMeld.getNumTiles())
			return false;
		
		ArrayList<Tile> myTiles = getTiles();
		ArrayList<Tile> otherTiles = otherMeld.getTiles();
		
		for(int i=0; i<myTiles.size(); i++)
			if(!myTiles.get(i).equals(otherTiles.get(i)))
				return false;
		
		return true;
	}