* real 0010 nnnn ... // # of bytes is 2^nnnn, big-endian bytes
*/
private byte[] encodeReal(double value) {
NSMutableData data = new NSMutableData();
if (value > Float.MAX_VALUE || value < Float.MIN_VALUE) {
data.appendByte((byte) typeMarker(Type.kCFBinaryPlistMarkerReal, 3));
long bits = Double.doubleToLongBits(value);
data.appendByte((byte) ((bits >>> 56) & 0xff));
data.appendByte((byte) ((bits >>> 48) & 0xff));
data.appendByte((byte) ((bits >>> 40) & 0xff));
data.appendByte((byte) ((bits >>> 32) & 0xff));