{
    "description": "Double type",
    "bson_type": "0x01",
    "test_key": "d",
    "valid": [
        {
            "description": "-0.0",
            "canonical_bson": "10000000016400000000000000008000",
            "canonical_extjson": "{\"d\" : {\"$numberDouble\": \"-0.0\"}}",
            "relaxed_extjson": "{\"d\" : -0.0}"
        },
        {
            "description": "NaN",
            "canonical_bson": "10000000016400000000000000F87F00",
            "canonical_extjson": "{\"d\": {\"$numberDouble\": \"NaN\"}}",
            "relaxed_extjson": "{\"d\": {\"$numberDouble\": \"NaN\"}}",
            "lossy": true
        },
        {
            "description": "NaN with payload",
            "canonical_bson": "10000000016400120000000000F87F00",
            "canonical_extjson": "{\"d\": {\"$numberDouble\": \"NaN\"}}",
            "relaxed_extjson": "{\"d\": {\"$numberDouble\": \"NaN\"}}",
            "lossy": true
        },
        {
            "description": "Inf",
            "canonical_bson": "10000000016400000000000000F07F00",
            "canonical_extjson": "{\"d\": {\"$numberDouble\": \"Infinity\"}}",
            "relaxed_extjson": "{\"d\": {\"$numberDouble\": \"Infinity\"}}"
        },
        {
            "description": "-Inf",
            "canonical_bson": "10000000016400000000000000F0FF00",
            "canonical_extjson": "{\"d\": {\"$numberDouble\": \"-Infinity\"}}",
            "relaxed_extjson": "{\"d\": {\"$numberDouble\": \"-Infinity\"}}"
        }
    ],
    "decodeErrors": [
        {
            "description": "double truncated",
            "bson": "0B0000000164000000F03F00"
        }
    ]
}
