File: decimal.result

package info (click to toggle)
tarantool 2.6.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 85,364 kB
  • sloc: ansic: 513,760; cpp: 69,489; sh: 25,650; python: 19,190; perl: 14,973; makefile: 4,173; yacc: 1,329; sql: 1,074; pascal: 620; ruby: 190; awk: 18; lisp: 7
file content (731 lines) | stat: -rw-r--r-- 40,200 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
1..304
ok 1 - decimal(314)
ok 2 - decimal(271)
ok 3 - decimal(314) + decimal(271)
ok 4 - decimal((314) + (271))
ok 5 - decimal(314) + decimal(271) == (314) + (271)
ok 6 - decimal(314) - decimal(271)
ok 7 - decimal((314) - (271))
ok 8 - decimal(314) - decimal(271) == (314) - (271)
ok 9 - decimal(314) * decimal(271)
ok 10 - decimal((314) * (271))
ok 11 - decimal_round((314) * (271), 15)
ok 12 - decimal(314) * decimal(271) == (314) * (271)
ok 13 - decimal(314) / decimal(271)
ok 14 - decimal((314) / (271))
ok 15 - decimal_round((314)/(271), 15)
ok 16 - decimal(314) / decimal(271) == (314) / (271)
ok 17 - decimal(65535)
ok 18 - decimal(23456)
ok 19 - decimal(65535) + decimal(23456)
ok 20 - decimal((65535) + (23456))
ok 21 - decimal(65535) + decimal(23456) == (65535) + (23456)
ok 22 - decimal(65535) - decimal(23456)
ok 23 - decimal((65535) - (23456))
ok 24 - decimal(65535) - decimal(23456) == (65535) - (23456)
ok 25 - decimal(65535) * decimal(23456)
ok 26 - decimal((65535) * (23456))
ok 27 - decimal_round((65535) * (23456), 15)
ok 28 - decimal(65535) * decimal(23456) == (65535) * (23456)
ok 29 - decimal(65535) / decimal(23456)
ok 30 - decimal((65535) / (23456))
ok 31 - decimal_round((65535)/(23456), 15)
ok 32 - decimal(65535) / decimal(23456) == (65535) / (23456)
ok 33 - decimal(0)
ok 34 - decimal(1)
ok 35 - decimal(0) + decimal(1)
ok 36 - decimal((0) + (1))
ok 37 - decimal(0) + decimal(1) == (0) + (1)
ok 38 - decimal(0) - decimal(1)
ok 39 - decimal((0) - (1))
ok 40 - decimal(0) - decimal(1) == (0) - (1)
ok 41 - decimal(0) * decimal(1)
ok 42 - decimal((0) * (1))
ok 43 - decimal_round((0) * (1), 15)
ok 44 - decimal(0) * decimal(1) == (0) * (1)
ok 45 - decimal(0) / decimal(1)
ok 46 - decimal((0) / (1))
ok 47 - decimal_round((0)/(1), 15)
ok 48 - decimal(0) / decimal(1) == (0) / (1)
ok 49 - decimal(0)
ok 50 - decimal(-1)
ok 51 - decimal(0) + decimal(-1)
ok 52 - decimal((0) + (-1))
ok 53 - decimal(0) + decimal(-1) == (0) + (-1)
ok 54 - decimal(0) - decimal(-1)
ok 55 - decimal((0) - (-1))
ok 56 - decimal(0) - decimal(-1) == (0) - (-1)
ok 57 - decimal(0) * decimal(-1)
ok 58 - decimal((0) * (-1))
ok 59 - decimal_round((0) * (-1), 15)
ok 60 - decimal(0) * decimal(-1) == (0) * (-1)
ok 61 - decimal(0) / decimal(-1)
ok 62 - decimal((0) / (-1))
ok 63 - decimal_round((0)/(-1), 15)
ok 64 - decimal(0) / decimal(-1) == (0) / (-1)
ok 65 - decimal(-1)
ok 66 - decimal(1)
ok 67 - decimal(-1) + decimal(1)
ok 68 - decimal((-1) + (1))
ok 69 - decimal(-1) + decimal(1) == (-1) + (1)
ok 70 - decimal(-1) - decimal(1)
ok 71 - decimal((-1) - (1))
ok 72 - decimal(-1) - decimal(1) == (-1) - (1)
ok 73 - decimal(-1) * decimal(1)
ok 74 - decimal((-1) * (1))
ok 75 - decimal_round((-1) * (1), 15)
ok 76 - decimal(-1) * decimal(1) == (-1) * (1)
ok 77 - decimal(-1) / decimal(1)
ok 78 - decimal((-1) / (1))
ok 79 - decimal_round((-1)/(1), 15)
ok 80 - decimal(-1) / decimal(1) == (-1) / (1)
ok 81 - decimal(INT_MIN)
ok 82 - decimal(INT_MAX)
ok 83 - decimal(INT_MIN) + decimal(INT_MAX)
ok 84 - decimal((INT_MIN) + (INT_MAX))
ok 85 - decimal(INT_MIN) + decimal(INT_MAX) == (INT_MIN) + (INT_MAX)
ok 86 - decimal(INT_MIN) - decimal(INT_MAX)
ok 87 - decimal((INT_MIN) - (INT_MAX))
ok 88 - decimal(INT_MIN) - decimal(INT_MAX) == (INT_MIN) - (INT_MAX)
ok 89 - decimal(INT_MIN) * decimal(INT_MAX)
ok 90 - decimal((INT_MIN) * (INT_MAX))
ok 91 - decimal_round((INT_MIN) * (INT_MAX), 15)
ok 92 - decimal(INT_MIN) * decimal(INT_MAX) == (INT_MIN) * (INT_MAX)
ok 93 - decimal(INT_MIN) / decimal(INT_MAX)
ok 94 - decimal((INT_MIN) / (INT_MAX))
ok 95 - decimal_round((INT_MIN)/(INT_MAX), 15)
ok 96 - decimal(INT_MIN) / decimal(INT_MAX) == (INT_MIN) / (INT_MAX)
ok 97 - decimal(-314)
ok 98 - decimal(-271)
ok 99 - decimal(-314) + decimal(-271)
ok 100 - decimal((-314) + (-271))
ok 101 - decimal(-314) + decimal(-271) == (-314) + (-271)
ok 102 - decimal(-314) - decimal(-271)
ok 103 - decimal((-314) - (-271))
ok 104 - decimal(-314) - decimal(-271) == (-314) - (-271)
ok 105 - decimal(-314) * decimal(-271)
ok 106 - decimal((-314) * (-271))
ok 107 - decimal_round((-314) * (-271), 15)
ok 108 - decimal(-314) * decimal(-271) == (-314) * (-271)
ok 109 - decimal(-314) / decimal(-271)
ok 110 - decimal((-314) / (-271))
ok 111 - decimal_round((-314)/(-271), 15)
ok 112 - decimal(-314) / decimal(-271) == (-314) / (-271)
ok 113 - decimal(-159615516)
ok 114 - decimal(172916921)
ok 115 - decimal(-159615516) + decimal(172916921)
ok 116 - decimal((-159615516) + (172916921))
ok 117 - decimal(-159615516) + decimal(172916921) == (-159615516) + (172916921)
ok 118 - decimal(-159615516) - decimal(172916921)
ok 119 - decimal((-159615516) - (172916921))
ok 120 - decimal(-159615516) - decimal(172916921) == (-159615516) - (172916921)
ok 121 - decimal(-159615516) * decimal(172916921)
ok 122 - decimal((-159615516) * (172916921))
ok 123 - decimal_round((-159615516) * (172916921), 15)
ok 124 - decimal(-159615516) * decimal(172916921) == (-159615516) * (172916921)
ok 125 - decimal(-159615516) / decimal(172916921)
ok 126 - decimal((-159615516) / (172916921))
ok 127 - decimal_round((-159615516)/(172916921), 15)
ok 128 - decimal(-159615516) / decimal(172916921) == (-159615516) / (172916921)
ok 129 - decimal(1.1)
ok 130 - decimal(2.3)
ok 131 - decimal(1.1) + decimal(2.3)
ok 132 - decimal((1.1) + (2.3))
ok 133 - decimal(1.1) + decimal(2.3) == (1.1) + (2.3)
ok 134 - decimal(1.1) - decimal(2.3)
ok 135 - decimal((1.1) - (2.3))
ok 136 - decimal(1.1) - decimal(2.3) == (1.1) - (2.3)
ok 137 - decimal(1.1) * decimal(2.3)
ok 138 - decimal((1.1) * (2.3))
ok 139 - decimal_round((1.1) * (2.3), 15)
ok 140 - decimal(1.1) * decimal(2.3) == (1.1) * (2.3)
ok 141 - decimal(1.1) / decimal(2.3)
ok 142 - decimal((1.1) / (2.3))
ok 143 - decimal_round((1.1)/(2.3), 15)
ok 144 - decimal(1.1) / decimal(2.3) == (1.1) / (2.3)
ok 145 - decimal(1e10)
ok 146 - decimal(1e10)
ok 147 - decimal(1e10) + decimal(1e10)
ok 148 - decimal((1e10) + (1e10))
ok 149 - decimal(1e10) + decimal(1e10) == (1e10) + (1e10)
ok 150 - decimal(1e10) - decimal(1e10)
ok 151 - decimal((1e10) - (1e10))
ok 152 - decimal(1e10) - decimal(1e10) == (1e10) - (1e10)
ok 153 - decimal(1e10) * decimal(1e10)
ok 154 - decimal((1e10) * (1e10))
ok 155 - decimal_round((1e10) * (1e10), 15)
ok 156 - decimal(1e10) * decimal(1e10) == (1e10) * (1e10)
ok 157 - decimal(1e10) / decimal(1e10)
ok 158 - decimal((1e10) / (1e10))
ok 159 - decimal_round((1e10)/(1e10), 15)
ok 160 - decimal(1e10) / decimal(1e10) == (1e10) / (1e10)
ok 161 - decimal(1.23456789)
ok 162 - decimal(4.567890123)
ok 163 - decimal(1.23456789) + decimal(4.567890123)
ok 164 - decimal((1.23456789) + (4.567890123))
ok 165 - decimal(1.23456789) + decimal(4.567890123) == (1.23456789) + (4.567890123)
ok 166 - decimal(1.23456789) - decimal(4.567890123)
ok 167 - decimal((1.23456789) - (4.567890123))
ok 168 - decimal(1.23456789) - decimal(4.567890123) == (1.23456789) - (4.567890123)
ok 169 - decimal(1.23456789) * decimal(4.567890123)
ok 170 - decimal((1.23456789) * (4.567890123))
ok 171 - decimal_round((1.23456789) * (4.567890123), 15)
ok 172 - decimal(1.23456789) * decimal(4.567890123) == (1.23456789) * (4.567890123)
ok 173 - decimal(1.23456789) / decimal(4.567890123)
ok 174 - decimal((1.23456789) / (4.567890123))
ok 175 - decimal_round((1.23456789)/(4.567890123), 15)
ok 176 - decimal(1.23456789) / decimal(4.567890123) == (1.23456789) / (4.567890123)
ok 177 - decimal_from_string(1e-38)
ok 178 - decimal_from_string(1e-38)
ok 179 - decimal_from_string(2e-38)
ok 180 - decimal_add(1e-38, 1e-38)
ok 181 - decimal_compare(2e-38)
ok 182 - decimal_from_string(-1e-38)
ok 183 - decimal_from_string(1e-38)
ok 184 - decimal_from_string(0)
ok 185 - decimal_add(-1e-38, 1e-38)
ok 186 - decimal_compare(0)
ok 187 - decimal_from_string(1e-39)
ok 188 - decimal_from_string(0)
ok 189 - decimal_from_string(0)
ok 190 - decimal_add(1e-39, 0)
ok 191 - decimal_compare(0)
ok 192 - decimal_from_string(1e-39)
ok 193 - decimal_from_string(1e-38)
ok 194 - decimal_from_string(1e-38)
ok 195 - decimal_add(1e-39, 1e-38)
ok 196 - decimal_compare(1e-38)
ok 197 - decimal_from_string(1e-19)
ok 198 - decimal_from_string(1e-19)
ok 199 - decimal_from_string(1e-38)
ok 200 - decimal_mul(1e-19, 1e-19)
ok 201 - decimal_compare(1e-38)
ok 202 - decimal_from_string(1e37)
ok 203 - decimal_from_string(0)
ok 204 - decimal_from_string(1e37)
ok 205 - decimal_add(1e37, 0)
ok 206 - decimal_compare(1e37)
ok 207 - decimal_from_string(1e18)
ok 208 - decimal_from_string(1e18)
ok 209 - decimal_from_string(1e36)
ok 210 - decimal_mul(1e18, 1e18)
ok 211 - decimal_compare(1e36)
ok 212 - decimal_from_string(10)
ok 213 - decimal_from_string(2)
ok 214 - decimal_from_string(100)
ok 215 - decimal_pow(10, 2)
ok 216 - decimal_compare(100)
ok 217 - decimal_from_string(2)
ok 218 - decimal_from_string(10)
ok 219 - decimal_from_string(1024)
ok 220 - decimal_pow(2, 10)
ok 221 - decimal_compare(1024)
ok 222 - decimal_from_string(100)
ok 223 - decimal_from_string(0.5)
ok 224 - decimal_from_string(10)
ok 225 - decimal_pow(100, 0.5)
ok 226 - decimal_compare(10)
ok 227 - decimal_from_string(100)
ok 228 - decimal_from_string(2)
ok 229 - decimal_log10(100)
ok 230 - decimal_compare(2)
ok 231 - decimal_from_string(10)
ok 232 - decimal_from_string(2.3)
ok 233 - decimal_ln(10)
ok 234 - decimal_compare(2.3)
ok 235 - decimal_from_string(1.1)
ok 236 - decimal_from_string(0.1)
ok 237 - decimal_ln(1.1)
ok 238 - decimal_compare(0.1)
ok 239 - decimal_from_string(1.0000000000000000000000000000000000001)
ok 240 - decimal_from_string(0.0000000000000000000000000000000000001)
ok 241 - decimal_ln(1.0000000000000000000000000000000000001)
ok 242 - decimal_compare(0.0000000000000000000000000000000000001)
ok 243 - decimal_from_string(2)
ok 244 - decimal_from_string(7.39)
ok 245 - decimal_exp(2)
ok 246 - decimal_compare(7.39)
ok 247 - decimal_from_string(100)
ok 248 - decimal_from_string(10)
ok 249 - decimal_sqrt(100)
ok 250 - decimal_compare(10)
ok 251 - decimal construction from 2e38 failure
ok 252 - decimal construction from "1e38" failure
ok 253 - decimal construction from "100000000000000000000000000000000000000" failure
ok 254 - decimal construction from "inf" failure
ok 255 - decimal construction from "NaN" failure
ok 256 - decimal construction from "a random string" failure
ok 257 - decimal construction from LONG_MIN success
ok 258 - decimal construction from LONG_MAX success
ok 259 - decimal construction from ULONG_MAX success
ok 260 - decimal_from_string(9e37)
ok 261 - decimal_from_string(1e37)
ok 262 - decimal_add(9e37, 1e37) - overflow
ok 263 - decimal_from_string(1e19)
ok 264 - decimal_from_string(1e19)
ok 265 - decimal_mul(1e19, 1e19) - overflow
ok 266 - decimal_from_string(1e19)
ok 267 - decimal_from_string(1e-19)
ok 268 - decimal_div(1e19, 1e-19) - overflow
ok 269 - decimal_from_string(0)
ok 270 - decimal_ln(0) - error on wrong operands.
ok 271 - decimal_from_string(-1)
ok 272 - decimal_ln(-1) - error on wrong operands.
ok 273 - decimal_from_string(0)
ok 274 - decimal_log10(0) - error on wrong operands.
ok 275 - decimal_from_string(-1)
ok 276 - decimal_log10(-1) - error on wrong operands.
ok 277 - decimal_from_string(-10)
ok 278 - decimal_sqrt(-10) - error on wrong operands.
    1..66
    ok 1 - Conversion of 18446744073709551615 to decimal and back to uint64 successful
    ok 2 - Conversion back to uint64 correct
    ok 3 - Conversion of 9223372036854775807 to decimal and back to int64 successful
    ok 4 - Conversion back to int64 correct
    ok 5 - Conversion of -9223372036854775808 to decimal and back to int64 successful
    ok 6 - Conversion back to int64 correct
    ok 7 - Conversion of 0 to decimal and back to uint64 successful
    ok 8 - Conversion back to uint64 correct
    ok 9 - Conversion of 0 to decimal and back to int64 successful
    ok 10 - Conversion back to int64 correct
    ok 11 - Conversion of -1 to decimal and back to int64 successful
    ok 12 - Conversion back to int64 correct
    ok 13 - Conversion of 117495185182863386 to decimal and back to uint64 successful
    ok 14 - Conversion back to uint64 correct
    ok 15 - Conversion of 58747592591431693 to decimal and back to int64 successful
    ok 16 - Conversion back to int64 correct
    ok 17 - Conversion of -58747592591431693 to decimal and back to int64 successful
    ok 18 - Conversion back to int64 correct
    ok 19 - Conversion of 778113809158035 to decimal and back to uint64 successful
    ok 20 - Conversion back to uint64 correct
    ok 21 - Conversion of 389056904579017 to decimal and back to int64 successful
    ok 22 - Conversion back to int64 correct
    ok 23 - Conversion of -389056904579017 to decimal and back to int64 successful
    ok 24 - Conversion back to int64 correct
    ok 25 - Conversion of 5222240329919 to decimal and back to uint64 successful
    ok 26 - Conversion back to uint64 correct
    ok 27 - Conversion of 2611120164959 to decimal and back to int64 successful
    ok 28 - Conversion back to int64 correct
    ok 29 - Conversion of -2611120164959 to decimal and back to int64 successful
    ok 30 - Conversion back to int64 correct
    ok 31 - Conversion of 37570074315 to decimal and back to uint64 successful
    ok 32 - Conversion back to uint64 correct
    ok 33 - Conversion of 18785037157 to decimal and back to int64 successful
    ok 34 - Conversion back to int64 correct
    ok 35 - Conversion of -18785037157 to decimal and back to int64 successful
    ok 36 - Conversion back to int64 correct
    ok 37 - Conversion of 274234119 to decimal and back to uint64 successful
    ok 38 - Conversion back to uint64 correct
    ok 39 - Conversion of 137996015 to decimal and back to int64 successful
    ok 40 - Conversion back to int64 correct
    ok 41 - Conversion of -137996015 to decimal and back to int64 successful
    ok 42 - Conversion back to int64 correct
    ok 43 - Conversion of 4294967295 to decimal and back to uint64 successful
    ok 44 - Conversion back to uint64 correct
    ok 45 - Conversion of 2147483647 to decimal and back to int64 successful
    ok 46 - Conversion back to int64 correct
    ok 47 - Conversion of -2147483648 to decimal and back to int64 successful
    ok 48 - Conversion back to int64 correct
    ok 49 - Conversion of 27356479 to decimal and back to uint64 successful
    ok 50 - Conversion back to uint64 correct
    ok 51 - Conversion of 13678239 to decimal and back to int64 successful
    ok 52 - Conversion back to int64 correct
    ok 53 - Conversion of -13678239 to decimal and back to int64 successful
    ok 54 - Conversion back to int64 correct
    ok 55 - Conversion of 181168 to decimal and back to uint64 successful
    ok 56 - Conversion back to uint64 correct
    ok 57 - Conversion of 90584 to decimal and back to int64 successful
    ok 58 - Conversion back to int64 correct
    ok 59 - Conversion of -90584 to decimal and back to int64 successful
    ok 60 - Conversion back to int64 correct
    ok 61 - Conversion of 1215 to decimal and back to uint64 successful
    ok 62 - Conversion back to uint64 correct
    ok 63 - Conversion of 607 to decimal and back to int64 successful
    ok 64 - Conversion back to int64 correct
    ok 65 - Conversion of -607 to decimal and back to int64 successful
    ok 66 - Conversion back to int64 correct
ok 279 - subtests
    1..151
    ok 1 - decimal_len(0)
    ok 2 - decimal_len(0) == len(decimal_pack(0)
    ok 3 - decimal_unpack(decimal_pack(0))
    ok 4 - decimal_unpack(decimal_pack(0)) len
    ok 5 - decimal_unpack(decimal_pack(0)) value
    ok 6 - decimal_unpack(decimal_pack(0)) scale
    ok 7 - decimal_unpack(decimal_pack(0)) precision
    ok 8 - str(decimal_unpack(decimal_pack(0)) == 0
    ok 9 - decimal_len(-0)
    ok 10 - decimal_len(-0) == len(decimal_pack(-0)
    ok 11 - decimal_unpack(decimal_pack(-0))
    ok 12 - decimal_unpack(decimal_pack(-0)) len
    ok 13 - decimal_unpack(decimal_pack(-0)) value
    ok 14 - decimal_unpack(decimal_pack(-0)) scale
    ok 15 - decimal_unpack(decimal_pack(-0)) precision
    ok 16 - str(decimal_unpack(decimal_pack(-0)) == -0
    ok 17 - decimal_len(1)
    ok 18 - decimal_len(1) == len(decimal_pack(1)
    ok 19 - decimal_unpack(decimal_pack(1))
    ok 20 - decimal_unpack(decimal_pack(1)) len
    ok 21 - decimal_unpack(decimal_pack(1)) value
    ok 22 - decimal_unpack(decimal_pack(1)) scale
    ok 23 - decimal_unpack(decimal_pack(1)) precision
    ok 24 - str(decimal_unpack(decimal_pack(1)) == 1
    ok 25 - decimal_len(-1)
    ok 26 - decimal_len(-1) == len(decimal_pack(-1)
    ok 27 - decimal_unpack(decimal_pack(-1))
    ok 28 - decimal_unpack(decimal_pack(-1)) len
    ok 29 - decimal_unpack(decimal_pack(-1)) value
    ok 30 - decimal_unpack(decimal_pack(-1)) scale
    ok 31 - decimal_unpack(decimal_pack(-1)) precision
    ok 32 - str(decimal_unpack(decimal_pack(-1)) == -1
    ok 33 - decimal_len(0.1)
    ok 34 - decimal_len(0.1) == len(decimal_pack(0.1)
    ok 35 - decimal_unpack(decimal_pack(0.1))
    ok 36 - decimal_unpack(decimal_pack(0.1)) len
    ok 37 - decimal_unpack(decimal_pack(0.1)) value
    ok 38 - decimal_unpack(decimal_pack(0.1)) scale
    ok 39 - decimal_unpack(decimal_pack(0.1)) precision
    ok 40 - str(decimal_unpack(decimal_pack(0.1)) == 0.1
    ok 41 - decimal_len(-0.1)
    ok 42 - decimal_len(-0.1) == len(decimal_pack(-0.1)
    ok 43 - decimal_unpack(decimal_pack(-0.1))
    ok 44 - decimal_unpack(decimal_pack(-0.1)) len
    ok 45 - decimal_unpack(decimal_pack(-0.1)) value
    ok 46 - decimal_unpack(decimal_pack(-0.1)) scale
    ok 47 - decimal_unpack(decimal_pack(-0.1)) precision
    ok 48 - str(decimal_unpack(decimal_pack(-0.1)) == -0.1
    ok 49 - decimal_len(2.718281828459045)
    ok 50 - decimal_len(2.718281828459045) == len(decimal_pack(2.718281828459045)
    ok 51 - decimal_unpack(decimal_pack(2.718281828459045))
    ok 52 - decimal_unpack(decimal_pack(2.718281828459045)) len
    ok 53 - decimal_unpack(decimal_pack(2.718281828459045)) value
    ok 54 - decimal_unpack(decimal_pack(2.718281828459045)) scale
    ok 55 - decimal_unpack(decimal_pack(2.718281828459045)) precision
    ok 56 - str(decimal_unpack(decimal_pack(2.718281828459045)) == 2.718281828459045
    ok 57 - decimal_len(-2.718281828459045)
    ok 58 - decimal_len(-2.718281828459045) == len(decimal_pack(-2.718281828459045)
    ok 59 - decimal_unpack(decimal_pack(-2.718281828459045))
    ok 60 - decimal_unpack(decimal_pack(-2.718281828459045)) len
    ok 61 - decimal_unpack(decimal_pack(-2.718281828459045)) value
    ok 62 - decimal_unpack(decimal_pack(-2.718281828459045)) scale
    ok 63 - decimal_unpack(decimal_pack(-2.718281828459045)) precision
    ok 64 - str(decimal_unpack(decimal_pack(-2.718281828459045)) == -2.718281828459045
    ok 65 - decimal_len(3.141592653589793)
    ok 66 - decimal_len(3.141592653589793) == len(decimal_pack(3.141592653589793)
    ok 67 - decimal_unpack(decimal_pack(3.141592653589793))
    ok 68 - decimal_unpack(decimal_pack(3.141592653589793)) len
    ok 69 - decimal_unpack(decimal_pack(3.141592653589793)) value
    ok 70 - decimal_unpack(decimal_pack(3.141592653589793)) scale
    ok 71 - decimal_unpack(decimal_pack(3.141592653589793)) precision
    ok 72 - str(decimal_unpack(decimal_pack(3.141592653589793)) == 3.141592653589793
    ok 73 - decimal_len(-3.141592653589793)
    ok 74 - decimal_len(-3.141592653589793) == len(decimal_pack(-3.141592653589793)
    ok 75 - decimal_unpack(decimal_pack(-3.141592653589793))
    ok 76 - decimal_unpack(decimal_pack(-3.141592653589793)) len
    ok 77 - decimal_unpack(decimal_pack(-3.141592653589793)) value
    ok 78 - decimal_unpack(decimal_pack(-3.141592653589793)) scale
    ok 79 - decimal_unpack(decimal_pack(-3.141592653589793)) precision
    ok 80 - str(decimal_unpack(decimal_pack(-3.141592653589793)) == -3.141592653589793
    ok 81 - decimal_len(1234567891234567890.0987654321987654321)
    ok 82 - decimal_len(1234567891234567890.0987654321987654321) == len(decimal_pack(1234567891234567890.0987654321987654321)
    ok 83 - decimal_unpack(decimal_pack(1234567891234567890.0987654321987654321))
    ok 84 - decimal_unpack(decimal_pack(1234567891234567890.0987654321987654321)) len
    ok 85 - decimal_unpack(decimal_pack(1234567891234567890.0987654321987654321)) value
    ok 86 - decimal_unpack(decimal_pack(1234567891234567890.0987654321987654321)) scale
    ok 87 - decimal_unpack(decimal_pack(1234567891234567890.0987654321987654321)) precision
    ok 88 - str(decimal_unpack(decimal_pack(1234567891234567890.0987654321987654321)) == 1234567891234567890.0987654321987654321
    ok 89 - decimal_len(-1234567891234567890.0987654321987654321)
    ok 90 - decimal_len(-1234567891234567890.0987654321987654321) == len(decimal_pack(-1234567891234567890.0987654321987654321)
    ok 91 - decimal_unpack(decimal_pack(-1234567891234567890.0987654321987654321))
    ok 92 - decimal_unpack(decimal_pack(-1234567891234567890.0987654321987654321)) len
    ok 93 - decimal_unpack(decimal_pack(-1234567891234567890.0987654321987654321)) value
    ok 94 - decimal_unpack(decimal_pack(-1234567891234567890.0987654321987654321)) scale
    ok 95 - decimal_unpack(decimal_pack(-1234567891234567890.0987654321987654321)) precision
    ok 96 - str(decimal_unpack(decimal_pack(-1234567891234567890.0987654321987654321)) == -1234567891234567890.0987654321987654321
    ok 97 - decimal_len(0.0000000000000000000000000000000000001)
    ok 98 - decimal_len(0.0000000000000000000000000000000000001) == len(decimal_pack(0.0000000000000000000000000000000000001)
    ok 99 - decimal_unpack(decimal_pack(0.0000000000000000000000000000000000001))
    ok 100 - decimal_unpack(decimal_pack(0.0000000000000000000000000000000000001)) len
    ok 101 - decimal_unpack(decimal_pack(0.0000000000000000000000000000000000001)) value
    ok 102 - decimal_unpack(decimal_pack(0.0000000000000000000000000000000000001)) scale
    ok 103 - decimal_unpack(decimal_pack(0.0000000000000000000000000000000000001)) precision
    ok 104 - str(decimal_unpack(decimal_pack(0.0000000000000000000000000000000000001)) == 0.0000000000000000000000000000000000001
    ok 105 - decimal_len(-0.0000000000000000000000000000000000001)
    ok 106 - decimal_len(-0.0000000000000000000000000000000000001) == len(decimal_pack(-0.0000000000000000000000000000000000001)
    ok 107 - decimal_unpack(decimal_pack(-0.0000000000000000000000000000000000001))
    ok 108 - decimal_unpack(decimal_pack(-0.0000000000000000000000000000000000001)) len
    ok 109 - decimal_unpack(decimal_pack(-0.0000000000000000000000000000000000001)) value
    ok 110 - decimal_unpack(decimal_pack(-0.0000000000000000000000000000000000001)) scale
    ok 111 - decimal_unpack(decimal_pack(-0.0000000000000000000000000000000000001)) precision
    ok 112 - str(decimal_unpack(decimal_pack(-0.0000000000000000000000000000000000001)) == -0.0000000000000000000000000000000000001
    ok 113 - decimal_len(0.00000000000000000000000000000000000001)
    ok 114 - decimal_len(0.00000000000000000000000000000000000001) == len(decimal_pack(0.00000000000000000000000000000000000001)
    ok 115 - decimal_unpack(decimal_pack(0.00000000000000000000000000000000000001))
    ok 116 - decimal_unpack(decimal_pack(0.00000000000000000000000000000000000001)) len
    ok 117 - decimal_unpack(decimal_pack(0.00000000000000000000000000000000000001)) value
    ok 118 - decimal_unpack(decimal_pack(0.00000000000000000000000000000000000001)) scale
    ok 119 - decimal_unpack(decimal_pack(0.00000000000000000000000000000000000001)) precision
    ok 120 - str(decimal_unpack(decimal_pack(0.00000000000000000000000000000000000001)) == 0.00000000000000000000000000000000000001
    ok 121 - decimal_len(-0.00000000000000000000000000000000000001)
    ok 122 - decimal_len(-0.00000000000000000000000000000000000001) == len(decimal_pack(-0.00000000000000000000000000000000000001)
    ok 123 - decimal_unpack(decimal_pack(-0.00000000000000000000000000000000000001))
    ok 124 - decimal_unpack(decimal_pack(-0.00000000000000000000000000000000000001)) len
    ok 125 - decimal_unpack(decimal_pack(-0.00000000000000000000000000000000000001)) value
    ok 126 - decimal_unpack(decimal_pack(-0.00000000000000000000000000000000000001)) scale
    ok 127 - decimal_unpack(decimal_pack(-0.00000000000000000000000000000000000001)) precision
    ok 128 - str(decimal_unpack(decimal_pack(-0.00000000000000000000000000000000000001)) == -0.00000000000000000000000000000000000001
    ok 129 - decimal_len(99999999999999999999999999999999999999)
    ok 130 - decimal_len(99999999999999999999999999999999999999) == len(decimal_pack(99999999999999999999999999999999999999)
    ok 131 - decimal_unpack(decimal_pack(99999999999999999999999999999999999999))
    ok 132 - decimal_unpack(decimal_pack(99999999999999999999999999999999999999)) len
    ok 133 - decimal_unpack(decimal_pack(99999999999999999999999999999999999999)) value
    ok 134 - decimal_unpack(decimal_pack(99999999999999999999999999999999999999)) scale
    ok 135 - decimal_unpack(decimal_pack(99999999999999999999999999999999999999)) precision
    ok 136 - str(decimal_unpack(decimal_pack(99999999999999999999999999999999999999)) == 99999999999999999999999999999999999999
    ok 137 - decimal_len(-99999999999999999999999999999999999999)
    ok 138 - decimal_len(-99999999999999999999999999999999999999) == len(decimal_pack(-99999999999999999999999999999999999999)
    ok 139 - decimal_unpack(decimal_pack(-99999999999999999999999999999999999999))
    ok 140 - decimal_unpack(decimal_pack(-99999999999999999999999999999999999999)) len
    ok 141 - decimal_unpack(decimal_pack(-99999999999999999999999999999999999999)) value
    ok 142 - decimal_unpack(decimal_pack(-99999999999999999999999999999999999999)) scale
    ok 143 - decimal_unpack(decimal_pack(-99999999999999999999999999999999999999)) precision
    ok 144 - str(decimal_unpack(decimal_pack(-99999999999999999999999999999999999999)) == -99999999999999999999999999999999999999
    ok 145 - decimal_len() is small for positive exponent decimal
    ok 146 - positive exponent decimal length
    ok 147 - decimal_unpack() of a positive exponent decimal
    ok 148 - decimal_unpack uses every byte packed by decimal_pack
    ok 149 - positive exponent number is packed/unpacked correctly
    ok 150 - unpack malformed decimal fails
    ok 151 - decode malformed decimal preserves buffer position
ok 280 - subtests
    1..198
    ok 1 - mp_sizeof_decimal(0)
    ok 2 - mp_sizeof_decimal(0) == len(mp_encode_decimal(0))
    ok 3 - mp_next(mp_encode(0))
    ok 4 - mp_decode(mp_encode(0) len
    ok 5 - mp_decode(mp_encode(0)) value
    ok 6 - mp_decode(mp_encode(0)) scale
    ok 7 - str(mp_decode(mp_encode(0))) == 0
    ok 8 - mp_ext_type is MP_DECIMAL
    ok 9 - decimal_unpack() after mp_decode_extl()
    ok 10 - decimal_unpack() after mp_decode_extl() value
    ok 11 - decimal_unpack() after mp_decode_extl() len
    ok 12 - mp_sizeof_decimal(-0)
    ok 13 - mp_sizeof_decimal(-0) == len(mp_encode_decimal(-0))
    ok 14 - mp_next(mp_encode(-0))
    ok 15 - mp_decode(mp_encode(-0) len
    ok 16 - mp_decode(mp_encode(-0)) value
    ok 17 - mp_decode(mp_encode(-0)) scale
    ok 18 - str(mp_decode(mp_encode(-0))) == -0
    ok 19 - mp_ext_type is MP_DECIMAL
    ok 20 - decimal_unpack() after mp_decode_extl()
    ok 21 - decimal_unpack() after mp_decode_extl() value
    ok 22 - decimal_unpack() after mp_decode_extl() len
    ok 23 - mp_sizeof_decimal(1)
    ok 24 - mp_sizeof_decimal(1) == len(mp_encode_decimal(1))
    ok 25 - mp_next(mp_encode(1))
    ok 26 - mp_decode(mp_encode(1) len
    ok 27 - mp_decode(mp_encode(1)) value
    ok 28 - mp_decode(mp_encode(1)) scale
    ok 29 - str(mp_decode(mp_encode(1))) == 1
    ok 30 - mp_ext_type is MP_DECIMAL
    ok 31 - decimal_unpack() after mp_decode_extl()
    ok 32 - decimal_unpack() after mp_decode_extl() value
    ok 33 - decimal_unpack() after mp_decode_extl() len
    ok 34 - mp_sizeof_decimal(-1)
    ok 35 - mp_sizeof_decimal(-1) == len(mp_encode_decimal(-1))
    ok 36 - mp_next(mp_encode(-1))
    ok 37 - mp_decode(mp_encode(-1) len
    ok 38 - mp_decode(mp_encode(-1)) value
    ok 39 - mp_decode(mp_encode(-1)) scale
    ok 40 - str(mp_decode(mp_encode(-1))) == -1
    ok 41 - mp_ext_type is MP_DECIMAL
    ok 42 - decimal_unpack() after mp_decode_extl()
    ok 43 - decimal_unpack() after mp_decode_extl() value
    ok 44 - decimal_unpack() after mp_decode_extl() len
    ok 45 - mp_sizeof_decimal(0.1)
    ok 46 - mp_sizeof_decimal(0.1) == len(mp_encode_decimal(0.1))
    ok 47 - mp_next(mp_encode(0.1))
    ok 48 - mp_decode(mp_encode(0.1) len
    ok 49 - mp_decode(mp_encode(0.1)) value
    ok 50 - mp_decode(mp_encode(0.1)) scale
    ok 51 - str(mp_decode(mp_encode(0.1))) == 0.1
    ok 52 - mp_ext_type is MP_DECIMAL
    ok 53 - decimal_unpack() after mp_decode_extl()
    ok 54 - decimal_unpack() after mp_decode_extl() value
    ok 55 - decimal_unpack() after mp_decode_extl() len
    ok 56 - mp_sizeof_decimal(-0.1)
    ok 57 - mp_sizeof_decimal(-0.1) == len(mp_encode_decimal(-0.1))
    ok 58 - mp_next(mp_encode(-0.1))
    ok 59 - mp_decode(mp_encode(-0.1) len
    ok 60 - mp_decode(mp_encode(-0.1)) value
    ok 61 - mp_decode(mp_encode(-0.1)) scale
    ok 62 - str(mp_decode(mp_encode(-0.1))) == -0.1
    ok 63 - mp_ext_type is MP_DECIMAL
    ok 64 - decimal_unpack() after mp_decode_extl()
    ok 65 - decimal_unpack() after mp_decode_extl() value
    ok 66 - decimal_unpack() after mp_decode_extl() len
    ok 67 - mp_sizeof_decimal(2.718281828459045)
    ok 68 - mp_sizeof_decimal(2.718281828459045) == len(mp_encode_decimal(2.718281828459045))
    ok 69 - mp_next(mp_encode(2.718281828459045))
    ok 70 - mp_decode(mp_encode(2.718281828459045) len
    ok 71 - mp_decode(mp_encode(2.718281828459045)) value
    ok 72 - mp_decode(mp_encode(2.718281828459045)) scale
    ok 73 - str(mp_decode(mp_encode(2.718281828459045))) == 2.718281828459045
    ok 74 - mp_ext_type is MP_DECIMAL
    ok 75 - decimal_unpack() after mp_decode_extl()
    ok 76 - decimal_unpack() after mp_decode_extl() value
    ok 77 - decimal_unpack() after mp_decode_extl() len
    ok 78 - mp_sizeof_decimal(-2.718281828459045)
    ok 79 - mp_sizeof_decimal(-2.718281828459045) == len(mp_encode_decimal(-2.718281828459045))
    ok 80 - mp_next(mp_encode(-2.718281828459045))
    ok 81 - mp_decode(mp_encode(-2.718281828459045) len
    ok 82 - mp_decode(mp_encode(-2.718281828459045)) value
    ok 83 - mp_decode(mp_encode(-2.718281828459045)) scale
    ok 84 - str(mp_decode(mp_encode(-2.718281828459045))) == -2.718281828459045
    ok 85 - mp_ext_type is MP_DECIMAL
    ok 86 - decimal_unpack() after mp_decode_extl()
    ok 87 - decimal_unpack() after mp_decode_extl() value
    ok 88 - decimal_unpack() after mp_decode_extl() len
    ok 89 - mp_sizeof_decimal(3.141592653589793)
    ok 90 - mp_sizeof_decimal(3.141592653589793) == len(mp_encode_decimal(3.141592653589793))
    ok 91 - mp_next(mp_encode(3.141592653589793))
    ok 92 - mp_decode(mp_encode(3.141592653589793) len
    ok 93 - mp_decode(mp_encode(3.141592653589793)) value
    ok 94 - mp_decode(mp_encode(3.141592653589793)) scale
    ok 95 - str(mp_decode(mp_encode(3.141592653589793))) == 3.141592653589793
    ok 96 - mp_ext_type is MP_DECIMAL
    ok 97 - decimal_unpack() after mp_decode_extl()
    ok 98 - decimal_unpack() after mp_decode_extl() value
    ok 99 - decimal_unpack() after mp_decode_extl() len
    ok 100 - mp_sizeof_decimal(-3.141592653589793)
    ok 101 - mp_sizeof_decimal(-3.141592653589793) == len(mp_encode_decimal(-3.141592653589793))
    ok 102 - mp_next(mp_encode(-3.141592653589793))
    ok 103 - mp_decode(mp_encode(-3.141592653589793) len
    ok 104 - mp_decode(mp_encode(-3.141592653589793)) value
    ok 105 - mp_decode(mp_encode(-3.141592653589793)) scale
    ok 106 - str(mp_decode(mp_encode(-3.141592653589793))) == -3.141592653589793
    ok 107 - mp_ext_type is MP_DECIMAL
    ok 108 - decimal_unpack() after mp_decode_extl()
    ok 109 - decimal_unpack() after mp_decode_extl() value
    ok 110 - decimal_unpack() after mp_decode_extl() len
    ok 111 - mp_sizeof_decimal(1234567891234567890.0987654321987654321)
    ok 112 - mp_sizeof_decimal(1234567891234567890.0987654321987654321) == len(mp_encode_decimal(1234567891234567890.0987654321987654321))
    ok 113 - mp_next(mp_encode(1234567891234567890.0987654321987654321))
    ok 114 - mp_decode(mp_encode(1234567891234567890.0987654321987654321) len
    ok 115 - mp_decode(mp_encode(1234567891234567890.0987654321987654321)) value
    ok 116 - mp_decode(mp_encode(1234567891234567890.0987654321987654321)) scale
    ok 117 - str(mp_decode(mp_encode(1234567891234567890.0987654321987654321))) == 1234567891234567890.0987654321987654321
    ok 118 - mp_ext_type is MP_DECIMAL
    ok 119 - decimal_unpack() after mp_decode_extl()
    ok 120 - decimal_unpack() after mp_decode_extl() value
    ok 121 - decimal_unpack() after mp_decode_extl() len
    ok 122 - mp_sizeof_decimal(-1234567891234567890.0987654321987654321)
    ok 123 - mp_sizeof_decimal(-1234567891234567890.0987654321987654321) == len(mp_encode_decimal(-1234567891234567890.0987654321987654321))
    ok 124 - mp_next(mp_encode(-1234567891234567890.0987654321987654321))
    ok 125 - mp_decode(mp_encode(-1234567891234567890.0987654321987654321) len
    ok 126 - mp_decode(mp_encode(-1234567891234567890.0987654321987654321)) value
    ok 127 - mp_decode(mp_encode(-1234567891234567890.0987654321987654321)) scale
    ok 128 - str(mp_decode(mp_encode(-1234567891234567890.0987654321987654321))) == -1234567891234567890.0987654321987654321
    ok 129 - mp_ext_type is MP_DECIMAL
    ok 130 - decimal_unpack() after mp_decode_extl()
    ok 131 - decimal_unpack() after mp_decode_extl() value
    ok 132 - decimal_unpack() after mp_decode_extl() len
    ok 133 - mp_sizeof_decimal(0.0000000000000000000000000000000000001)
    ok 134 - mp_sizeof_decimal(0.0000000000000000000000000000000000001) == len(mp_encode_decimal(0.0000000000000000000000000000000000001))
    ok 135 - mp_next(mp_encode(0.0000000000000000000000000000000000001))
    ok 136 - mp_decode(mp_encode(0.0000000000000000000000000000000000001) len
    ok 137 - mp_decode(mp_encode(0.0000000000000000000000000000000000001)) value
    ok 138 - mp_decode(mp_encode(0.0000000000000000000000000000000000001)) scale
    ok 139 - str(mp_decode(mp_encode(0.0000000000000000000000000000000000001))) == 0.0000000000000000000000000000000000001
    ok 140 - mp_ext_type is MP_DECIMAL
    ok 141 - decimal_unpack() after mp_decode_extl()
    ok 142 - decimal_unpack() after mp_decode_extl() value
    ok 143 - decimal_unpack() after mp_decode_extl() len
    ok 144 - mp_sizeof_decimal(-0.0000000000000000000000000000000000001)
    ok 145 - mp_sizeof_decimal(-0.0000000000000000000000000000000000001) == len(mp_encode_decimal(-0.0000000000000000000000000000000000001))
    ok 146 - mp_next(mp_encode(-0.0000000000000000000000000000000000001))
    ok 147 - mp_decode(mp_encode(-0.0000000000000000000000000000000000001) len
    ok 148 - mp_decode(mp_encode(-0.0000000000000000000000000000000000001)) value
    ok 149 - mp_decode(mp_encode(-0.0000000000000000000000000000000000001)) scale
    ok 150 - str(mp_decode(mp_encode(-0.0000000000000000000000000000000000001))) == -0.0000000000000000000000000000000000001
    ok 151 - mp_ext_type is MP_DECIMAL
    ok 152 - decimal_unpack() after mp_decode_extl()
    ok 153 - decimal_unpack() after mp_decode_extl() value
    ok 154 - decimal_unpack() after mp_decode_extl() len
    ok 155 - mp_sizeof_decimal(0.00000000000000000000000000000000000001)
    ok 156 - mp_sizeof_decimal(0.00000000000000000000000000000000000001) == len(mp_encode_decimal(0.00000000000000000000000000000000000001))
    ok 157 - mp_next(mp_encode(0.00000000000000000000000000000000000001))
    ok 158 - mp_decode(mp_encode(0.00000000000000000000000000000000000001) len
    ok 159 - mp_decode(mp_encode(0.00000000000000000000000000000000000001)) value
    ok 160 - mp_decode(mp_encode(0.00000000000000000000000000000000000001)) scale
    ok 161 - str(mp_decode(mp_encode(0.00000000000000000000000000000000000001))) == 0.00000000000000000000000000000000000001
    ok 162 - mp_ext_type is MP_DECIMAL
    ok 163 - decimal_unpack() after mp_decode_extl()
    ok 164 - decimal_unpack() after mp_decode_extl() value
    ok 165 - decimal_unpack() after mp_decode_extl() len
    ok 166 - mp_sizeof_decimal(-0.00000000000000000000000000000000000001)
    ok 167 - mp_sizeof_decimal(-0.00000000000000000000000000000000000001) == len(mp_encode_decimal(-0.00000000000000000000000000000000000001))
    ok 168 - mp_next(mp_encode(-0.00000000000000000000000000000000000001))
    ok 169 - mp_decode(mp_encode(-0.00000000000000000000000000000000000001) len
    ok 170 - mp_decode(mp_encode(-0.00000000000000000000000000000000000001)) value
    ok 171 - mp_decode(mp_encode(-0.00000000000000000000000000000000000001)) scale
    ok 172 - str(mp_decode(mp_encode(-0.00000000000000000000000000000000000001))) == -0.00000000000000000000000000000000000001
    ok 173 - mp_ext_type is MP_DECIMAL
    ok 174 - decimal_unpack() after mp_decode_extl()
    ok 175 - decimal_unpack() after mp_decode_extl() value
    ok 176 - decimal_unpack() after mp_decode_extl() len
    ok 177 - mp_sizeof_decimal(99999999999999999999999999999999999999)
    ok 178 - mp_sizeof_decimal(99999999999999999999999999999999999999) == len(mp_encode_decimal(99999999999999999999999999999999999999))
    ok 179 - mp_next(mp_encode(99999999999999999999999999999999999999))
    ok 180 - mp_decode(mp_encode(99999999999999999999999999999999999999) len
    ok 181 - mp_decode(mp_encode(99999999999999999999999999999999999999)) value
    ok 182 - mp_decode(mp_encode(99999999999999999999999999999999999999)) scale
    ok 183 - str(mp_decode(mp_encode(99999999999999999999999999999999999999))) == 99999999999999999999999999999999999999
    ok 184 - mp_ext_type is MP_DECIMAL
    ok 185 - decimal_unpack() after mp_decode_extl()
    ok 186 - decimal_unpack() after mp_decode_extl() value
    ok 187 - decimal_unpack() after mp_decode_extl() len
    ok 188 - mp_sizeof_decimal(-99999999999999999999999999999999999999)
    ok 189 - mp_sizeof_decimal(-99999999999999999999999999999999999999) == len(mp_encode_decimal(-99999999999999999999999999999999999999))
    ok 190 - mp_next(mp_encode(-99999999999999999999999999999999999999))
    ok 191 - mp_decode(mp_encode(-99999999999999999999999999999999999999) len
    ok 192 - mp_decode(mp_encode(-99999999999999999999999999999999999999)) value
    ok 193 - mp_decode(mp_encode(-99999999999999999999999999999999999999)) scale
    ok 194 - str(mp_decode(mp_encode(-99999999999999999999999999999999999999))) == -99999999999999999999999999999999999999
    ok 195 - mp_ext_type is MP_DECIMAL
    ok 196 - decimal_unpack() after mp_decode_extl()
    ok 197 - decimal_unpack() after mp_decode_extl() value
    ok 198 - decimal_unpack() after mp_decode_extl() len
ok 281 - subtests
    1..5
	*** test_mp_print ***
    ok 1 - correct mp_snprint size with empty buffer
    ok 2 - correct mp_snprint size
    ok 3 - correct mp_snprint result
    ok 4 - correct mp_fprint size
    ok 5 - correct mp_fprint result
	*** test_mp_print: done ***
ok 282 - subtests
ok 283 - strtodec("15.e") success
ok 284 - strtodec("15.e") - expected end of valid string at 'e'
ok 285 - strtodec("15.e+") success
ok 286 - strtodec("15.e+") - expected end of valid string at 'e'
ok 287 - strtodec(".0e-1") success
ok 288 - strtodec(".0e-1") - expected end of valid string at '\0'
ok 289 - strtodec("1.1003 2.2") success
ok 290 - strtodec("1.1003 2.2") - expected end of valid string at ' '
ok 291 - strtodec("cCC") failure
ok 292 - strtodec("cCC") - expected end of valid string at 'c'
ok 293 - strtodec(".e--") failure
ok 294 - strtodec(".e--") - expected end of valid string at '.'
ok 295 - strtodec("NaN") failure
ok 296 - strtodec("NaN") - expected end of valid string at 'N'
ok 297 - strtodec("inf") failure
ok 298 - strtodec("inf") - expected end of valid string at 'i'
ok 299 - decimal_from_string(1)
ok 300 - decimal_is_int(1) - expected true
ok 301 - decimal_from_string(1.0000)
ok 302 - decimal_is_int(1.0000) - expected true
ok 303 - decimal_from_string(1.0000001)
ok 304 - decimal_is_int(1.0000001) - expected false