@Override
	public boolean equals(Object obj) {
		
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		
		JsonBoolean other = (JsonBoolean) obj;
		if (other.hasComments() ^ hasComments())
			return false;
		if (value != other.value)
			return false;
		
		if (hasComments() && !getComments().equals(other.getComments()))
			return false;
		
		return true;
	}