1
0
mirror of https://github.com/schollz/cowyo.git synced 2023-08-10 21:13:00 +03:00
cowyo/vendor/gopkg.in/mgo.v2/bson/decimal_test.go
2017-10-03 14:43:55 -04:00

4110 lines
183 KiB
Go

// BSON library for Go
//
// Copyright (c) 2010-2012 - Gustavo Niemeyer <gustavo@niemeyer.net>
//
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions are met:
//
// 1. Redistributions of source code must retain the above copyright notice, this
// list of conditions and the following disclaimer.
// 2. Redistributions in binary form must reproduce the above copyright notice,
// this list of conditions and the following disclaimer in the documentation
// and/or other materials provided with the distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
// WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
// ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
package bson_test
import (
"encoding/hex"
"encoding/json"
"fmt"
"regexp"
"strings"
"gopkg.in/mgo.v2/bson"
. "gopkg.in/check.v1"
)
// --------------------------------------------------------------------------
// Decimal tests
type decimalTests struct {
Valid []struct {
Description string `json:"description"`
BSON string `json:"bson"`
CanonicalBSON string `json:"canonical_bson"`
ExtJSON string `json:"extjson"`
CanonicalExtJSON string `json:"canonical_extjson"`
Lossy bool `json:"lossy"`
} `json:"valid"`
ParseErrors []struct {
Description string `json:"description"`
String string `json:"string"`
} `json:"parseErrors"`
}
func extJSONRepr(s string) string {
var value struct {
D struct {
Repr string `json:"$numberDecimal"`
} `json:"d"`
}
err := json.Unmarshal([]byte(s), &value)
if err != nil {
panic(err)
}
return value.D.Repr
}
func (s *S) TestDecimalTests(c *C) {
// These also conform to the spec and are used by Go elsewhere.
// (e.g. math/big won't parse "Infinity").
goStr := func(s string) string {
switch s {
case "Infinity":
return "Inf"
case "-Infinity":
return "-Inf"
}
return s
}
for _, testEntry := range decimalTestsJSON {
testFile := testEntry.file
var tests decimalTests
err := json.Unmarshal([]byte(testEntry.json), &tests)
c.Assert(err, IsNil)
for _, test := range tests.Valid {
c.Logf("Running %s test: %s", testFile, test.Description)
test.BSON = strings.ToLower(test.BSON)
// Unmarshal value from BSON data.
bsonData, err := hex.DecodeString(test.BSON)
var bsonValue struct{ D interface{} }
err = bson.Unmarshal(bsonData, &bsonValue)
c.Assert(err, IsNil)
dec128, ok := bsonValue.D.(bson.Decimal128)
c.Assert(ok, Equals, true)
// Extract ExtJSON representations (canonical and not).
extjRepr := extJSONRepr(test.ExtJSON)
cextjRepr := extjRepr
if test.CanonicalExtJSON != "" {
cextjRepr = extJSONRepr(test.CanonicalExtJSON)
}
wantRepr := goStr(cextjRepr)
// Generate canonical representation.
c.Assert(dec128.String(), Equals, wantRepr)
// Parse original canonical representation.
parsed, err := bson.ParseDecimal128(cextjRepr)
c.Assert(err, IsNil)
c.Assert(parsed.String(), Equals, wantRepr)
// Parse non-canonical representation.
parsed, err = bson.ParseDecimal128(extjRepr)
c.Assert(err, IsNil)
c.Assert(parsed.String(), Equals, wantRepr)
// Parse Go canonical representation (Inf vs. Infinity).
parsed, err = bson.ParseDecimal128(wantRepr)
c.Assert(err, IsNil)
c.Assert(parsed.String(), Equals, wantRepr)
// Marshal original value back into BSON data.
data, err := bson.Marshal(bsonValue)
c.Assert(err, IsNil)
c.Assert(hex.EncodeToString(data), Equals, test.BSON)
if test.Lossy {
continue
}
// Marshal the parsed canonical representation.
var parsedValue struct{ D interface{} }
parsedValue.D = parsed
data, err = bson.Marshal(parsedValue)
c.Assert(err, IsNil)
c.Assert(hex.EncodeToString(data), Equals, test.BSON)
}
for _, test := range tests.ParseErrors {
c.Logf("Running %s parse error test: %s (string %q)", testFile, test.Description, test.String)
_, err := bson.ParseDecimal128(test.String)
quoted := regexp.QuoteMeta(fmt.Sprintf("%q", test.String))
c.Assert(err, ErrorMatches, `cannot parse `+quoted+` as a decimal128`)
}
}
}
const decBenchNum = "9.999999999999999999999999999999999E+6144"
func (s *S) BenchmarkDecimal128String(c *C) {
d, err := bson.ParseDecimal128(decBenchNum)
c.Assert(err, IsNil)
c.Assert(d.String(), Equals, decBenchNum)
c.ResetTimer()
for i := 0; i < c.N; i++ {
d.String()
}
}
func (s *S) BenchmarkDecimal128Parse(c *C) {
var err error
c.ResetTimer()
for i := 0; i < c.N; i++ {
_, err = bson.ParseDecimal128(decBenchNum)
}
if err != nil {
panic(err)
}
}
var decimalTestsJSON = []struct{ file, json string }{
{"decimal128-1.json", `
{
"description": "Decimal128",
"bson_type": "0x13",
"test_key": "d",
"valid": [
{
"description": "Special - Canonical NaN",
"bson": "180000001364000000000000000000000000000000007C00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}"
},
{
"description": "Special - Negative NaN",
"bson": "18000000136400000000000000000000000000000000FC00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}",
"lossy": true
},
{
"description": "Special - Negative NaN",
"bson": "18000000136400000000000000000000000000000000FC00",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-NaN\"}}",
"lossy": true
},
{
"description": "Special - Canonical SNaN",
"bson": "180000001364000000000000000000000000000000007E00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}",
"lossy": true
},
{
"description": "Special - Negative SNaN",
"bson": "18000000136400000000000000000000000000000000FE00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}",
"lossy": true
},
{
"description": "Special - NaN with a payload",
"bson": "180000001364001200000000000000000000000000007E00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}",
"lossy": true
},
{
"description": "Special - Canonical Positive Infinity",
"bson": "180000001364000000000000000000000000000000007800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"Infinity\"}}"
},
{
"description": "Special - Canonical Negative Infinity",
"bson": "18000000136400000000000000000000000000000000F800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-Infinity\"}}"
},
{
"description": "Special - Invalid representation treated as 0",
"bson": "180000001364000000000000000000000000000000106C00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}",
"lossy": true
},
{
"description": "Special - Invalid representation treated as -0",
"bson": "18000000136400DCBA9876543210DEADBEEF00000010EC00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0\"}}",
"lossy": true
},
{
"description": "Special - Invalid representation treated as 0E3",
"bson": "18000000136400FFFFFFFFFFFFFFFFFFFFFFFFFFFF116C00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+3\"}}",
"lossy": true
},
{
"description": "Regular - Adjusted Exponent Limit",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3CF22F00",
"extjson": "{\"d\": { \"$numberDecimal\": \"0.000001234567890123456789012345678901234\" }}"
},
{
"description": "Regular - Smallest",
"bson": "18000000136400D204000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.001234\"}}"
},
{
"description": "Regular - Smallest with Trailing Zeros",
"bson": "1800000013640040EF5A07000000000000000000002A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00123400000\"}}"
},
{
"description": "Regular - 0.1",
"bson": "1800000013640001000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1\"}}"
},
{
"description": "Regular - 0.1234567890123456789012345678901234",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3CFC2F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1234567890123456789012345678901234\"}}"
},
{
"description": "Regular - 0",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "Regular - -0",
"bson": "18000000136400000000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0\"}}"
},
{
"description": "Regular - -0.0",
"bson": "1800000013640000000000000000000000000000003EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0\"}}"
},
{
"description": "Regular - 2",
"bson": "180000001364000200000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"2\"}}"
},
{
"description": "Regular - 2.000",
"bson": "18000000136400D0070000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"2.000\"}}"
},
{
"description": "Regular - Largest",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3C403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1234567890123456789012345678901234\"}}"
},
{
"description": "Scientific - Tiniest",
"bson": "18000000136400FFFFFFFF638E8D37C087ADBE09ED010000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"9.999999999999999999999999999999999E-6143\"}}"
},
{
"description": "Scientific - Tiny",
"bson": "180000001364000100000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-6176\"}}"
},
{
"description": "Scientific - Negative Tiny",
"bson": "180000001364000100000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1E-6176\"}}"
},
{
"description": "Scientific - Adjusted Exponent Limit",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3CF02F00",
"extjson": "{\"d\": { \"$numberDecimal\": \"1.234567890123456789012345678901234E-7\" }}"
},
{
"description": "Scientific - Fractional",
"bson": "1800000013640064000000000000000000000000002CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.00E-8\"}}"
},
{
"description": "Scientific - 0 with Exponent",
"bson": "180000001364000000000000000000000000000000205F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6000\"}}"
},
{
"description": "Scientific - 0 with Negative Exponent",
"bson": "1800000013640000000000000000000000000000007A2B00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-611\"}}"
},
{
"description": "Scientific - No Decimal with Signed Exponent",
"bson": "180000001364000100000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+3\"}}"
},
{
"description": "Scientific - Trailing Zero",
"bson": "180000001364001A04000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.050E+4\"}}"
},
{
"description": "Scientific - With Decimal",
"bson": "180000001364006900000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.05E+3\"}}"
},
{
"description": "Scientific - Full",
"bson": "18000000136400FFFFFFFFFFFFFFFFFFFFFFFFFFFF403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"5192296858534827628530496329220095\"}}"
},
{
"description": "Scientific - Large",
"bson": "18000000136400000000000A5BC138938D44C64D31FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000000E+6144\"}}"
},
{
"description": "Scientific - Largest",
"bson": "18000000136400FFFFFFFF638E8D37C087ADBE09EDFF5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"9.999999999999999999999999999999999E+6144\"}}"
},
{
"description": "Non-Canonical Parsing - Exponent Normalization",
"bson": "1800000013640064000000000000000000000000002CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-100E-10\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.00E-8\"}}"
},
{
"description": "Non-Canonical Parsing - Unsigned Positive Exponent",
"bson": "180000001364000100000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+3\"}}"
},
{
"description": "Non-Canonical Parsing - Lowercase Exponent Identifier",
"bson": "180000001364000100000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1e+3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+3\"}}"
},
{
"description": "Non-Canonical Parsing - Long Significand with Exponent",
"bson": "1800000013640079D9E0F9763ADA429D0200000000583000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12345689012345789012345E+12\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.2345689012345789012345E+34\"}}"
},
{
"description": "Non-Canonical Parsing - Positive Sign",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3C403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+1234567890123456789012345678901234\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1234567890123456789012345678901234\"}}"
},
{
"description": "Non-Canonical Parsing - Long Decimal String",
"bson": "180000001364000100000000000000000000000000722800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \".000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-999\"}}"
},
{
"description": "Non-Canonical Parsing - nan",
"bson": "180000001364000000000000000000000000000000007C00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"nan\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}"
},
{
"description": "Non-Canonical Parsing - nAn",
"bson": "180000001364000000000000000000000000000000007C00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"nAn\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}"
},
{
"description": "Non-Canonical Parsing - +infinity",
"bson": "180000001364000000000000000000000000000000007800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+infinity\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - infinity",
"bson": "180000001364000000000000000000000000000000007800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"infinity\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - infiniTY",
"bson": "180000001364000000000000000000000000000000007800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"infiniTY\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - inf",
"bson": "180000001364000000000000000000000000000000007800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"inf\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - inF",
"bson": "180000001364000000000000000000000000000000007800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"inF\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - -infinity",
"bson": "18000000136400000000000000000000000000000000F800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-infinity\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - -infiniTy",
"bson": "18000000136400000000000000000000000000000000F800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-infiniTy\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - -Inf",
"bson": "18000000136400000000000000000000000000000000F800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-Infinity\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - -inf",
"bson": "18000000136400000000000000000000000000000000F800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-inf\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-Infinity\"}}"
},
{
"description": "Non-Canonical Parsing - -inF",
"bson": "18000000136400000000000000000000000000000000F800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-inF\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-Infinity\"}}"
},
{
"description": "Rounded Subnormal number",
"bson": "180000001364000100000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10E-6177\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-6176\"}}"
},
{
"description": "Clamped",
"bson": "180000001364000a00000000000000000000000000fe5f00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E6112\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+6112\"}}"
},
{
"description": "Exact rounding",
"bson": "18000000136400000000000a5bc138938d44c64d31cc3700",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000000E+999\"}}"
}
]
}
`},
{"decimal128-2.json", `
{
"description": "Decimal128",
"bson_type": "0x13",
"test_key": "d",
"valid": [
{
"description": "[decq021] Normality",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3C40B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1234567890123456789012345678901234\"}}"
},
{
"description": "[decq823] values around [u]int32 edges (zeros done earlier)",
"bson": "18000000136400010000800000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-2147483649\"}}"
},
{
"description": "[decq822] values around [u]int32 edges (zeros done earlier)",
"bson": "18000000136400000000800000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-2147483648\"}}"
},
{
"description": "[decq821] values around [u]int32 edges (zeros done earlier)",
"bson": "18000000136400FFFFFF7F0000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-2147483647\"}}"
},
{
"description": "[decq820] values around [u]int32 edges (zeros done earlier)",
"bson": "18000000136400FEFFFF7F0000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-2147483646\"}}"
},
{
"description": "[decq152] fold-downs (more below)",
"bson": "18000000136400393000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-12345\"}}"
},
{
"description": "[decq154] fold-downs (more below)",
"bson": "18000000136400D20400000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1234\"}}"
},
{
"description": "[decq006] derivative canonical plain strings",
"bson": "18000000136400EE0200000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-750\"}}"
},
{
"description": "[decq164] fold-downs (more below)",
"bson": "1800000013640039300000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-123.45\"}}"
},
{
"description": "[decq156] fold-downs (more below)",
"bson": "180000001364007B0000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-123\"}}"
},
{
"description": "[decq008] derivative canonical plain strings",
"bson": "18000000136400EE020000000000000000000000003EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-75.0\"}}"
},
{
"description": "[decq158] fold-downs (more below)",
"bson": "180000001364000C0000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-12\"}}"
},
{
"description": "[decq122] Nmax and similar",
"bson": "18000000136400FFFFFFFF638E8D37C087ADBE09EDFFDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-9.999999999999999999999999999999999E+6144\"}}"
},
{
"description": "[decq002] (mostly derived from the Strawman 4 document and examples)",
"bson": "18000000136400EE020000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-7.50\"}}"
},
{
"description": "[decq004] derivative canonical plain strings",
"bson": "18000000136400EE0200000000000000000000000042B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-7.50E+3\"}}"
},
{
"description": "[decq018] derivative canonical plain strings",
"bson": "18000000136400EE020000000000000000000000002EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-7.50E-7\"}}"
},
{
"description": "[decq125] Nmax and similar",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3CFEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.234567890123456789012345678901234E+6144\"}}"
},
{
"description": "[decq131] fold-downs (more below)",
"bson": "18000000136400000000807F1BCF85B27059C8A43CFEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.230000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq162] fold-downs (more below)",
"bson": "180000001364007B000000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.23\"}}"
},
{
"description": "[decq176] Nmin and below",
"bson": "18000000136400010000000A5BC138938D44C64D31008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.000000000000000000000000000000001E-6143\"}}"
},
{
"description": "[decq174] Nmin and below",
"bson": "18000000136400000000000A5BC138938D44C64D31008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.000000000000000000000000000000000E-6143\"}}"
},
{
"description": "[decq133] fold-downs (more below)",
"bson": "18000000136400000000000A5BC138938D44C64D31FEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.000000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq160] fold-downs (more below)",
"bson": "18000000136400010000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1\"}}"
},
{
"description": "[decq172] Nmin and below",
"bson": "180000001364000100000000000000000000000000428000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1E-6143\"}}"
},
{
"description": "[decq010] derivative canonical plain strings",
"bson": "18000000136400EE020000000000000000000000003AB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.750\"}}"
},
{
"description": "[decq012] derivative canonical plain strings",
"bson": "18000000136400EE0200000000000000000000000038B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0750\"}}"
},
{
"description": "[decq014] derivative canonical plain strings",
"bson": "18000000136400EE0200000000000000000000000034B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000750\"}}"
},
{
"description": "[decq016] derivative canonical plain strings",
"bson": "18000000136400EE0200000000000000000000000030B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00000750\"}}"
},
{
"description": "[decq404] zeros",
"bson": "180000001364000000000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-6176\"}}"
},
{
"description": "[decq424] negative zeros",
"bson": "180000001364000000000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-6176\"}}"
},
{
"description": "[decq407] zeros",
"bson": "1800000013640000000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00\"}}"
},
{
"description": "[decq427] negative zeros",
"bson": "1800000013640000000000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00\"}}"
},
{
"description": "[decq409] zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[decq428] negative zeros",
"bson": "18000000136400000000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0\"}}"
},
{
"description": "[decq700] Selected DPD codes",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[decq406] zeros",
"bson": "1800000013640000000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00\"}}"
},
{
"description": "[decq426] negative zeros",
"bson": "1800000013640000000000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00\"}}"
},
{
"description": "[decq410] zeros",
"bson": "180000001364000000000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+3\"}}"
},
{
"description": "[decq431] negative zeros",
"bson": "18000000136400000000000000000000000000000046B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+3\"}}"
},
{
"description": "[decq419] clamped zeros...",
"bson": "180000001364000000000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6111\"}}"
},
{
"description": "[decq432] negative zeros",
"bson": "180000001364000000000000000000000000000000FEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+6111\"}}"
},
{
"description": "[decq405] zeros",
"bson": "180000001364000000000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-6176\"}}"
},
{
"description": "[decq425] negative zeros",
"bson": "180000001364000000000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-6176\"}}"
},
{
"description": "[decq508] Specials",
"bson": "180000001364000000000000000000000000000000007800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"Infinity\"}}"
},
{
"description": "[decq528] Specials",
"bson": "18000000136400000000000000000000000000000000F800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-Infinity\"}}"
},
{
"description": "[decq541] Specials",
"bson": "180000001364000000000000000000000000000000007C00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"NaN\"}}"
},
{
"description": "[decq074] Nmin and below",
"bson": "18000000136400000000000A5BC138938D44C64D31000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000000E-6143\"}}"
},
{
"description": "[decq602] fold-down full sequence",
"bson": "18000000136400000000000A5BC138938D44C64D31FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq604] fold-down full sequence",
"bson": "180000001364000000000081EFAC855B416D2DEE04FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000000000000E+6143\"}}"
},
{
"description": "[decq606] fold-down full sequence",
"bson": "1800000013640000000080264B91C02220BE377E00FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000000000000000E+6142\"}}"
},
{
"description": "[decq608] fold-down full sequence",
"bson": "1800000013640000000040EAED7446D09C2C9F0C00FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000E+6141\"}}"
},
{
"description": "[decq610] fold-down full sequence",
"bson": "18000000136400000000A0CA17726DAE0F1E430100FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000000000E+6140\"}}"
},
{
"description": "[decq612] fold-down full sequence",
"bson": "18000000136400000000106102253E5ECE4F200000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000000000000E+6139\"}}"
},
{
"description": "[decq614] fold-down full sequence",
"bson": "18000000136400000000E83C80D09F3C2E3B030000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000E+6138\"}}"
},
{
"description": "[decq616] fold-down full sequence",
"bson": "18000000136400000000E4D20CC8DCD2B752000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000000E+6137\"}}"
},
{
"description": "[decq618] fold-down full sequence",
"bson": "180000001364000000004A48011416954508000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000000000E+6136\"}}"
},
{
"description": "[decq620] fold-down full sequence",
"bson": "18000000136400000000A1EDCCCE1BC2D300000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000E+6135\"}}"
},
{
"description": "[decq622] fold-down full sequence",
"bson": "18000000136400000080F64AE1C7022D1500000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000E+6134\"}}"
},
{
"description": "[decq624] fold-down full sequence",
"bson": "18000000136400000040B2BAC9E0191E0200000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000000E+6133\"}}"
},
{
"description": "[decq626] fold-down full sequence",
"bson": "180000001364000000A0DEC5ADC935360000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000E+6132\"}}"
},
{
"description": "[decq628] fold-down full sequence",
"bson": "18000000136400000010632D5EC76B050000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000E+6131\"}}"
},
{
"description": "[decq630] fold-down full sequence",
"bson": "180000001364000000E8890423C78A000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000E+6130\"}}"
},
{
"description": "[decq632] fold-down full sequence",
"bson": "18000000136400000064A7B3B6E00D000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000E+6129\"}}"
},
{
"description": "[decq634] fold-down full sequence",
"bson": "1800000013640000008A5D78456301000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000E+6128\"}}"
},
{
"description": "[decq636] fold-down full sequence",
"bson": "180000001364000000C16FF2862300000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000E+6127\"}}"
},
{
"description": "[decq638] fold-down full sequence",
"bson": "180000001364000080C6A47E8D0300000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000E+6126\"}}"
},
{
"description": "[decq640] fold-down full sequence",
"bson": "1800000013640000407A10F35A0000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000E+6125\"}}"
},
{
"description": "[decq642] fold-down full sequence",
"bson": "1800000013640000A0724E18090000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000E+6124\"}}"
},
{
"description": "[decq644] fold-down full sequence",
"bson": "180000001364000010A5D4E8000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000E+6123\"}}"
},
{
"description": "[decq646] fold-down full sequence",
"bson": "1800000013640000E8764817000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000E+6122\"}}"
},
{
"description": "[decq648] fold-down full sequence",
"bson": "1800000013640000E40B5402000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000E+6121\"}}"
},
{
"description": "[decq650] fold-down full sequence",
"bson": "1800000013640000CA9A3B00000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000E+6120\"}}"
},
{
"description": "[decq652] fold-down full sequence",
"bson": "1800000013640000E1F50500000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000E+6119\"}}"
},
{
"description": "[decq654] fold-down full sequence",
"bson": "180000001364008096980000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000E+6118\"}}"
},
{
"description": "[decq656] fold-down full sequence",
"bson": "1800000013640040420F0000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000E+6117\"}}"
},
{
"description": "[decq658] fold-down full sequence",
"bson": "18000000136400A086010000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000E+6116\"}}"
},
{
"description": "[decq660] fold-down full sequence",
"bson": "180000001364001027000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000E+6115\"}}"
},
{
"description": "[decq662] fold-down full sequence",
"bson": "18000000136400E803000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000E+6114\"}}"
},
{
"description": "[decq664] fold-down full sequence",
"bson": "180000001364006400000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00E+6113\"}}"
},
{
"description": "[decq666] fold-down full sequence",
"bson": "180000001364000A00000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+6112\"}}"
},
{
"description": "[decq060] fold-downs (more below)",
"bson": "180000001364000100000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1\"}}"
},
{
"description": "[decq670] fold-down full sequence",
"bson": "180000001364000100000000000000000000000000FC5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6110\"}}"
},
{
"description": "[decq668] fold-down full sequence",
"bson": "180000001364000100000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6111\"}}"
},
{
"description": "[decq072] Nmin and below",
"bson": "180000001364000100000000000000000000000000420000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-6143\"}}"
},
{
"description": "[decq076] Nmin and below",
"bson": "18000000136400010000000A5BC138938D44C64D31000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000001E-6143\"}}"
},
{
"description": "[decq036] fold-downs (more below)",
"bson": "18000000136400000000807F1BCF85B27059C8A43CFE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.230000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq062] fold-downs (more below)",
"bson": "180000001364007B000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.23\"}}"
},
{
"description": "[decq034] Nmax and similar",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3CFE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.234567890123456789012345678901234E+6144\"}}"
},
{
"description": "[decq441] exponent lengths",
"bson": "180000001364000700000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7\"}}"
},
{
"description": "[decq449] exponent lengths",
"bson": "1800000013640007000000000000000000000000001E5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+5999\"}}"
},
{
"description": "[decq447] exponent lengths",
"bson": "1800000013640007000000000000000000000000000E3800",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+999\"}}"
},
{
"description": "[decq445] exponent lengths",
"bson": "180000001364000700000000000000000000000000063100",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+99\"}}"
},
{
"description": "[decq443] exponent lengths",
"bson": "180000001364000700000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+9\"}}"
},
{
"description": "[decq842] VG testcase",
"bson": "180000001364000000FED83F4E7C9FE4E269E38A5BCD1700",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7.049000000000010795488000000000000E-3097\"}}"
},
{
"description": "[decq841] VG testcase",
"bson": "180000001364000000203B9DB5056F000000000000002400",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"8.000000000000000000E-1550\"}}"
},
{
"description": "[decq840] VG testcase",
"bson": "180000001364003C17258419D710C42F0000000000002400",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"8.81125000000001349436E-1548\"}}"
},
{
"description": "[decq701] Selected DPD codes",
"bson": "180000001364000900000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"9\"}}"
},
{
"description": "[decq032] Nmax and similar",
"bson": "18000000136400FFFFFFFF638E8D37C087ADBE09EDFF5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"9.999999999999999999999999999999999E+6144\"}}"
},
{
"description": "[decq702] Selected DPD codes",
"bson": "180000001364000A00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10\"}}"
},
{
"description": "[decq057] fold-downs (more below)",
"bson": "180000001364000C00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12\"}}"
},
{
"description": "[decq703] Selected DPD codes",
"bson": "180000001364001300000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"19\"}}"
},
{
"description": "[decq704] Selected DPD codes",
"bson": "180000001364001400000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"20\"}}"
},
{
"description": "[decq705] Selected DPD codes",
"bson": "180000001364001D00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"29\"}}"
},
{
"description": "[decq706] Selected DPD codes",
"bson": "180000001364001E00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"30\"}}"
},
{
"description": "[decq707] Selected DPD codes",
"bson": "180000001364002700000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"39\"}}"
},
{
"description": "[decq708] Selected DPD codes",
"bson": "180000001364002800000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"40\"}}"
},
{
"description": "[decq709] Selected DPD codes",
"bson": "180000001364003100000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"49\"}}"
},
{
"description": "[decq710] Selected DPD codes",
"bson": "180000001364003200000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"50\"}}"
},
{
"description": "[decq711] Selected DPD codes",
"bson": "180000001364003B00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"59\"}}"
},
{
"description": "[decq712] Selected DPD codes",
"bson": "180000001364003C00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"60\"}}"
},
{
"description": "[decq713] Selected DPD codes",
"bson": "180000001364004500000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"69\"}}"
},
{
"description": "[decq714] Selected DPD codes",
"bson": "180000001364004600000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"70\"}}"
},
{
"description": "[decq715] Selected DPD codes",
"bson": "180000001364004700000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"71\"}}"
},
{
"description": "[decq716] Selected DPD codes",
"bson": "180000001364004800000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"72\"}}"
},
{
"description": "[decq717] Selected DPD codes",
"bson": "180000001364004900000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"73\"}}"
},
{
"description": "[decq718] Selected DPD codes",
"bson": "180000001364004A00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"74\"}}"
},
{
"description": "[decq719] Selected DPD codes",
"bson": "180000001364004B00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"75\"}}"
},
{
"description": "[decq720] Selected DPD codes",
"bson": "180000001364004C00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"76\"}}"
},
{
"description": "[decq721] Selected DPD codes",
"bson": "180000001364004D00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"77\"}}"
},
{
"description": "[decq722] Selected DPD codes",
"bson": "180000001364004E00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"78\"}}"
},
{
"description": "[decq723] Selected DPD codes",
"bson": "180000001364004F00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"79\"}}"
},
{
"description": "[decq056] fold-downs (more below)",
"bson": "180000001364007B00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"123\"}}"
},
{
"description": "[decq064] fold-downs (more below)",
"bson": "1800000013640039300000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"123.45\"}}"
},
{
"description": "[decq732] Selected DPD codes",
"bson": "180000001364000802000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"520\"}}"
},
{
"description": "[decq733] Selected DPD codes",
"bson": "180000001364000902000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"521\"}}"
},
{
"description": "[decq740] DPD: one of each of the huffman groups",
"bson": "180000001364000903000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"777\"}}"
},
{
"description": "[decq741] DPD: one of each of the huffman groups",
"bson": "180000001364000A03000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"778\"}}"
},
{
"description": "[decq742] DPD: one of each of the huffman groups",
"bson": "180000001364001303000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"787\"}}"
},
{
"description": "[decq746] DPD: one of each of the huffman groups",
"bson": "180000001364001F03000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"799\"}}"
},
{
"description": "[decq743] DPD: one of each of the huffman groups",
"bson": "180000001364006D03000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"877\"}}"
},
{
"description": "[decq753] DPD all-highs cases (includes the 24 redundant codes)",
"bson": "180000001364007803000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"888\"}}"
},
{
"description": "[decq754] DPD all-highs cases (includes the 24 redundant codes)",
"bson": "180000001364007903000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"889\"}}"
},
{
"description": "[decq760] DPD all-highs cases (includes the 24 redundant codes)",
"bson": "180000001364008203000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"898\"}}"
},
{
"description": "[decq764] DPD all-highs cases (includes the 24 redundant codes)",
"bson": "180000001364008303000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"899\"}}"
},
{
"description": "[decq745] DPD: one of each of the huffman groups",
"bson": "18000000136400D303000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"979\"}}"
},
{
"description": "[decq770] DPD all-highs cases (includes the 24 redundant codes)",
"bson": "18000000136400DC03000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"988\"}}"
},
{
"description": "[decq774] DPD all-highs cases (includes the 24 redundant codes)",
"bson": "18000000136400DD03000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"989\"}}"
},
{
"description": "[decq730] Selected DPD codes",
"bson": "18000000136400E203000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"994\"}}"
},
{
"description": "[decq731] Selected DPD codes",
"bson": "18000000136400E303000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"995\"}}"
},
{
"description": "[decq744] DPD: one of each of the huffman groups",
"bson": "18000000136400E503000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"997\"}}"
},
{
"description": "[decq780] DPD all-highs cases (includes the 24 redundant codes)",
"bson": "18000000136400E603000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"998\"}}"
},
{
"description": "[decq787] DPD all-highs cases (includes the 24 redundant codes)",
"bson": "18000000136400E703000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"999\"}}"
},
{
"description": "[decq053] fold-downs (more below)",
"bson": "18000000136400D204000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1234\"}}"
},
{
"description": "[decq052] fold-downs (more below)",
"bson": "180000001364003930000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12345\"}}"
},
{
"description": "[decq792] Miscellaneous (testers' queries, etc.)",
"bson": "180000001364003075000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"30000\"}}"
},
{
"description": "[decq793] Miscellaneous (testers' queries, etc.)",
"bson": "1800000013640090940D0000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"890000\"}}"
},
{
"description": "[decq824] values around [u]int32 edges (zeros done earlier)",
"bson": "18000000136400FEFFFF7F00000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"2147483646\"}}"
},
{
"description": "[decq825] values around [u]int32 edges (zeros done earlier)",
"bson": "18000000136400FFFFFF7F00000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"2147483647\"}}"
},
{
"description": "[decq826] values around [u]int32 edges (zeros done earlier)",
"bson": "180000001364000000008000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"2147483648\"}}"
},
{
"description": "[decq827] values around [u]int32 edges (zeros done earlier)",
"bson": "180000001364000100008000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"2147483649\"}}"
},
{
"description": "[decq828] values around [u]int32 edges (zeros done earlier)",
"bson": "18000000136400FEFFFFFF00000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"4294967294\"}}"
},
{
"description": "[decq829] values around [u]int32 edges (zeros done earlier)",
"bson": "18000000136400FFFFFFFF00000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"4294967295\"}}"
},
{
"description": "[decq830] values around [u]int32 edges (zeros done earlier)",
"bson": "180000001364000000000001000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"4294967296\"}}"
},
{
"description": "[decq831] values around [u]int32 edges (zeros done earlier)",
"bson": "180000001364000100000001000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"4294967297\"}}"
},
{
"description": "[decq022] Normality",
"bson": "18000000136400C7711CC7B548F377DC80A131C836403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1111111111111111111111111111111111\"}}"
},
{
"description": "[decq020] Normality",
"bson": "18000000136400F2AF967ED05C82DE3297FF6FDE3C403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1234567890123456789012345678901234\"}}"
},
{
"description": "[decq550] Specials",
"bson": "18000000136400FFFFFFFF638E8D37C087ADBE09ED413000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"9999999999999999999999999999999999\"}}"
}
]
}
`},
{"decimal128-3.json", `
{
"description": "Decimal128",
"bson_type": "0x13",
"test_key": "d",
"valid": [
{
"description": "[basx066] strings without E cannot generate E in result",
"bson": "18000000136400185C0ACE0000000000000000000038B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-00345678.5432\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-345678.5432\"}}"
},
{
"description": "[basx065] strings without E cannot generate E in result",
"bson": "18000000136400185C0ACE0000000000000000000038B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0345678.5432\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-345678.5432\"}}"
},
{
"description": "[basx064] strings without E cannot generate E in result",
"bson": "18000000136400185C0ACE0000000000000000000038B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-345678.5432\"}}"
},
{
"description": "[basx041] strings without E cannot generate E in result",
"bson": "180000001364004C0000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-76\"}}"
},
{
"description": "[basx027] conform to rules and exponent will be in permitted range).",
"bson": "180000001364000F270000000000000000000000003AB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-9.999\"}}"
},
{
"description": "[basx026] conform to rules and exponent will be in permitted range).",
"bson": "180000001364009F230000000000000000000000003AB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-9.119\"}}"
},
{
"description": "[basx025] conform to rules and exponent will be in permitted range).",
"bson": "180000001364008F030000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-9.11\"}}"
},
{
"description": "[basx024] conform to rules and exponent will be in permitted range).",
"bson": "180000001364005B000000000000000000000000003EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-9.1\"}}"
},
{
"description": "[dqbsr531] negatives (Rounded)",
"bson": "1800000013640099761CC7B548F377DC80A131C836FEAF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.1111111111111111111111111111123450\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.111111111111111111111111111112345\"}}"
},
{
"description": "[basx022] conform to rules and exponent will be in permitted range).",
"bson": "180000001364000A000000000000000000000000003EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.0\"}}"
},
{
"description": "[basx021] conform to rules and exponent will be in permitted range).",
"bson": "18000000136400010000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1\"}}"
},
{
"description": "[basx601] Zeros",
"bson": "1800000013640000000000000000000000000000002E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-9\"}}"
},
{
"description": "[basx622] Zeros",
"bson": "1800000013640000000000000000000000000000002EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000000000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-9\"}}"
},
{
"description": "[basx602] Zeros",
"bson": "180000001364000000000000000000000000000000303000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-8\"}}"
},
{
"description": "[basx621] Zeros",
"bson": "18000000136400000000000000000000000000000030B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00000000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-8\"}}"
},
{
"description": "[basx603] Zeros",
"bson": "180000001364000000000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-7\"}}"
},
{
"description": "[basx620] Zeros",
"bson": "18000000136400000000000000000000000000000032B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0000000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-7\"}}"
},
{
"description": "[basx604] Zeros",
"bson": "180000001364000000000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000\"}}"
},
{
"description": "[basx619] Zeros",
"bson": "18000000136400000000000000000000000000000034B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000000\"}}"
},
{
"description": "[basx605] Zeros",
"bson": "180000001364000000000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000\"}}"
},
{
"description": "[basx618] Zeros",
"bson": "18000000136400000000000000000000000000000036B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00000\"}}"
},
{
"description": "[basx680] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"000000.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx606] Zeros",
"bson": "180000001364000000000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000\"}}"
},
{
"description": "[basx617] Zeros",
"bson": "18000000136400000000000000000000000000000038B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0000\"}}"
},
{
"description": "[basx681] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"00000.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx686] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+00000.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx687] Zeros",
"bson": "18000000136400000000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-00000.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0\"}}"
},
{
"description": "[basx019] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640000000000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-00.00\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00\"}}"
},
{
"description": "[basx607] Zeros",
"bson": "1800000013640000000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000\"}}"
},
{
"description": "[basx616] Zeros",
"bson": "1800000013640000000000000000000000000000003AB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000\"}}"
},
{
"description": "[basx682] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0000.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx155] Numbers with E",
"bson": "1800000013640000000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000e+0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000\"}}"
},
{
"description": "[basx130] Numbers with E",
"bson": "180000001364000000000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000\"}}"
},
{
"description": "[basx290] some more negative zeros [systematic tests below]",
"bson": "18000000136400000000000000000000000000000038B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0000\"}}"
},
{
"description": "[basx131] Numbers with E",
"bson": "180000001364000000000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000\"}}"
},
{
"description": "[basx291] some more negative zeros [systematic tests below]",
"bson": "18000000136400000000000000000000000000000036B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00000\"}}"
},
{
"description": "[basx132] Numbers with E",
"bson": "180000001364000000000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000\"}}"
},
{
"description": "[basx292] some more negative zeros [systematic tests below]",
"bson": "18000000136400000000000000000000000000000034B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000000\"}}"
},
{
"description": "[basx133] Numbers with E",
"bson": "180000001364000000000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-7\"}}"
},
{
"description": "[basx293] some more negative zeros [systematic tests below]",
"bson": "18000000136400000000000000000000000000000032B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-7\"}}"
},
{
"description": "[basx608] Zeros",
"bson": "1800000013640000000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00\"}}"
},
{
"description": "[basx615] Zeros",
"bson": "1800000013640000000000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00\"}}"
},
{
"description": "[basx683] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"000.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx630] Zeros",
"bson": "1800000013640000000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00\"}}"
},
{
"description": "[basx670] Zeros",
"bson": "1800000013640000000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00\"}}"
},
{
"description": "[basx631] Zeros",
"bson": "1800000013640000000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0\"}}"
},
{
"description": "[basx671] Zeros",
"bson": "1800000013640000000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000\"}}"
},
{
"description": "[basx134] Numbers with E",
"bson": "180000001364000000000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000\"}}"
},
{
"description": "[basx294] some more negative zeros [systematic tests below]",
"bson": "18000000136400000000000000000000000000000038B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0000\"}}"
},
{
"description": "[basx632] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx672] Zeros",
"bson": "180000001364000000000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000\"}}"
},
{
"description": "[basx135] Numbers with E",
"bson": "180000001364000000000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000\"}}"
},
{
"description": "[basx295] some more negative zeros [systematic tests below]",
"bson": "18000000136400000000000000000000000000000036B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00000\"}}"
},
{
"description": "[basx633] Zeros",
"bson": "180000001364000000000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+1\"}}"
},
{
"description": "[basx673] Zeros",
"bson": "180000001364000000000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000\"}}"
},
{
"description": "[basx136] Numbers with E",
"bson": "180000001364000000000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000\"}}"
},
{
"description": "[basx674] Zeros",
"bson": "180000001364000000000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000\"}}"
},
{
"description": "[basx634] Zeros",
"bson": "180000001364000000000000000000000000000000443000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+2\"}}"
},
{
"description": "[basx137] Numbers with E",
"bson": "180000001364000000000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-7\"}}"
},
{
"description": "[basx635] Zeros",
"bson": "180000001364000000000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+3\"}}"
},
{
"description": "[basx675] Zeros",
"bson": "180000001364000000000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-7\"}}"
},
{
"description": "[basx636] Zeros",
"bson": "180000001364000000000000000000000000000000483000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+4\"}}"
},
{
"description": "[basx676] Zeros",
"bson": "180000001364000000000000000000000000000000303000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-8\"}}"
},
{
"description": "[basx637] Zeros",
"bson": "1800000013640000000000000000000000000000004A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+5\"}}"
},
{
"description": "[basx677] Zeros",
"bson": "1800000013640000000000000000000000000000002E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-9\"}}"
},
{
"description": "[basx638] Zeros",
"bson": "1800000013640000000000000000000000000000004C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6\"}}"
},
{
"description": "[basx678] Zeros",
"bson": "1800000013640000000000000000000000000000002C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-10\"}}"
},
{
"description": "[basx149] Numbers with E",
"bson": "180000001364000000000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"000E+9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+9\"}}"
},
{
"description": "[basx639] Zeros",
"bson": "1800000013640000000000000000000000000000004E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E+9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+7\"}}"
},
{
"description": "[basx679] Zeros",
"bson": "1800000013640000000000000000000000000000002A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00E-9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-11\"}}"
},
{
"description": "[basx063] strings without E cannot generate E in result",
"bson": "18000000136400185C0ACE00000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+00345678.5432\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"345678.5432\"}}"
},
{
"description": "[basx018] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640000000000000000000000000000003EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0\"}}"
},
{
"description": "[basx609] Zeros",
"bson": "1800000013640000000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0\"}}"
},
{
"description": "[basx614] Zeros",
"bson": "1800000013640000000000000000000000000000003EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0\"}}"
},
{
"description": "[basx684] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"00.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx640] Zeros",
"bson": "1800000013640000000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0\"}}"
},
{
"description": "[basx660] Zeros",
"bson": "1800000013640000000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0\"}}"
},
{
"description": "[basx641] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx661] Zeros",
"bson": "1800000013640000000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00\"}}"
},
{
"description": "[basx296] some more negative zeros [systematic tests below]",
"bson": "1800000013640000000000000000000000000000003AB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000\"}}"
},
{
"description": "[basx642] Zeros",
"bson": "180000001364000000000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+1\"}}"
},
{
"description": "[basx662] Zeros",
"bson": "1800000013640000000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000\"}}"
},
{
"description": "[basx297] some more negative zeros [systematic tests below]",
"bson": "18000000136400000000000000000000000000000038B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0000\"}}"
},
{
"description": "[basx643] Zeros",
"bson": "180000001364000000000000000000000000000000443000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+2\"}}"
},
{
"description": "[basx663] Zeros",
"bson": "180000001364000000000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000\"}}"
},
{
"description": "[basx644] Zeros",
"bson": "180000001364000000000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+3\"}}"
},
{
"description": "[basx664] Zeros",
"bson": "180000001364000000000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000\"}}"
},
{
"description": "[basx645] Zeros",
"bson": "180000001364000000000000000000000000000000483000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+4\"}}"
},
{
"description": "[basx665] Zeros",
"bson": "180000001364000000000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000\"}}"
},
{
"description": "[basx646] Zeros",
"bson": "1800000013640000000000000000000000000000004A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+5\"}}"
},
{
"description": "[basx666] Zeros",
"bson": "180000001364000000000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-7\"}}"
},
{
"description": "[basx647] Zeros",
"bson": "1800000013640000000000000000000000000000004C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6\"}}"
},
{
"description": "[basx667] Zeros",
"bson": "180000001364000000000000000000000000000000303000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-8\"}}"
},
{
"description": "[basx648] Zeros",
"bson": "1800000013640000000000000000000000000000004E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+7\"}}"
},
{
"description": "[basx668] Zeros",
"bson": "1800000013640000000000000000000000000000002E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-9\"}}"
},
{
"description": "[basx160] Numbers with E",
"bson": "180000001364000000000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"00E+9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+9\"}}"
},
{
"description": "[basx161] Numbers with E",
"bson": "1800000013640000000000000000000000000000002E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"00E-9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-9\"}}"
},
{
"description": "[basx649] Zeros",
"bson": "180000001364000000000000000000000000000000503000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E+9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+8\"}}"
},
{
"description": "[basx669] Zeros",
"bson": "1800000013640000000000000000000000000000002C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0E-9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-10\"}}"
},
{
"description": "[basx062] strings without E cannot generate E in result",
"bson": "18000000136400185C0ACE00000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+0345678.5432\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"345678.5432\"}}"
},
{
"description": "[basx001] conform to rules and exponent will be in permitted range).",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx017] conform to rules and exponent will be in permitted range).",
"bson": "18000000136400000000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0\"}}"
},
{
"description": "[basx611] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx613] Zeros",
"bson": "18000000136400000000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0\"}}"
},
{
"description": "[basx685] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx688] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+0.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx689] Zeros",
"bson": "18000000136400000000000000000000000000000040B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0\"}}"
},
{
"description": "[basx650] Zeros",
"bson": "180000001364000000000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0\"}}"
},
{
"description": "[basx651] Zeros",
"bson": "180000001364000000000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+1\"}}"
},
{
"description": "[basx298] some more negative zeros [systematic tests below]",
"bson": "1800000013640000000000000000000000000000003CB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00\"}}"
},
{
"description": "[basx652] Zeros",
"bson": "180000001364000000000000000000000000000000443000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+2\"}}"
},
{
"description": "[basx299] some more negative zeros [systematic tests below]",
"bson": "1800000013640000000000000000000000000000003AB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000\"}}"
},
{
"description": "[basx653] Zeros",
"bson": "180000001364000000000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+3\"}}"
},
{
"description": "[basx654] Zeros",
"bson": "180000001364000000000000000000000000000000483000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+4\"}}"
},
{
"description": "[basx655] Zeros",
"bson": "1800000013640000000000000000000000000000004A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+5\"}}"
},
{
"description": "[basx656] Zeros",
"bson": "1800000013640000000000000000000000000000004C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6\"}}"
},
{
"description": "[basx657] Zeros",
"bson": "1800000013640000000000000000000000000000004E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+7\"}}"
},
{
"description": "[basx658] Zeros",
"bson": "180000001364000000000000000000000000000000503000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+8\"}}"
},
{
"description": "[basx138] Numbers with E",
"bson": "180000001364000000000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+0E+9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+9\"}}"
},
{
"description": "[basx139] Numbers with E",
"bson": "18000000136400000000000000000000000000000052B000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+9\"}}"
},
{
"description": "[basx144] Numbers with E",
"bson": "180000001364000000000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+9\"}}"
},
{
"description": "[basx154] Numbers with E",
"bson": "180000001364000000000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+9\"}}"
},
{
"description": "[basx659] Zeros",
"bson": "180000001364000000000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+9\"}}"
},
{
"description": "[basx042] strings without E cannot generate E in result",
"bson": "18000000136400FC040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+12.76\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"12.76\"}}"
},
{
"description": "[basx143] Numbers with E",
"bson": "180000001364000100000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+1E+009\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+9\"}}"
},
{
"description": "[basx061] strings without E cannot generate E in result",
"bson": "18000000136400185C0ACE00000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+345678.5432\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"345678.5432\"}}"
},
{
"description": "[basx036] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640015CD5B0700000000000000000000203000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000000123456789\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.23456789E-8\"}}"
},
{
"description": "[basx035] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640015CD5B0700000000000000000000223000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000123456789\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.23456789E-7\"}}"
},
{
"description": "[basx034] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640015CD5B0700000000000000000000243000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000123456789\"}}"
},
{
"description": "[basx053] strings without E cannot generate E in result",
"bson": "180000001364003200000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000050\"}}"
},
{
"description": "[basx033] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640015CD5B0700000000000000000000263000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000123456789\"}}"
},
{
"description": "[basx016] conform to rules and exponent will be in permitted range).",
"bson": "180000001364000C000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.012\"}}"
},
{
"description": "[basx015] conform to rules and exponent will be in permitted range).",
"bson": "180000001364007B000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.123\"}}"
},
{
"description": "[basx037] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640078DF0D8648700000000000000000223000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.123456789012344\"}}"
},
{
"description": "[basx038] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640079DF0D8648700000000000000000223000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.123456789012345\"}}"
},
{
"description": "[basx250] Numbers with E",
"bson": "18000000136400F104000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265\"}}"
},
{
"description": "[basx257] Numbers with E",
"bson": "18000000136400F104000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E-0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265\"}}"
},
{
"description": "[basx256] Numbers with E",
"bson": "18000000136400F104000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.01265\"}}"
},
{
"description": "[basx258] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E+1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265\"}}"
},
{
"description": "[basx251] Numbers with E",
"bson": "18000000136400F104000000000000000000000000103000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E-20\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-21\"}}"
},
{
"description": "[basx263] Numbers with E",
"bson": "18000000136400F104000000000000000000000000603000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E+20\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+19\"}}"
},
{
"description": "[basx255] Numbers with E",
"bson": "18000000136400F104000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.001265\"}}"
},
{
"description": "[basx259] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E+2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65\"}}"
},
{
"description": "[basx254] Numbers with E",
"bson": "18000000136400F104000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0001265\"}}"
},
{
"description": "[basx260] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E+3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5\"}}"
},
{
"description": "[basx253] Numbers with E",
"bson": "18000000136400F104000000000000000000000000303000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00001265\"}}"
},
{
"description": "[basx261] Numbers with E",
"bson": "18000000136400F104000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E+4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1265\"}}"
},
{
"description": "[basx252] Numbers with E",
"bson": "18000000136400F104000000000000000000000000283000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E-8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-9\"}}"
},
{
"description": "[basx262] Numbers with E",
"bson": "18000000136400F104000000000000000000000000483000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265E+8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+7\"}}"
},
{
"description": "[basx159] Numbers with E",
"bson": "1800000013640049000000000000000000000000002E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.73e-7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7.3E-8\"}}"
},
{
"description": "[basx004] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640064000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00\"}}"
},
{
"description": "[basx003] conform to rules and exponent will be in permitted range).",
"bson": "180000001364000A000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0\"}}"
},
{
"description": "[basx002] conform to rules and exponent will be in permitted range).",
"bson": "180000001364000100000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1\"}}"
},
{
"description": "[basx148] Numbers with E",
"bson": "180000001364000100000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+009\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+9\"}}"
},
{
"description": "[basx153] Numbers with E",
"bson": "180000001364000100000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E009\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+9\"}}"
},
{
"description": "[basx141] Numbers with E",
"bson": "180000001364000100000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1e+09\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+9\"}}"
},
{
"description": "[basx146] Numbers with E",
"bson": "180000001364000100000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+09\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+9\"}}"
},
{
"description": "[basx151] Numbers with E",
"bson": "180000001364000100000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1e09\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+9\"}}"
},
{
"description": "[basx142] Numbers with E",
"bson": "180000001364000100000000000000000000000000F43000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+90\"}}"
},
{
"description": "[basx147] Numbers with E",
"bson": "180000001364000100000000000000000000000000F43000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1e+90\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+90\"}}"
},
{
"description": "[basx152] Numbers with E",
"bson": "180000001364000100000000000000000000000000F43000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E90\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+90\"}}"
},
{
"description": "[basx140] Numbers with E",
"bson": "180000001364000100000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+9\"}}"
},
{
"description": "[basx150] Numbers with E",
"bson": "180000001364000100000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+9\"}}"
},
{
"description": "[basx014] conform to rules and exponent will be in permitted range).",
"bson": "18000000136400D2040000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.234\"}}"
},
{
"description": "[basx170] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265\"}}"
},
{
"description": "[basx177] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265\"}}"
},
{
"description": "[basx176] Numbers with E",
"bson": "18000000136400F104000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265\"}}"
},
{
"description": "[basx178] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65\"}}"
},
{
"description": "[basx171] Numbers with E",
"bson": "18000000136400F104000000000000000000000000123000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-20\"}}"
},
{
"description": "[basx183] Numbers with E",
"bson": "18000000136400F104000000000000000000000000623000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+20\"}}"
},
{
"description": "[basx175] Numbers with E",
"bson": "18000000136400F104000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.01265\"}}"
},
{
"description": "[basx179] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5\"}}"
},
{
"description": "[basx174] Numbers with E",
"bson": "18000000136400F104000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.001265\"}}"
},
{
"description": "[basx180] Numbers with E",
"bson": "18000000136400F104000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1265\"}}"
},
{
"description": "[basx173] Numbers with E",
"bson": "18000000136400F104000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0001265\"}}"
},
{
"description": "[basx181] Numbers with E",
"bson": "18000000136400F104000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+4\"}}"
},
{
"description": "[basx172] Numbers with E",
"bson": "18000000136400F1040000000000000000000000002A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-8\"}}"
},
{
"description": "[basx182] Numbers with E",
"bson": "18000000136400F1040000000000000000000000004A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+8\"}}"
},
{
"description": "[basx157] Numbers with E",
"bson": "180000001364000400000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"4E+9\"}}"
},
{
"description": "[basx067] examples",
"bson": "180000001364000500000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"5E-6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000005\"}}"
},
{
"description": "[basx069] examples",
"bson": "180000001364000500000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"5E-7\"}}"
},
{
"description": "[basx385] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7\"}}"
},
{
"description": "[basx365] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000543000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E10\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+10\"}}"
},
{
"description": "[basx405] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000002C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-10\"}}"
},
{
"description": "[basx363] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000563000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E11\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+11\"}}"
},
{
"description": "[basx407] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000002A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-11\"}}"
},
{
"description": "[basx361] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000583000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E12\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+12\"}}"
},
{
"description": "[basx409] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000283000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-12\"}}"
},
{
"description": "[basx411] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000263000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-13\"}}"
},
{
"description": "[basx383] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+1\"}}"
},
{
"description": "[basx387] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.7\"}}"
},
{
"description": "[basx381] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000443000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+2\"}}"
},
{
"description": "[basx389] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.07\"}}"
},
{
"description": "[basx379] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+3\"}}"
},
{
"description": "[basx391] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.007\"}}"
},
{
"description": "[basx377] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000483000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+4\"}}"
},
{
"description": "[basx393] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0007\"}}"
},
{
"description": "[basx375] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000004A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+5\"}}"
},
{
"description": "[basx395] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00007\"}}"
},
{
"description": "[basx373] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000004C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+6\"}}"
},
{
"description": "[basx397] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000007\"}}"
},
{
"description": "[basx371] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000004E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+7\"}}"
},
{
"description": "[basx399] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-7\"}}"
},
{
"description": "[basx369] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000503000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+8\"}}"
},
{
"description": "[basx401] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000303000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-8\"}}"
},
{
"description": "[basx367] Engineering notation tests",
"bson": "180000001364000700000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"7E+9\"}}"
},
{
"description": "[basx403] Engineering notation tests",
"bson": "1800000013640007000000000000000000000000002E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"7E-9\"}}"
},
{
"description": "[basx007] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640064000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10.0\"}}"
},
{
"description": "[basx005] conform to rules and exponent will be in permitted range).",
"bson": "180000001364000A00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10\"}}"
},
{
"description": "[basx165] Numbers with E",
"bson": "180000001364000A00000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10E+009\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+10\"}}"
},
{
"description": "[basx163] Numbers with E",
"bson": "180000001364000A00000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10E+09\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+10\"}}"
},
{
"description": "[basx325] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"10\"}}"
},
{
"description": "[basx305] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000543000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e10\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+11\"}}"
},
{
"description": "[basx345] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000002C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-10\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E-9\"}}"
},
{
"description": "[basx303] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000563000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e11\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+12\"}}"
},
{
"description": "[basx347] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000002A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-11\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E-10\"}}"
},
{
"description": "[basx301] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000583000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e12\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+13\"}}"
},
{
"description": "[basx349] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000283000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-12\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E-11\"}}"
},
{
"description": "[basx351] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000263000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-13\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E-12\"}}"
},
{
"description": "[basx323] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+2\"}}"
},
{
"description": "[basx327] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0\"}}"
},
{
"description": "[basx321] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000443000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+3\"}}"
},
{
"description": "[basx329] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.10\"}}"
},
{
"description": "[basx319] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+4\"}}"
},
{
"description": "[basx331] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.010\"}}"
},
{
"description": "[basx317] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000483000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+5\"}}"
},
{
"description": "[basx333] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0010\"}}"
},
{
"description": "[basx315] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000004A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+6\"}}"
},
{
"description": "[basx335] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00010\"}}"
},
{
"description": "[basx313] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000004C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+7\"}}"
},
{
"description": "[basx337] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-6\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000010\"}}"
},
{
"description": "[basx311] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000004E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+8\"}}"
},
{
"description": "[basx339] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000010\"}}"
},
{
"description": "[basx309] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000503000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+9\"}}"
},
{
"description": "[basx341] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000303000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E-7\"}}"
},
{
"description": "[basx164] Numbers with E",
"bson": "180000001364000A00000000000000000000000000F43000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e+90\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+91\"}}"
},
{
"description": "[basx162] Numbers with E",
"bson": "180000001364000A00000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10E+9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+10\"}}"
},
{
"description": "[basx307] Engineering notation tests",
"bson": "180000001364000A00000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+10\"}}"
},
{
"description": "[basx343] Engineering notation tests",
"bson": "180000001364000A000000000000000000000000002E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10e-9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E-8\"}}"
},
{
"description": "[basx008] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640065000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10.1\"}}"
},
{
"description": "[basx009] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640068000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10.4\"}}"
},
{
"description": "[basx010] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640069000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10.5\"}}"
},
{
"description": "[basx011] conform to rules and exponent will be in permitted range).",
"bson": "180000001364006A000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10.6\"}}"
},
{
"description": "[basx012] conform to rules and exponent will be in permitted range).",
"bson": "180000001364006D000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"10.9\"}}"
},
{
"description": "[basx013] conform to rules and exponent will be in permitted range).",
"bson": "180000001364006E000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"11.0\"}}"
},
{
"description": "[basx040] strings without E cannot generate E in result",
"bson": "180000001364000C00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12\"}}"
},
{
"description": "[basx190] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65\"}}"
},
{
"description": "[basx197] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E-0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65\"}}"
},
{
"description": "[basx196] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265\"}}"
},
{
"description": "[basx198] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E+1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5\"}}"
},
{
"description": "[basx191] Numbers with E",
"bson": "18000000136400F104000000000000000000000000143000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E-20\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-19\"}}"
},
{
"description": "[basx203] Numbers with E",
"bson": "18000000136400F104000000000000000000000000643000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E+20\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+21\"}}"
},
{
"description": "[basx195] Numbers with E",
"bson": "18000000136400F104000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265\"}}"
},
{
"description": "[basx199] Numbers with E",
"bson": "18000000136400F104000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E+2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1265\"}}"
},
{
"description": "[basx194] Numbers with E",
"bson": "18000000136400F104000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.01265\"}}"
},
{
"description": "[basx200] Numbers with E",
"bson": "18000000136400F104000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E+3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+4\"}}"
},
{
"description": "[basx193] Numbers with E",
"bson": "18000000136400F104000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.001265\"}}"
},
{
"description": "[basx201] Numbers with E",
"bson": "18000000136400F104000000000000000000000000443000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E+4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+5\"}}"
},
{
"description": "[basx192] Numbers with E",
"bson": "18000000136400F1040000000000000000000000002C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E-8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-7\"}}"
},
{
"description": "[basx202] Numbers with E",
"bson": "18000000136400F1040000000000000000000000004C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65E+8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+9\"}}"
},
{
"description": "[basx044] strings without E cannot generate E in result",
"bson": "18000000136400FC040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"012.76\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"12.76\"}}"
},
{
"description": "[basx042] strings without E cannot generate E in result",
"bson": "18000000136400FC040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12.76\"}}"
},
{
"description": "[basx046] strings without E cannot generate E in result",
"bson": "180000001364001100000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"17.\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"17\"}}"
},
{
"description": "[basx049] strings without E cannot generate E in result",
"bson": "180000001364002C00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0044\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"44\"}}"
},
{
"description": "[basx048] strings without E cannot generate E in result",
"bson": "180000001364002C00000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"044\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"44\"}}"
},
{
"description": "[basx158] Numbers with E",
"bson": "180000001364002C00000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"44E+9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"4.4E+10\"}}"
},
{
"description": "[basx068] examples",
"bson": "180000001364003200000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"50E-7\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000050\"}}"
},
{
"description": "[basx169] Numbers with E",
"bson": "180000001364006400000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"100e+009\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00E+11\"}}"
},
{
"description": "[basx167] Numbers with E",
"bson": "180000001364006400000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"100e+09\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00E+11\"}}"
},
{
"description": "[basx168] Numbers with E",
"bson": "180000001364006400000000000000000000000000F43000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"100E+90\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00E+92\"}}"
},
{
"description": "[basx166] Numbers with E",
"bson": "180000001364006400000000000000000000000000523000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"100e+9\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00E+11\"}}"
},
{
"description": "[basx210] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5\"}}"
},
{
"description": "[basx217] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E-0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5\"}}"
},
{
"description": "[basx216] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65\"}}"
},
{
"description": "[basx218] Numbers with E",
"bson": "18000000136400F104000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E+1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1265\"}}"
},
{
"description": "[basx211] Numbers with E",
"bson": "18000000136400F104000000000000000000000000163000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E-20\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-18\"}}"
},
{
"description": "[basx223] Numbers with E",
"bson": "18000000136400F104000000000000000000000000663000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E+20\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+22\"}}"
},
{
"description": "[basx215] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265\"}}"
},
{
"description": "[basx219] Numbers with E",
"bson": "18000000136400F104000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E+2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+4\"}}"
},
{
"description": "[basx214] Numbers with E",
"bson": "18000000136400F104000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265\"}}"
},
{
"description": "[basx220] Numbers with E",
"bson": "18000000136400F104000000000000000000000000443000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E+3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+5\"}}"
},
{
"description": "[basx213] Numbers with E",
"bson": "18000000136400F104000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.01265\"}}"
},
{
"description": "[basx221] Numbers with E",
"bson": "18000000136400F104000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E+4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+6\"}}"
},
{
"description": "[basx212] Numbers with E",
"bson": "18000000136400F1040000000000000000000000002E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E-8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000001265\"}}"
},
{
"description": "[basx222] Numbers with E",
"bson": "18000000136400F1040000000000000000000000004E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5E+8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+10\"}}"
},
{
"description": "[basx006] conform to rules and exponent will be in permitted range).",
"bson": "18000000136400E803000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1000\"}}"
},
{
"description": "[basx230] Numbers with E",
"bson": "18000000136400F104000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265\"}}"
},
{
"description": "[basx237] Numbers with E",
"bson": "18000000136400F104000000000000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E-0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1265\"}}"
},
{
"description": "[basx236] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E-1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"126.5\"}}"
},
{
"description": "[basx238] Numbers with E",
"bson": "18000000136400F104000000000000000000000000423000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E+1\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+4\"}}"
},
{
"description": "[basx231] Numbers with E",
"bson": "18000000136400F104000000000000000000000000183000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E-20\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E-17\"}}"
},
{
"description": "[basx243] Numbers with E",
"bson": "18000000136400F104000000000000000000000000683000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E+20\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+23\"}}"
},
{
"description": "[basx235] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E-2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"12.65\"}}"
},
{
"description": "[basx239] Numbers with E",
"bson": "18000000136400F104000000000000000000000000443000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E+2\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+5\"}}"
},
{
"description": "[basx234] Numbers with E",
"bson": "18000000136400F1040000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E-3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265\"}}"
},
{
"description": "[basx240] Numbers with E",
"bson": "18000000136400F104000000000000000000000000463000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E+3\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+6\"}}"
},
{
"description": "[basx233] Numbers with E",
"bson": "18000000136400F104000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E-4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1265\"}}"
},
{
"description": "[basx241] Numbers with E",
"bson": "18000000136400F104000000000000000000000000483000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E+4\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+7\"}}"
},
{
"description": "[basx232] Numbers with E",
"bson": "18000000136400F104000000000000000000000000303000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E-8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00001265\"}}"
},
{
"description": "[basx242] Numbers with E",
"bson": "18000000136400F104000000000000000000000000503000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1265E+8\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.265E+11\"}}"
},
{
"description": "[basx060] strings without E cannot generate E in result",
"bson": "18000000136400185C0ACE00000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"345678.5432\"}}"
},
{
"description": "[basx059] strings without E cannot generate E in result",
"bson": "18000000136400F198670C08000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0345678.54321\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"345678.54321\"}}"
},
{
"description": "[basx058] strings without E cannot generate E in result",
"bson": "180000001364006AF90B7C50000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"345678.543210\"}}"
},
{
"description": "[basx057] strings without E cannot generate E in result",
"bson": "180000001364006A19562522020000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"2345678.543210\"}}"
},
{
"description": "[basx056] strings without E cannot generate E in result",
"bson": "180000001364006AB9C8733A0B0000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"12345678.543210\"}}"
},
{
"description": "[basx031] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640040AF0D8648700000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"123456789.000000\"}}"
},
{
"description": "[basx030] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640080910F8648700000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"123456789.123456\"}}"
},
{
"description": "[basx032] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640080910F8648700000000000000000403000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"123456789123456\"}}"
}
]
}
`},
{"decimal128-4.json", `
{
"description": "Decimal128",
"bson_type": "0x13",
"test_key": "d",
"valid": [
{
"description": "[basx023] conform to rules and exponent will be in permitted range).",
"bson": "1800000013640001000000000000000000000000003EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.1\"}}"
},
{
"description": "[basx045] strings without E cannot generate E in result",
"bson": "1800000013640003000000000000000000000000003A3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+0.003\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.003\"}}"
},
{
"description": "[basx610] Zeros",
"bson": "1800000013640000000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \".0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0\"}}"
},
{
"description": "[basx612] Zeros",
"bson": "1800000013640000000000000000000000000000003EB000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-.0\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.0\"}}"
},
{
"description": "[basx043] strings without E cannot generate E in result",
"bson": "18000000136400FC040000000000000000000000003C3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"+12.76\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"12.76\"}}"
},
{
"description": "[basx055] strings without E cannot generate E in result",
"bson": "180000001364000500000000000000000000000000303000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000005\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"5E-8\"}}"
},
{
"description": "[basx054] strings without E cannot generate E in result",
"bson": "180000001364000500000000000000000000000000323000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0000005\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"5E-7\"}}"
},
{
"description": "[basx052] strings without E cannot generate E in result",
"bson": "180000001364000500000000000000000000000000343000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000005\"}}"
},
{
"description": "[basx051] strings without E cannot generate E in result",
"bson": "180000001364000500000000000000000000000000363000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"00.00005\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00005\"}}"
},
{
"description": "[basx050] strings without E cannot generate E in result",
"bson": "180000001364000500000000000000000000000000383000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.0005\"}}"
},
{
"description": "[basx047] strings without E cannot generate E in result",
"bson": "1800000013640005000000000000000000000000003E3000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \".5\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.5\"}}"
},
{
"description": "[dqbsr431] check rounding modes heeded (Rounded)",
"bson": "1800000013640099761CC7B548F377DC80A131C836FE2F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.1111111111111111111111111111123450\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.111111111111111111111111111112345\"}}"
},
{
"description": "OK2",
"bson": "18000000136400000000000A5BC138938D44C64D31FC2F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \".100000000000000000000000000000000000000000000000000000000000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0.1000000000000000000000000000000000\"}}"
}
],
"parseErrors": [
{
"description": "[basx564] Near-specials (Conversion_syntax)",
"string": "Infi"
},
{
"description": "[basx565] Near-specials (Conversion_syntax)",
"string": "Infin"
},
{
"description": "[basx566] Near-specials (Conversion_syntax)",
"string": "Infini"
},
{
"description": "[basx567] Near-specials (Conversion_syntax)",
"string": "Infinit"
},
{
"description": "[basx568] Near-specials (Conversion_syntax)",
"string": "-Infinit"
},
{
"description": "[basx590] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": ".Infinity"
},
{
"description": "[basx562] Near-specials (Conversion_syntax)",
"string": "NaNq"
},
{
"description": "[basx563] Near-specials (Conversion_syntax)",
"string": "NaNs"
},
{
"description": "[dqbas939] overflow results at different rounding modes (Overflow & Inexact & Rounded)",
"string": "-7e10000"
},
{
"description": "[dqbsr534] negatives (Rounded & Inexact)",
"string": "-1.11111111111111111111111111111234650"
},
{
"description": "[dqbsr535] negatives (Rounded & Inexact)",
"string": "-1.11111111111111111111111111111234551"
},
{
"description": "[dqbsr533] negatives (Rounded & Inexact)",
"string": "-1.11111111111111111111111111111234550"
},
{
"description": "[dqbsr532] negatives (Rounded & Inexact)",
"string": "-1.11111111111111111111111111111234549"
},
{
"description": "[dqbsr432] check rounding modes heeded (Rounded & Inexact)",
"string": "1.11111111111111111111111111111234549"
},
{
"description": "[dqbsr433] check rounding modes heeded (Rounded & Inexact)",
"string": "1.11111111111111111111111111111234550"
},
{
"description": "[dqbsr435] check rounding modes heeded (Rounded & Inexact)",
"string": "1.11111111111111111111111111111234551"
},
{
"description": "[dqbsr434] check rounding modes heeded (Rounded & Inexact)",
"string": "1.11111111111111111111111111111234650"
},
{
"description": "[dqbas938] overflow results at different rounding modes (Overflow & Inexact & Rounded)",
"string": "7e10000"
},
{
"description": "Inexact rounding#1",
"string": "100000000000000000000000000000000000000000000000000000000001"
},
{
"description": "Inexact rounding#2",
"string": "1E-6177"
}
]
}
`},
{"decimal128-5.json", `
{
"description": "Decimal128",
"bson_type": "0x13",
"test_key": "d",
"valid": [
{
"description": "[decq035] fold-downs (more below) (Clamped)",
"bson": "18000000136400000000807F1BCF85B27059C8A43CFE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.23E+6144\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.230000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq037] fold-downs (more below) (Clamped)",
"bson": "18000000136400000000000A5BC138938D44C64D31FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6144\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq077] Nmin and below (Subnormal)",
"bson": "180000001364000000000081EFAC855B416D2DEE04000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.100000000000000000000000000000000E-6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000000000000E-6144\"}}"
},
{
"description": "[decq078] Nmin and below (Subnormal)",
"bson": "180000001364000000000081EFAC855B416D2DEE04000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000000000000E-6144\"}}"
},
{
"description": "[decq079] Nmin and below (Subnormal)",
"bson": "180000001364000A00000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000000000000000000000000000010E-6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E-6175\"}}"
},
{
"description": "[decq080] Nmin and below (Subnormal)",
"bson": "180000001364000A00000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E-6175\"}}"
},
{
"description": "[decq081] Nmin and below (Subnormal)",
"bson": "180000001364000100000000000000000000000000020000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.00000000000000000000000000000001E-6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-6175\"}}"
},
{
"description": "[decq082] Nmin and below (Subnormal)",
"bson": "180000001364000100000000000000000000000000020000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-6175\"}}"
},
{
"description": "[decq083] Nmin and below (Subnormal)",
"bson": "180000001364000100000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0.000000000000000000000000000000001E-6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-6176\"}}"
},
{
"description": "[decq084] Nmin and below (Subnormal)",
"bson": "180000001364000100000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-6176\"}}"
},
{
"description": "[decq090] underflows cannot be tested for simple copies, check edge cases (Subnormal)",
"bson": "180000001364000100000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1e-6176\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1E-6176\"}}"
},
{
"description": "[decq100] underflows cannot be tested for simple copies, check edge cases (Subnormal)",
"bson": "18000000136400FFFFFFFF095BC138938D44C64D31000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"999999999999999999999999999999999e-6176\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"9.99999999999999999999999999999999E-6144\"}}"
},
{
"description": "[decq130] fold-downs (more below) (Clamped)",
"bson": "18000000136400000000807F1BCF85B27059C8A43CFEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.23E+6144\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.230000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq132] fold-downs (more below) (Clamped)",
"bson": "18000000136400000000000A5BC138938D44C64D31FEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1E+6144\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.000000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq177] Nmin and below (Subnormal)",
"bson": "180000001364000000000081EFAC855B416D2DEE04008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.100000000000000000000000000000000E-6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.00000000000000000000000000000000E-6144\"}}"
},
{
"description": "[decq178] Nmin and below (Subnormal)",
"bson": "180000001364000000000081EFAC855B416D2DEE04008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.00000000000000000000000000000000E-6144\"}}"
},
{
"description": "[decq179] Nmin and below (Subnormal)",
"bson": "180000001364000A00000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000000000000000000000000000000010E-6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.0E-6175\"}}"
},
{
"description": "[decq180] Nmin and below (Subnormal)",
"bson": "180000001364000A00000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1.0E-6175\"}}"
},
{
"description": "[decq181] Nmin and below (Subnormal)",
"bson": "180000001364000100000000000000000000000000028000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.00000000000000000000000000000001E-6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1E-6175\"}}"
},
{
"description": "[decq182] Nmin and below (Subnormal)",
"bson": "180000001364000100000000000000000000000000028000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1E-6175\"}}"
},
{
"description": "[decq183] Nmin and below (Subnormal)",
"bson": "180000001364000100000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0.000000000000000000000000000000001E-6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1E-6176\"}}"
},
{
"description": "[decq184] Nmin and below (Subnormal)",
"bson": "180000001364000100000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1E-6176\"}}"
},
{
"description": "[decq190] underflow edge cases (Subnormal)",
"bson": "180000001364000100000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-1e-6176\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-1E-6176\"}}"
},
{
"description": "[decq200] underflow edge cases (Subnormal)",
"bson": "18000000136400FFFFFFFF095BC138938D44C64D31008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-999999999999999999999999999999999e-6176\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-9.99999999999999999999999999999999E-6144\"}}"
},
{
"description": "[decq400] zeros (Clamped)",
"bson": "180000001364000000000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-8000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-6176\"}}"
},
{
"description": "[decq401] zeros (Clamped)",
"bson": "180000001364000000000000000000000000000000000000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-6177\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E-6176\"}}"
},
{
"description": "[decq414] clamped zeros... (Clamped)",
"bson": "180000001364000000000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6112\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6111\"}}"
},
{
"description": "[decq416] clamped zeros... (Clamped)",
"bson": "180000001364000000000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6144\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6111\"}}"
},
{
"description": "[decq418] clamped zeros... (Clamped)",
"bson": "180000001364000000000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+8000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"0E+6111\"}}"
},
{
"description": "[decq420] negative zeros (Clamped)",
"bson": "180000001364000000000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-8000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-6176\"}}"
},
{
"description": "[decq421] negative zeros (Clamped)",
"bson": "180000001364000000000000000000000000000000008000",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-6177\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E-6176\"}}"
},
{
"description": "[decq434] clamped zeros... (Clamped)",
"bson": "180000001364000000000000000000000000000000FEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+6112\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+6111\"}}"
},
{
"description": "[decq436] clamped zeros... (Clamped)",
"bson": "180000001364000000000000000000000000000000FEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+6144\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+6111\"}}"
},
{
"description": "[decq438] clamped zeros... (Clamped)",
"bson": "180000001364000000000000000000000000000000FEDF00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+8000\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"-0E+6111\"}}"
},
{
"description": "[decq601] fold-down full sequence (Clamped)",
"bson": "18000000136400000000000A5BC138938D44C64D31FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6144\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000000E+6144\"}}"
},
{
"description": "[decq603] fold-down full sequence (Clamped)",
"bson": "180000001364000000000081EFAC855B416D2DEE04FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6143\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000000000000E+6143\"}}"
},
{
"description": "[decq605] fold-down full sequence (Clamped)",
"bson": "1800000013640000000080264B91C02220BE377E00FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6142\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000000000000000E+6142\"}}"
},
{
"description": "[decq607] fold-down full sequence (Clamped)",
"bson": "1800000013640000000040EAED7446D09C2C9F0C00FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6141\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000000E+6141\"}}"
},
{
"description": "[decq609] fold-down full sequence (Clamped)",
"bson": "18000000136400000000A0CA17726DAE0F1E430100FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6140\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000000000E+6140\"}}"
},
{
"description": "[decq611] fold-down full sequence (Clamped)",
"bson": "18000000136400000000106102253E5ECE4F200000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6139\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000000000000E+6139\"}}"
},
{
"description": "[decq613] fold-down full sequence (Clamped)",
"bson": "18000000136400000000E83C80D09F3C2E3B030000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6138\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000000E+6138\"}}"
},
{
"description": "[decq615] fold-down full sequence (Clamped)",
"bson": "18000000136400000000E4D20CC8DCD2B752000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6137\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000000E+6137\"}}"
},
{
"description": "[decq617] fold-down full sequence (Clamped)",
"bson": "180000001364000000004A48011416954508000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6136\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000000000E+6136\"}}"
},
{
"description": "[decq619] fold-down full sequence (Clamped)",
"bson": "18000000136400000000A1EDCCCE1BC2D300000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6135\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000000E+6135\"}}"
},
{
"description": "[decq621] fold-down full sequence (Clamped)",
"bson": "18000000136400000080F64AE1C7022D1500000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6134\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000000E+6134\"}}"
},
{
"description": "[decq623] fold-down full sequence (Clamped)",
"bson": "18000000136400000040B2BAC9E0191E0200000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6133\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000000E+6133\"}}"
},
{
"description": "[decq625] fold-down full sequence (Clamped)",
"bson": "180000001364000000A0DEC5ADC935360000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6132\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000000E+6132\"}}"
},
{
"description": "[decq627] fold-down full sequence (Clamped)",
"bson": "18000000136400000010632D5EC76B050000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6131\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000000E+6131\"}}"
},
{
"description": "[decq629] fold-down full sequence (Clamped)",
"bson": "180000001364000000E8890423C78A000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6130\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000000E+6130\"}}"
},
{
"description": "[decq631] fold-down full sequence (Clamped)",
"bson": "18000000136400000064A7B3B6E00D000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6129\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000000E+6129\"}}"
},
{
"description": "[decq633] fold-down full sequence (Clamped)",
"bson": "1800000013640000008A5D78456301000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6128\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000000E+6128\"}}"
},
{
"description": "[decq635] fold-down full sequence (Clamped)",
"bson": "180000001364000000C16FF2862300000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6127\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000000E+6127\"}}"
},
{
"description": "[decq637] fold-down full sequence (Clamped)",
"bson": "180000001364000080C6A47E8D0300000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6126\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000000E+6126\"}}"
},
{
"description": "[decq639] fold-down full sequence (Clamped)",
"bson": "1800000013640000407A10F35A0000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6125\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000000E+6125\"}}"
},
{
"description": "[decq641] fold-down full sequence (Clamped)",
"bson": "1800000013640000A0724E18090000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6124\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000000E+6124\"}}"
},
{
"description": "[decq643] fold-down full sequence (Clamped)",
"bson": "180000001364000010A5D4E8000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6123\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000000E+6123\"}}"
},
{
"description": "[decq645] fold-down full sequence (Clamped)",
"bson": "1800000013640000E8764817000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6122\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000000E+6122\"}}"
},
{
"description": "[decq647] fold-down full sequence (Clamped)",
"bson": "1800000013640000E40B5402000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6121\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000000E+6121\"}}"
},
{
"description": "[decq649] fold-down full sequence (Clamped)",
"bson": "1800000013640000CA9A3B00000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6120\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000000E+6120\"}}"
},
{
"description": "[decq651] fold-down full sequence (Clamped)",
"bson": "1800000013640000E1F50500000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6119\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000000E+6119\"}}"
},
{
"description": "[decq653] fold-down full sequence (Clamped)",
"bson": "180000001364008096980000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6118\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000000E+6118\"}}"
},
{
"description": "[decq655] fold-down full sequence (Clamped)",
"bson": "1800000013640040420F0000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6117\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000000E+6117\"}}"
},
{
"description": "[decq657] fold-down full sequence (Clamped)",
"bson": "18000000136400A086010000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6116\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00000E+6116\"}}"
},
{
"description": "[decq659] fold-down full sequence (Clamped)",
"bson": "180000001364001027000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6115\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0000E+6115\"}}"
},
{
"description": "[decq661] fold-down full sequence (Clamped)",
"bson": "18000000136400E803000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6114\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.000E+6114\"}}"
},
{
"description": "[decq663] fold-down full sequence (Clamped)",
"bson": "180000001364006400000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6113\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.00E+6113\"}}"
},
{
"description": "[decq665] fold-down full sequence (Clamped)",
"bson": "180000001364000A00000000000000000000000000FE5F00",
"extjson": "{\"d\" : {\"$numberDecimal\" : \"1E+6112\"}}",
"canonical_extjson": "{\"d\" : {\"$numberDecimal\" : \"1.0E+6112\"}}"
}
]
}
`},
{"decimal128-6.json", `
{
"description": "Decimal128",
"bson_type": "0x13",
"test_key": "d",
"parseErrors": [
{
"description": "Incomplete Exponent",
"string": "1e"
},
{
"description": "Exponent at the beginning",
"string": "E01"
},
{
"description": "Just a decimal place",
"string": "."
},
{
"description": "2 decimal places",
"string": "..3"
},
{
"description": "2 decimal places",
"string": ".13.3"
},
{
"description": "2 decimal places",
"string": "1..3"
},
{
"description": "2 decimal places",
"string": "1.3.4"
},
{
"description": "2 decimal places",
"string": "1.34."
},
{
"description": "Decimal with no digits",
"string": ".e"
},
{
"description": "2 signs",
"string": "+-32.4"
},
{
"description": "2 signs",
"string": "-+32.4"
},
{
"description": "2 negative signs",
"string": "--32.4"
},
{
"description": "2 negative signs",
"string": "-32.-4"
},
{
"description": "End in negative sign",
"string": "32.0-"
},
{
"description": "2 negative signs",
"string": "32.4E--21"
},
{
"description": "2 negative signs",
"string": "32.4E-2-1"
},
{
"description": "2 signs",
"string": "32.4E+-21"
},
{
"description": "Empty string",
"string": ""
},
{
"description": "leading white space positive number",
"string": " 1"
},
{
"description": "leading white space negative number",
"string": " -1"
},
{
"description": "trailing white space",
"string": "1 "
},
{
"description": "Invalid",
"string": "E"
},
{
"description": "Invalid",
"string": "invalid"
},
{
"description": "Invalid",
"string": "i"
},
{
"description": "Invalid",
"string": "in"
},
{
"description": "Invalid",
"string": "-in"
},
{
"description": "Invalid",
"string": "Na"
},
{
"description": "Invalid",
"string": "-Na"
},
{
"description": "Invalid",
"string": "1.23abc"
},
{
"description": "Invalid",
"string": "1.23abcE+02"
},
{
"description": "Invalid",
"string": "1.23E+0aabs2"
}
]
}
`},
{"decimal128-7.json", `
{
"description": "Decimal128",
"bson_type": "0x13",
"test_key": "d",
"parseErrors": [
{
"description": "[basx572] Near-specials (Conversion_syntax)",
"string": "-9Inf"
},
{
"description": "[basx516] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "-1-"
},
{
"description": "[basx533] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "0000.."
},
{
"description": "[basx534] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": ".0000."
},
{
"description": "[basx535] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "00..00"
},
{
"description": "[basx569] Near-specials (Conversion_syntax)",
"string": "0Inf"
},
{
"description": "[basx571] Near-specials (Conversion_syntax)",
"string": "-0Inf"
},
{
"description": "[basx575] Near-specials (Conversion_syntax)",
"string": "0sNaN"
},
{
"description": "[basx503] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "++1"
},
{
"description": "[basx504] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "--1"
},
{
"description": "[basx505] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "-+1"
},
{
"description": "[basx506] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "+-1"
},
{
"description": "[basx510] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": " +1"
},
{
"description": "[basx513] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": " + 1"
},
{
"description": "[basx514] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": " - 1"
},
{
"description": "[basx501] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "."
},
{
"description": "[basx502] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": ".."
},
{
"description": "[basx519] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": ""
},
{
"description": "[basx525] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "e100"
},
{
"description": "[basx549] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "e+1"
},
{
"description": "[basx577] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": ".e+1"
},
{
"description": "[basx578] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "+.e+1"
},
{
"description": "[basx581] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "E+1"
},
{
"description": "[basx582] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": ".E+1"
},
{
"description": "[basx583] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "+.E+1"
},
{
"description": "[basx579] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "-.e+"
},
{
"description": "[basx580] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "-.e"
},
{
"description": "[basx584] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "-.E+"
},
{
"description": "[basx585] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "-.E"
},
{
"description": "[basx589] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "+.Inf"
},
{
"description": "[basx586] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": ".NaN"
},
{
"description": "[basx587] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "-.NaN"
},
{
"description": "[basx545] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "ONE"
},
{
"description": "[basx561] Near-specials (Conversion_syntax)",
"string": "qNaN"
},
{
"description": "[basx573] Near-specials (Conversion_syntax)",
"string": "-sNa"
},
{
"description": "[basx588] some baddies with dots and Es and dots and specials (Conversion_syntax)",
"string": "+.sNaN"
},
{
"description": "[basx544] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "ten"
},
{
"description": "[basx527] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "u0b65"
},
{
"description": "[basx526] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "u0e5a"
},
{
"description": "[basx515] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "x"
},
{
"description": "[basx574] Near-specials (Conversion_syntax)",
"string": "xNaN"
},
{
"description": "[basx530] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": ".123.5"
},
{
"description": "[basx500] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1..2"
},
{
"description": "[basx542] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1e1.0"
},
{
"description": "[basx553] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E+1.2.3"
},
{
"description": "[basx543] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1e123e"
},
{
"description": "[basx552] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E+1.2"
},
{
"description": "[basx546] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1e.1"
},
{
"description": "[basx547] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1e1."
},
{
"description": "[basx554] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E++1"
},
{
"description": "[basx555] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E--1"
},
{
"description": "[basx556] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E+-1"
},
{
"description": "[basx557] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E-+1"
},
{
"description": "[basx558] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E'1"
},
{
"description": "[basx559] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E\"1"
},
{
"description": "[basx520] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1e-"
},
{
"description": "[basx560] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1E"
},
{
"description": "[basx548] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1ee"
},
{
"description": "[basx551] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1.2.1"
},
{
"description": "[basx550] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1.23.4"
},
{
"description": "[basx529] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "1.34.5"
},
{
"description": "[basx531] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "01.35."
},
{
"description": "[basx532] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "01.35-"
},
{
"description": "[basx518] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "3+"
},
{
"description": "[basx521] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "7e99999a"
},
{
"description": "[basx570] Near-specials (Conversion_syntax)",
"string": "9Inf"
},
{
"description": "[basx512] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "12 "
},
{
"description": "[basx517] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "12-"
},
{
"description": "[basx507] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "12e"
},
{
"description": "[basx508] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "12e++"
},
{
"description": "[basx509] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "12f4"
},
{
"description": "[basx536] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "111e*123"
},
{
"description": "[basx537] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "111e123-"
},
{
"description": "[basx540] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "111e1*23"
},
{
"description": "[basx538] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "111e+12+"
},
{
"description": "[basx539] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "111e1-3-"
},
{
"description": "[basx541] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "111E1e+3"
},
{
"description": "[basx528] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "123,65"
},
{
"description": "[basx523] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "7e12356789012x"
},
{
"description": "[basx522] The 'baddies' tests from DiagBigDecimal, plus some new ones (Conversion_syntax)",
"string": "7e123567890x"
}
]
}
`},
}