return (value == 0.0f || value == Float.NaN)
return (value == 0.0f || Float.isNaN(value))
	public AtomicValue convertTo(int requiredType) throws XPathException {		switch (requiredType) {			case Type.ATOMIC :			case Type.ITEM :			case Type.NUMBER :			case Type.FLOAT :				return this;			case Type.DOUBLE :				return new DoubleValue(value);			case Type.STRING :				return new StringValue(getStringValue());			case Type.DECIMAL :				return new DecimalValue(value);			case Type.INTEGER :			case Type.NON_POSITIVE_INTEGER :			case Type.NEGATIVE_INTEGER :			case Type.LONG :			case Type.INT :			case Type.SHORT :			case Type.BYTE :			case Type.NON_NEGATIVE_INTEGER :			case Type.UNSIGNED_LONG :			case Type.UNSIGNED_INT :			case Type.UNSIGNED_SHORT :			case Type.UNSIGNED_BYTE :			case Type.POSITIVE_INTEGER :				return new IntegerValue((long) value, requiredType);			case Type.BOOLEAN :				return (value == 0.0f || value == Float.NaN)					? BooleanValue.FALSE					: BooleanValue.TRUE;			default :				throw new XPathException(					"cannot convert double value '"						+ value						+ "' into "						+ Type.getTypeName(requiredType));		}	}