%spellout-numbering:
0: =%spellout-cardinal=;

%spellout-cardinal:
-x: ->>;
x.x: <<.>>;
0: =##0=;
1,000:                     <0<[.>%%digits3>] thousand;
1,000,000:                 <0<[.>%%digits6>] million;
1,000,000,000:             <0<[.>%%digits9>] billion;
1,000,000,000,000:         <0<[.>%%digits12>] trillion;
1,000,000,000,000,000:     <0<[.>%%digits15>] quadrillion;
1,000,000,000,000,000,000: =#,###0=;

%%digits1:
0: 0;
1: 1;
2: 2;
3: 3;
4: 4;
5: 5;
6: 6;
7: 7;
8: 8;
9: 9;

%%digits2:
0:  0=%%digits1=;
10: <%%digits1<[>%%digits1>];

%%digits3:
0:   00=%%digits1=;
10:  0<%%digits1<[>%%digits1>];
100: <%%digits1<[>%%digits2>];

%%digits4:
0:    000=%%digits1=;
10:   00<%%digits1<[>%%digits1>];
100:  0<%%digits1<[>%%digits2>];
1000: <%%digits1<[>%%digits3>];

%%digits5:
0:     0000=%%digits1=;
10:    000<%%digits1<[>%%digits1>];
100:   00<%%digits1<[>%%digits2>];
1000:  0<%%digits1<[>%%digits3>];
10000: <%%digits1<[>%%digits4>];

%%digits6:
0:      00000=%%digits1=;
10:     0000<%%digits1<[>%%digits1>];
100:    000<%%digits1<[>%%digits2>];
1000:   00<%%digits1<[>%%digits3>];
10000:  0<%%digits1<[>%%digits4>];
100000: <%%digits1<[>%%digits5>];

%%digits7:
0:       000000=%%digits1=;
10:      00000<%%digits1<[>%%digits1>];
100:     0000<%%digits1<[>%%digits2>];
1000:    000<%%digits1<[>%%digits3>];
10000:   00<%%digits1<[>%%digits4>];
100000:  0<%%digits1<[>%%digits5>];
1000000: <%%digits1<[>%%digits6>];

%%digits8:
0:        0000000=%%digits1=;
10:       000000<%%digits1<[>%%digits1>];
100:      00000<%%digits1<[>%%digits2>];
1000:     0000<%%digits1<[>%%digits3>];
10000:    000<%%digits1<[>%%digits4>];
100000:   00<%%digits1<[>%%digits5>];
1000000:  0<%%digits1<[>%%digits6>];
10000000: <%%digits1<[>%%digits7>];

%%digits9:
0:         00000000=%%digits1=;
10:        0000000<%%digits1<[>%%digits1>];
100:       000000<%%digits1<[>%%digits2>];
1000:      00000<%%digits1<[>%%digits3>];
10000:     0000<%%digits1<[>%%digits4>];
100000:    000<%%digits1<[>%%digits5>];
1000000:   00<%%digits1<[>%%digits6>];
10000000:  0<%%digits1<[>%%digits7>];
100000000: <%%digits1<[>%%digits8>];

%%digits10:
0:          000000000=%%digits1=;
10:         00000000<%%digits1<[>%%digits1>];
100:        0000000<%%digits1<[>%%digits2>];
1000:       000000<%%digits1<[>%%digits3>];
10000:      00000<%%digits1<[>%%digits4>];
100000:     0000<%%digits1<[>%%digits5>];
1000000:    000<%%digits1<[>%%digits6>];
10000000:   00<%%digits1<[>%%digits7>];
100000000:  0<%%digits1<[>%%digits8>];
1000000000: <%%digits1<[>%%digits9>];

%%digits11:
0:           0000000000=%%digits1=;
10:          000000000<%%digits1<[>%%digits1>];
100:         00000000<%%digits1<[>%%digits2>];
1000:        0000000<%%digits1<[>%%digits3>];
10000:       000000<%%digits1<[>%%digits4>];
100000:      00000<%%digits1<[>%%digits5>];
1000000:     0000<%%digits1<[>%%digits6>];
10000000:    000<%%digits1<[>%%digits7>];
100000000:   00<%%digits1<[>%%digits8>];
1000000000:  0<%%digits1<[>%%digits9>];
10000000000: <%%digits1<[>%%digits10>];

%%digits12:
0:            00000000000=%%digits1=;
10:           0000000000<%%digits1<[>%%digits1>];
100:          000000000<%%digits1<[>%%digits2>];
1000:         00000000<%%digits1<[>%%digits3>];
10000:        0000000<%%digits1<[>%%digits4>];
100000:       000000<%%digits1<[>%%digits5>];
1000000:      00000<%%digits1<[>%%digits6>];
10000000:     0000<%%digits1<[>%%digits7>];
100000000:    000<%%digits1<[>%%digits8>];
1000000000:   00<%%digits1<[>%%digits9>];
10000000000:  0<%%digits1<[>%%digits10>];
100000000000: <%%digits1<[>%%digits11>];

%%digits13:
0:             000000000000=%%digits1=;
10:            00000000000<%%digits1<[>%%digits1>];
100:           0000000000<%%digits1<[>%%digits2>];
1000:          000000000<%%digits1<[>%%digits3>];
10000:         00000000<%%digits1<[>%%digits4>];
100000:        0000000<%%digits1<[>%%digits5>];
1000000:       000000<%%digits1<[>%%digits6>];
10000000:      00000<%%digits1<[>%%digits7>];
100000000:     0000<%%digits1<[>%%digits8>];
1000000000:    000<%%digits1<[>%%digits9>];
10000000000:   00<%%digits1<[>%%digits10>];
100000000000:  0<%%digits1<[>%%digits11>];
1000000000000: <%%digits1<[>%%digits12>];

%%digits14:
0:              0000000000000=%%digits1=;
10:             000000000000<%%digits1<[>%%digits1>];
100:            00000000000<%%digits1<[>%%digits2>];
1000:           0000000000<%%digits1<[>%%digits3>];
10000:          000000000<%%digits1<[>%%digits4>];
100000:         00000000<%%digits1<[>%%digits5>];
1000000:        0000000<%%digits1<[>%%digits6>];
10000000:       000000<%%digits1<[>%%digits7>];
100000000:      00000<%%digits1<[>%%digits8>];
1000000000:     0000<%%digits1<[>%%digits9>];
10000000000:    000<%%digits1<[>%%digits10>];
100000000000:   00<%%digits1<[>%%digits11>];
1000000000000:  0<%%digits1<[>%%digits12>];
10000000000000: <%%digits1<[>%%digits13>];

%%digits15:
0:               00000000000000=%%digits1=;
10:              0000000000000<%%digits1<[>%%digits1>];
100:             000000000000<%%digits1<[>%%digits2>];
1000:            00000000000<%%digits1<[>%%digits3>];
10000:           0000000000<%%digits1<[>%%digits4>];
100000:          000000000<%%digits1<[>%%digits5>];
1000000:         00000000<%%digits1<[>%%digits6>];
10000000:        0000000<%%digits1<[>%%digits7>];
100000000:       000000<%%digits1<[>%%digits8>];
1000000000:      00000<%%digits1<[>%%digits9>];
10000000000:     0000<%%digits1<[>%%digits10>];
100000000000:    000<%%digits1<[>%%digits11>];
1000000000000:   00<%%digits1<[>%%digits12>];
10000000000000:  0<%%digits1<[>%%digits13>];
100000000000000: <%%digits1<[>%%digits14>];

%%lenient-parse:
&[last primary ignorable ] << ' ' << ',' << '-' << '­';
