class SPPEncoder implements MALEncoder, MALListEncoder {

	@Override
	public void encodeDouble(final Double att) throws IllegalArgumentException, MALException {
		if (att == null) {
			throw new IllegalArgumentException(ILLEGAL_NULL_ARGUMENT);
		}

		long b = Double.doubleToRawLongBits(att);
		for (int i = 7; i >= 0; i--) {
			// casting long to int and losing information is explicitly wanted here
			write((int) (b >> (8 * i)));
		}
	}

	public  SPPEncoder(final OutputStream outputStream, final Map properties);

}