@Override
	public boolean equals(Object eql) {
		if (!(eql instanceof Parameters))
			return false;
		// We are dealing with an Instance of Parameters:
		boolean areBlastParamsEqual = true;
		for (String blastDb : getBlastDbParameters().keySet()) {
			for (String iterKey : getParametersOfBlastDb(blastDb).keySet()) {
				areBlastParamsEqual = areBlastParamsEqual
						&& getParametersOfBlastDb(blastDb).get(iterKey).equals(
								((Parameters) eql).getParametersOfBlastDb(
										blastDb).get(iterKey));
			}
		}
		return areBlastParamsEqual
				&& ((Parameters) eql).getTokenScoreBitScoreWeight().equals(
						this.getTokenScoreBitScoreWeight())
				&& ((Parameters) eql).getTokenScoreDatabaseScoreWeight()
						.equals(this.getTokenScoreDatabaseScoreWeight())
				&& ((Parameters) eql).getTokenScoreOverlapScoreWeight().equals(
						this.getTokenScoreOverlapScoreWeight())
				&& ((Parameters) eql).getDescriptionScorePatternFactorWeight()
						.equals(this.getDescriptionScorePatternFactorWeight());
	}