@logue/smfplayer
Version:
smfplayer.js is JavaScript based Standard Midi Player for WebMidiLink based synthesizer.
2,396 lines (2,395 loc) • 387 kB
JavaScript
/**
* @logue/smfplayer
*
* @description smfplayer.js is JavaScript based Standard Midi Player for WebMidiLink based synthesizer.
* @author iyama, Logue
* @license MIT
* @version 0.7.4
* @see {@link https://logue.dev/smfplayer.js/}
*/
class u0 {
/** @type {Record<number, string>} Event Name */
static events = {};
/**
* @param {string} subtype event subtype name.
* @param {number} deltaTime delta time.
* @param {number} time time.
*/
constructor(x, B, o) {
this.subtype = x, this.deltaTime = B, this.time = o;
}
}
class K extends u0 {
/** @type {Record<number, string>} Event Name */
static table = {
128: "NoteOff",
144: "NoteOn",
160: "PolyPressure",
176: "ControllerChange",
192: "ProgramChange",
208: "ChannelPressure",
224: "PitchBend",
240: "SystemCommonMessage"
};
/**
* @param {string} subtype
* @param {number} deltaTime delta time.
* @param {number} time time.
* @param {number} channel
* @param {number} optParameter1
* @param {number} optParameter2
*/
constructor(x, B, o, g, a = void 0, t = void 0) {
super(x, B, o), this.channel = g, this.parameter1 = a, this.parameter2 = t;
}
}
class E0 extends u0 {
/** @type {Record<number, string>} Event Name */
static table = {
0: "SystemExclusive",
1: "TimeCode",
2: "SongPosition",
3: "SongSelect",
4: void 0,
5: void 0,
6: "TuneRequest",
7: "SystemExclusive(F7)",
8: "TimingClock",
9: void 0,
10: "Start",
11: "Continue",
12: "Stop",
13: void 0,
14: "ActiveSensing"
};
/**
* @param {string} subtype
* @param {number} deltaTime delta time.
* @param {number} time time.
* @param {Uint8Array} data
*/
constructor(x, B, o, g) {
super(x, B, o), this.data = g;
}
}
class M extends u0 {
/** @type {Record<number, string>} Event Name */
static table = {
0: "SequenceNumber",
1: "TextEvent",
2: "CopyrightNotice",
3: "SequenceTrackName",
4: "InstrumentName",
5: "Lyrics",
6: "Marker",
7: "CuePoint",
8: "ProgramName",
9: "DeviceName",
32: "MidiChannelPrefix",
33: "ChannelPrefixOrPort",
47: "EndOfTrack",
75: "M-LiveTag",
// Not standard (for MidiKit and QMidi)
81: "SetTempo",
84: "SmpteOffset",
88: "TimeSignature",
89: "KeySignature",
127: "SequencerSpecific"
};
/**
* @param {string} subtype
* @param {number} deltaTime delta time.
* @param {number} time time.
* @param {Uint8Array[]} data meta data.
*/
constructor(x, B, o, g) {
super(x, B, o), this.data = g;
}
}
class z {
/** @type {string} MMLのチャンネルごとのマッチパターン */
static PATTERN = /[a-glnortv<>][+#-]?\d*\.?&?/g;
/** @type {Array<string, number>} ノートのマッチングテーブル */
static NOTE_TABLE = {
c: 0,
d: 2,
e: 4,
f: 5,
g: 7,
a: 9,
b: 11
};
/** @type {number} ベロシティの倍率 */
static VELOCITY_MAGNIFICATION = 7;
// 127÷15≒8.4
/**
* Constructor
* @param {object} optParams
*/
constructor(x = {
timeDivision: 96,
channel: 0,
timeOffset: 0,
mml: []
}) {
this.timeDivision = x.timeDivision ? parseInt(x.timeDivision) : 96, this.channel = x.channel ? parseInt(x.channel) : 0, this.timeOffset = x.timeOffset ? parseInt(x.timeOffset) : 0, this.MINIM = this.timeDivision * 2, this.SEMIBREVE = this.timeDivision * 4, this.mml = x.mml, this.events = [], this.endTime = 0, this.noteOffNegativeOffset = 2, this.ignoreTempo = x.igonreTempo || !1, this.maxOctave = x.maxOctave || 8, this.minOctave = x.minOctave || 0, this.octaveMode = x.octaveMode || 0, this.minNote = x.minNote || 12, this.maxNote = x.minNote || 98, this.parse();
}
/**
* Parse MML
*/
parse() {
let x = [];
try {
x = this.mml.toLowerCase().match(z.PATTERN);
} catch {
throw new Error("[PSGConverter] Could not parse MML.", this.mml);
}
if (!x)
return;
let B = this.timeOffset, o = this.timeDivision, g = 0, a = 8, t = 4, f = !1;
const C = [];
x.forEach((s) => {
let n = o | 0, e = "", F = 0;
const r = /([lotv<>])([1-9]\d*|0?)(\.?)(&?)/.exec(s);
if (r)
switch (e = r[1].toLowerCase(), F = parseInt(r[2]), f && r[4] !== "&" && (f = !1, C.push(
new K(
"NoteOff",
0,
B - this.noteOffNegativeOffset,
this.channel,
g
)
)), e) {
case "l":
F >= 1 && F <= this.MINIM && (o = Math.floor(this.SEMIBREVE / F), RegExp.$3 === "." && (o = Math.floor(o * 1.5)));
break;
case "o":
F >= this.minOctave && F <= this.maxOctave && (t = F);
break;
case "t":
C.push(
new M("SetTempo", 0, B, [Math.floor(6e7 / F)])
);
break;
case "v":
F >= 0 && F <= 15 && (a = F);
break;
// 簡易オクターブ設定 {<>}
case "<":
t = t <= this.minOctave ? this.minOctave : t - 1;
break;
case ">":
t = t >= this.maxOctave ? this.maxOctave : t + 1;
break;
}
else if (/([a-gn])([+#-]?)(\d*)(\.?)(&?)/.exec(s)) {
let i = 0;
switch (e = RegExp.$1.toLowerCase(), F = RegExp.$3 | 0, e === "n" ? i = F : (F >= 1 && F <= this.MINIM && (n = Math.floor(this.SEMIBREVE / F)), RegExp.$4 === "." && (n = Math.floor(n * 1.5)), this.octaveMode !== 2 && (i = 12 * t + z.NOTE_TABLE[e], RegExp.$2 === "+" || RegExp.$2 === "#" ? i++ : RegExp.$2 === "-" && i--)), this.octaveMode) {
case 1:
for (; i < this.minNote; ) i = i + 12;
for (; i > this.maxNote; ) i = i - 12;
i += 12;
break;
case 2:
i = this.maxNote;
break;
default:
i += 12;
break;
}
f ? i !== g && C.push(
new K(
"NoteOff",
0,
B - this.noteOffNegativeOffset,
this.channel,
g
)
) : C.push(
new K(
"NoteOn",
0,
B,
this.channel,
i,
a * z.VELOCITY_MAGNIFICATION
// ※127÷15≒8.4なので8とする。
)
), B += n, RegExp.$5 === "&" ? (f = !0, g = i) : (f = !1, C.push(
new K(
"NoteOff",
0,
B - this.noteOffNegativeOffset,
this.channel,
i
)
));
} else s.match(/R(\d*)(\.?)/i) && (F = RegExp.$1 | 0, F >= 1 && F <= this.MINIM && (n = Math.floor(this.SEMIBREVE / F)), RegExp.$2 === "." && (n = Math.floor(n * 1.5)), B += n);
}), this.events = C, this.endTime = B;
}
}
var Z = {}, j = {}, p0;
function g0() {
if (p0) return j;
p0 = 1;
var k = T0(), x = String.fromCharCode, B = Array.prototype.slice, o = Object.prototype.toString, g = Object.prototype.hasOwnProperty, a = Array.isArray, t = Object.keys;
function f(b) {
var S = typeof b;
return S === "function" || S === "object" && !!b;
}
j.isObject = f;
function C(b) {
return a ? a(b) : o.call(b) === "[object Array]";
}
j.isArray = C;
function s(b) {
return typeof b == "string" || o.call(b) === "[object String]";
}
j.isString = s;
function n(b) {
if (t)
return t(b);
var S = [];
for (var N in b)
g.call(b, N) && (S[S.length] = N);
return S;
}
j.objectKeys = n;
function e(b, S) {
if (k.HAS_TYPED)
switch (b) {
case 8:
return new Uint8Array(S);
case 16:
return new Uint16Array(S);
}
return new Array(S);
}
j.createBuffer = e;
function F(b) {
for (var S = b.length, N = e(16, S), _ = 0; _ < S; _++)
N[_] = b.charCodeAt(_);
return N;
}
j.stringToBuffer = F;
function r(b) {
if (k.CAN_CHARCODE_APPLY && k.CAN_CHARCODE_APPLY_TYPED) {
var S = b && b.length;
if (S < k.APPLY_BUFFER_SIZE && k.APPLY_BUFFER_SIZE_OK)
return x.apply(null, b);
if (k.APPLY_BUFFER_SIZE_OK === null)
try {
var N = x.apply(null, b);
return S > k.APPLY_BUFFER_SIZE && (k.APPLY_BUFFER_SIZE_OK = !0), N;
} catch {
k.APPLY_BUFFER_SIZE_OK = !1;
}
}
return i(b);
}
j.codeToString_fast = r;
function i(b) {
for (var S = "", N = b && b.length, _ = 0, P; _ < N; ) {
if (b.subarray ? P = b.subarray(_, _ + k.APPLY_BUFFER_SIZE) : P = b.slice(_, _ + k.APPLY_BUFFER_SIZE), _ += k.APPLY_BUFFER_SIZE, k.APPLY_BUFFER_SIZE_OK) {
S += x.apply(null, P);
continue;
}
if (k.APPLY_BUFFER_SIZE_OK === null)
try {
S += x.apply(null, P), P.length > k.APPLY_BUFFER_SIZE && (k.APPLY_BUFFER_SIZE_OK = !0);
continue;
} catch {
k.APPLY_BUFFER_SIZE_OK = !1;
}
return m(b);
}
return S;
}
j.codeToString_chunked = i;
function m(b) {
for (var S = "", N = b && b.length, _ = 0; _ < N; _++)
S += x(b[_]);
return S;
}
j.codeToString_slow = m;
function T(b) {
for (var S = [], N = b && b.length, _ = 0; _ < N; _++)
S[_] = b.charCodeAt(_);
return S;
}
j.stringToCode = T;
function U(b) {
if (k.HAS_TYPED)
return new Uint16Array(b);
if (C(b))
return b;
for (var S = b && b.length, N = [], _ = 0; _ < S; _++)
N[_] = b[_];
return N;
}
j.codeToBuffer = U;
function I(b) {
return C(b) ? b : B.call(b);
}
j.bufferToCode = I;
function p(b) {
for (var S = "", N = ("" + b).toUpperCase().replace(/[^A-Z0-9]+/g, ""), _ = n(k.EncodingAliases), P = _.length, R = 0, H, Y, W, B0 = 0; B0 < P; B0++) {
if (H = _[B0], H === N) {
S = H;
break;
}
for (Y = H.length, W = R; W < Y; W++)
(H.slice(0, W) === N.slice(0, W) || H.slice(-W) === N.slice(-W)) && (S = H, R = W);
}
return g.call(k.EncodingAliases, S) ? k.EncodingAliases[S] : S;
}
j.canonicalizeEncodingName = p;
var d = [
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,
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,
48,
49,
50,
51,
52,
53,
54,
55,
56,
57,
43,
47
], q = [
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
62,
-1,
-1,
-1,
63,
52,
53,
54,
55,
56,
57,
58,
59,
60,
61,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
0,
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,
-1,
-1,
-1,
-1,
-1,
-1,
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,
-1,
-1,
-1,
-1,
-1
], X = 61;
function A0(b) {
var S, N, _, P, R, H;
for (_ = b && b.length, N = 0, S = []; N < _; ) {
if (P = b[N++], N == _) {
S[S.length] = d[P >> 2], S[S.length] = d[(P & 3) << 4], S[S.length] = X, S[S.length] = X;
break;
}
if (R = b[N++], N == _) {
S[S.length] = d[P >> 2], S[S.length] = d[(P & 3) << 4 | (R & 240) >> 4], S[S.length] = d[(R & 15) << 2], S[S.length] = X;
break;
}
H = b[N++], S[S.length] = d[P >> 2], S[S.length] = d[(P & 3) << 4 | (R & 240) >> 4], S[S.length] = d[(R & 15) << 2 | (H & 192) >> 6], S[S.length] = d[H & 63];
}
return r(S);
}
j.base64encode = A0;
function r0(b) {
var S, N, _, P, R, H, Y;
for (H = b && b.length, R = 0, Y = []; R < H; ) {
do
S = q[b.charCodeAt(R++) & 255];
while (R < H && S == -1);
if (S == -1)
break;
do
N = q[b.charCodeAt(R++) & 255];
while (R < H && N == -1);
if (N == -1)
break;
Y[Y.length] = S << 2 | (N & 48) >> 4;
do {
if (_ = b.charCodeAt(R++) & 255, _ == 61)
return Y;
_ = q[_];
} while (R < H && _ == -1);
if (_ == -1)
break;
Y[Y.length] = (N & 15) << 4 | (_ & 60) >> 2;
do {
if (P = b.charCodeAt(R++) & 255, P == 61)
return Y;
P = q[P];
} while (R < H && P == -1);
if (P == -1)
break;
Y[Y.length] = (_ & 3) << 6 | P;
}
return Y;
}
return j.base64decode = r0, j;
}
var Q = {}, l0, v0;
function ex() {
return v0 || (v0 = 1, l0 = {
15711649: 33,
15711650: 34,
15711651: 35,
15711652: 36,
15711653: 37,
15711654: 38,
15711655: 39,
15711656: 40,
15711657: 41,
15711658: 42,
15711659: 43,
15711660: 44,
15711661: 45,
15711662: 46,
15711663: 47,
15711664: 48,
15711665: 49,
15711666: 50,
15711667: 51,
15711668: 52,
15711669: 53,
15711670: 54,
15711671: 55,
15711672: 56,
15711673: 57,
15711674: 58,
15711675: 59,
15711676: 60,
15711677: 61,
15711678: 62,
15711679: 63,
15711872: 64,
15711873: 65,
15711874: 66,
15711875: 67,
15711876: 68,
15711877: 69,
15711878: 70,
15711879: 71,
15711880: 72,
15711881: 73,
15711882: 74,
15711883: 75,
15711884: 76,
15711885: 77,
15711886: 78,
15711887: 79,
15711888: 80,
15711889: 81,
15711890: 82,
15711891: 83,
15711892: 84,
15711893: 85,
15711894: 86,
15711895: 87,
15711896: 88,
15711897: 89,
15711898: 90,
15711899: 91,
15711900: 92,
15711901: 93,
15711902: 94,
15711903: 95,
14848416: 11553,
14848417: 11554,
14848418: 11555,
14848419: 11556,
14848420: 11557,
14848421: 11558,
14848422: 11559,
14848423: 11560,
14848424: 11561,
14848425: 11562,
14848426: 11563,
14848427: 11564,
14848428: 11565,
14848429: 11566,
14848430: 11567,
14848431: 11568,
14848432: 11569,
14848433: 11570,
14848434: 11571,
14848435: 11572,
14845344: 11573,
14845345: 11574,
14845346: 11575,
14845347: 11576,
14845348: 11577,
14845349: 11578,
14845350: 11579,
14845351: 11580,
14845352: 11581,
14845353: 11582,
14912905: 11584,
14912660: 11585,
14912674: 11586,
14912909: 11587,
14912664: 11588,
14912679: 11589,
14912643: 11590,
14912694: 11591,
14912913: 11592,
14912919: 11593,
14912653: 11594,
14912678: 11595,
14912675: 11596,
14912683: 11597,
14912906: 11598,
14912699: 11599,
14913180: 11600,
14913181: 11601,
14913182: 11602,
14913166: 11603,
14913167: 11604,
14913412: 11605,
14913185: 11606,
14912955: 11615,
14909597: 11616,
14909599: 11617,
14845078: 11618,
14913421: 11619,
14845089: 11620,
14912164: 11621,
14912165: 11622,
14912166: 11623,
14912167: 11624,
14912168: 11625,
14911665: 11626,
14911666: 11627,
14911673: 11628,
14912958: 11629,
14912957: 11630,
14912956: 11631,
14846126: 11635,
14846097: 11636,
14846111: 11640,
14846655: 11641,
14909568: 8481,
14909569: 8482,
14909570: 8483,
15711372: 8484,
15711374: 8485,
14910395: 8486,
15711386: 8487,
15711387: 8488,
15711391: 8489,
15711361: 8490,
14910107: 8491,
14910108: 8492,
49844: 8493,
15711616: 8494,
49832: 8495,
15711422: 8496,
15712163: 8497,
15711423: 8498,
14910397: 8499,
14910398: 8500,
14910109: 8501,
14910110: 8502,
14909571: 8503,
14990237: 8504,
14909573: 8505,
14909574: 8506,
14909575: 8507,
14910396: 8508,
14844053: 8509,
14844048: 8510,
15711375: 8511,
15711420: 8512,
15711646: 8513,
14844054: 8514,
15711644: 8515,
14844070: 8516,
14844069: 8517,
14844056: 8518,
14844057: 8519,
14844060: 8520,
14844061: 8521,
15711368: 8522,
15711369: 8523,
14909588: 8524,
14909589: 8525,
15711419: 8526,
15711421: 8527,
15711643: 8528,
15711645: 8529,
14909576: 8530,
14909577: 8531,
14909578: 8532,
14909579: 8533,
14909580: 8534,
14909581: 8535,
14909582: 8536,
14909583: 8537,
14909584: 8538,
14909585: 8539,
15711371: 8540,
15711373: 8541,
49841: 8542,
50071: 8543,
50103: 8544,
15711389: 8545,
14846368: 8546,
15711388: 8547,
15711390: 8548,
14846374: 8549,
14846375: 8550,
14846110: 8551,
14846132: 8552,
14850434: 8553,
14850432: 8554,
49840: 8555,
14844082: 8556,
14844083: 8557,
14845059: 8558,
15712165: 8559,
15711364: 8560,
15712160: 8561,
15712161: 8562,
15711365: 8563,
15711363: 8564,
15711366: 8565,
15711370: 8566,
15711392: 8567,
49831: 8568,
14850182: 8569,
14850181: 8570,
14849931: 8571,
14849935: 8572,
14849934: 8573,
14849927: 8574,
14849926: 8737,
14849697: 8738,
14849696: 8739,
14849715: 8740,
14849714: 8741,
14849725: 8742,
14849724: 8743,
14844091: 8744,
14909586: 8745,
14845586: 8746,
14845584: 8747,
14845585: 8748,
14845587: 8749,
14909587: 8750,
14846088: 8762,
14846091: 8763,
14846598: 8764,
14846599: 8765,
14846594: 8766,
14846595: 8767,
14846122: 8768,
14846121: 8769,
14846119: 8778,
14846120: 8779,
49836: 8780,
14845842: 8781,
14845844: 8782,
14846080: 8783,
14846083: 8784,
14846112: 8796,
14846629: 8797,
14847122: 8798,
14846082: 8799,
14846087: 8800,
14846369: 8801,
14846354: 8802,
14846378: 8803,
14846379: 8804,
14846106: 8805,
14846141: 8806,
14846109: 8807,
14846133: 8808,
14846123: 8809,
14846124: 8810,
14845099: 8818,
14844080: 8819,
14850479: 8820,
14850477: 8821,
14850474: 8822,
14844064: 8823,
14844065: 8824,
49846: 8825,
14849967: 8830,
15711376: 9008,
15711377: 9009,
15711378: 9010,
15711379: 9011,
15711380: 9012,
15711381: 9013,
15711382: 9014,
15711383: 9015,
15711384: 9016,
15711385: 9017,
15711393: 9025,
15711394: 9026,
15711395: 9027,
15711396: 9028,
15711397: 9029,
15711398: 9030,
15711399: 9031,
15711400: 9032,
15711401: 9033,
15711402: 9034,
15711403: 9035,
15711404: 9036,
15711405: 9037,
15711406: 9038,
15711407: 9039,
15711408: 9040,
15711409: 9041,
15711410: 9042,
15711411: 9043,
15711412: 9044,
15711413: 9045,
15711414: 9046,
15711415: 9047,
15711416: 9048,
15711417: 9049,
15711418: 9050,
15711617: 9057,
15711618: 9058,
15711619: 9059,
15711620: 9060,
15711621: 9061,
15711622: 9062,
15711623: 9063,
15711624: 9064,
15711625: 9065,
15711626: 9066,
15711627: 9067,
15711628: 9068,
15711629: 9069,
15711630: 9070,
15711631: 9071,
15711632: 9072,
15711633: 9073,
15711634: 9074,
15711635: 9075,
15711636: 9076,
15711637: 9077,
15711638: 9078,
15711639: 9079,
15711640: 9080,
15711641: 9081,
15711642: 9082,
14909825: 9249,
14909826: 9250,
14909827: 9251,
14909828: 9252,
14909829: 9253,
14909830: 9254,
14909831: 9255,
14909832: 9256,
14909833: 9257,
14909834: 9258,
14909835: 9259,
14909836: 9260,
14909837: 9261,
14909838: 9262,
14909839: 9263,
14909840: 9264,
14909841: 9265,
14909842: 9266,
14909843: 9267,
14909844: 9268,
14909845: 9269,
14909846: 9270,
14909847: 9271,
14909848: 9272,
14909849: 9273,
14909850: 9274,
14909851: 9275,
14909852: 9276,
14909853: 9277,
14909854: 9278,
14909855: 9279,
14909856: 9280,
14909857: 9281,
14909858: 9282,
14909859: 9283,
14909860: 9284,
14909861: 9285,
14909862: 9286,
14909863: 9287,
14909864: 9288,
14909865: 9289,
14909866: 9290,
14909867: 9291,
14909868: 9292,
14909869: 9293,
14909870: 9294,
14909871: 9295,
14909872: 9296,
14909873: 9297,
14909874: 9298,
14909875: 9299,
14909876: 9300,
14909877: 9301,
14909878: 9302,
14909879: 9303,
14909880: 9304,
14909881: 9305,
14909882: 9306,
14909883: 9307,
14909884: 9308,
14909885: 9309,
14909886: 9310,
14909887: 9311,
14910080: 9312,
14910081: 9313,
14910082: 9314,
14910083: 9315,
14910084: 9316,
14910085: 9317,
14910086: 9318,
14910087: 9319,
14910088: 9320,
14910089: 9321,
14910090: 9322,
14910091: 9323,
14910092: 9324,
14910093: 9325,
14910094: 9326,
14910095: 9327,
14910096: 9328,
14910097: 9329,
14910098: 9330,
14910099: 9331,
14910113: 9505,
14910114: 9506,
14910115: 9507,
14910116: 9508,
14910117: 9509,
14910118: 9510,
14910119: 9511,
14910120: 9512,
14910121: 9513,
14910122: 9514,
14910123: 9515,
14910124: 9516,
14910125: 9517,
14910126: 9518,
14910127: 9519,
14910128: 9520,
14910129: 9521,
14910130: 9522,
14910131: 9523,
14910132: 9524,
14910133: 9525,
14910134: 9526,
14910135: 9527,
14910136: 9528,
14910137: 9529,
14910138: 9530,
14910139: 9531,
14910140: 9532,
14910141: 9533,
14910142: 9534,
14910143: 9535,
14910336: 9536,
14910337: 9537,
14910338: 9538,
14910339: 9539,
14910340: 9540,
14910341: 9541,
14910342: 9542,
14910343: 9543,
14910344: 9544,
14910345: 9545,
14910346: 9546,
14910347: 9547,
14910348: 9548,
14910349: 9549,
14910350: 9550,
14910351: 9551,
14910352: 9552,
14910353: 9553,
14910354: 9554,
14910355: 9555,
14910356: 9556,
14910357: 9557,
14910358: 9558,
14910359: 9559,
14910360: 9560,
14910361: 9561,
14910362: 9562,
14910363: 9563,
14910364: 9564,
14910365: 9565,
14910366: 9566,
14910367: 9567,
14910368: 9568,
14910369: 9569,
14910370: 9570,
14910371: 9571,
14910372: 9572,
14910373: 9573,
14910374: 9574,
14910375: 9575,
14910376: 9576,
14910377: 9577,
14910378: 9578,
14910379: 9579,
14910380: 9580,
14910381: 9581,
14910382: 9582,
14910383: 9583,
14910384: 9584,
14910385: 9585,
14910386: 9586,
14910387: 9587,
14910388: 9588,
14910389: 9589,
14910390: 9590,
52881: 9761,
52882: 9762,
52883: 9763,
52884: 9764,
52885: 9765,
52886: 9766,
52887: 9767,
52888: 9768,
52889: 9769,
52890: 9770,
52891: 9771,
52892: 9772,
52893: 9773,
52894: 9774,
52895: 9775,
52896: 9776,
52897: 9777,
52899: 9778,
52900: 9779,
52901: 9780,
52902: 9781,
52903: 9782,
52904: 9783,
52905: 9784,
52913: 9793,
52914: 9794,
52915: 9795,
52916: 9796,
52917: 9797,
52918: 9798,
52919: 9799,
52920: 9800,
52921: 9801,
52922: 9802,
52923: 9803,
52924: 9804,
52925: 9805,
52926: 9806,
52927: 9807,
53120: 9808,
53121: 9809,
53123: 9810,
53124: 9811,
53125: 9812,
53126: 9813,
53127: 9814,
53128: 9815,
53129: 9816,
53392: 10017,
53393: 10018,
53394: 10019,
53395: 10020,
53396: 10021,
53397: 10022,
53377: 10023,
53398: 10024,
53399: 10025,
53400: 10026,
53401: 10027,
53402: 10028,
53403: 10029,
53404: 10030,
53405: 10031,
53406: 10032,
53407: 10033,
53408: 10034,
53409: 10035,
53410: 10036,
53411: 10037,
53412: 10038,
53413: 10039,
53414: 10040,
53415: 10041,
53416: 10042,
53417: 10043,
53418: 10044,
53419: 10045,
53420: 10046,
53421: 10047,
53422: 10048,
53423: 10049,
53424: 10065,
53425: 10066,
53426: 10067,
53427: 10068,
53428: 10069,
53429: 10070,
53649: 10071,
53430: 10072,
53431: 10073,
53432: 10074,
53433: 10075,
53434: 10076,
53435: 10077,
53436: 10078,
53437: 10079,
53438: 10080,
53439: 10081,
53632: 10082,
53633: 10083,
53634: 10084,
53635: 10085,
53636: 10086,
53637: 10087,
53638: 10088,
53639: 10089,
53640: 10090,
53641: 10091,
53642: 10092,
53643: 10093,
53644: 10094,
53645: 10095,
53646: 10096,
53647: 10097,
14849152: 10273,
14849154: 10274,
14849164: 10275,
14849168: 10276,
14849176: 10277,
14849172: 10278,
14849180: 10279,
14849196: 10280,
14849188: 10281,
14849204: 10282,
14849212: 10283,
14849153: 10284,
14849155: 10285,
14849167: 10286,
14849171: 10287,
14849179: 10288,
14849175: 10289,
14849187: 10290,
14849203: 10291,
14849195: 10292,
14849211: 10293,
14849419: 10294,
14849184: 10295,
14849199: 10296,
14849192: 10297,
14849207: 10298,
14849215: 10299,
14849181: 10300,
14849200: 10301,
14849189: 10302,
14849208: 10303,
14849410: 10304,
14989980: 12321,
15045782: 12322,
15050883: 12323,
15308991: 12324,
15045504: 12325,
15107227: 12326,
15109288: 12327,
15050678: 12328,
15302818: 12329,
15241653: 12330,
15240348: 12331,
15182224: 12332,
15106730: 12333,
15110049: 12334,
15120549: 12335,
15112109: 12336,
15241638: 12337,
15239846: 12338,
15314869: 12339,
15114899: 12340,
15047847: 12341,
15111841: 12342,
15108529: 12343,
15052443: 12344,
15050640: 12345,
15243707: 12346,
15311796: 12347,
15185314: 12348,
15185598: 12349,
15314574: 12350,
15108246: 12351,
15184543: 12352,
15246007: 12353,
15052425: 12354,
15055541: 12355,
15109257: 12356,
15112855: 12357,
15114632: 12358,
15308679: 12359,
15310477: 12360,
15113615: 12361,
14990245: 12362,
14990474: 12363,
14990733: 12364,
14991005: 12365,
15040905: 12366,
15047602: 12367,
15049911: 12368,
15050644: 12369,
15050881: 12370,
15052937: 12371,
15106975: 12372,
15107215: 12373,
15107504: 12374,
15112339: 12375,
15115397: 12376,
15172282: 12377,
15177103: 12378,
15177136: 12379,
15181755: 12380,
15185581: 12381,
15185839: 12382,
15238019: 12383,
15241358: 12384,
15245731: 12385,
15248514: 12386,
15303061: 12387,
15303098: 12388,
15043771: 12389,
14989973: 12390,
14989989: 12391,
15048607: 12392,
15237810: 12393,
15303553: 12394,
15180719: 12395,
14989440: 12396,
15049649: 12397,
15121058: 12398,
15302840: 12399,
15182002: 12400,
15240360: 12401,
15239819: 12402,
15315119: 12403,
15041921: 12404,
15044016: 12405,
15045309: 12406,
15045537: 12407,
15047584: 12408,
15050683: 12409,
15056021: 12410,
15311794: 12411,
15120299: 12412,
15238052: 12413,
15242413: 12414,
15309218: 12577,
15309232: 12578,
15309472: 12579,
15310779: 12580,
15044747: 12581,
15044531: 12582,
15052423: 12583,
15172495: 12584,
15187645: 12585,
15253378: 12586,
15309736: 12587,
15044015: 12588,
15316380: 12589,
15182522: 12590,
14989457: 12591,
15180435: 12592,
15239100: 12593,
15120550: 12594,
15046808: 12595,
15045764: 12596,
15117469: 12597,
15242394: 12598,
15315131: 12599,
15050661: 12600,
15044265: 12601,
15119782: 12602,
15176604: 12603,
15308431: 12604,
15047042: 12605,
14989969: 12606,
15303051: 12607,
15309746: 12608,
15240591: 12609,
15312012: 12610,
15044513: 12611,
15046326: 12612,
15051952: 12613,
15056305: 12614,
15112352: 12615,
15113139: 12616,
15114372: 12617,
15118520: 12618,
15119283: 12619,
15119529: 12620,
15176091: 12621,
15178632: 12622,
15182222: 12623,
15311028: 12624,
15240113: 12625,
15245723: 12626,
15247776: 12627,
15305645: 12628,
15120050: 12629,
15177387: 12630,
15178634: 12631,
15312773: 12632,
15106726: 12633,
15248513: 12634,
15251082: 12635,
15308466: 12636,
15115918: 12637,
15044269: 12638,
15042182: 12639,
15047826: 12640,
15048880: 12641,
15050116: 12642,
15052468: 12643,
15055798: 12644,
15106216: 12645,
15109801: 12646,
15110068: 12647,
15119039: 12648,
15121556: 12649,
15172238: 12650,
15172756: 12651,
15173017: 12652,
15173525: 12653,
15174847: 12654,
15186049: 12655,
15239606: 12656,
15240081: 12657,
15242903: 12658,
15303072: 12659,
15305115: 12660,
15316123: 12661,
15049129: 12662,
15111868: 12663,
15118746: 12664,
15176869: 12665,
15042489: 12666,
15049902: 12667,
15050149: 12668,
15056512: 12669,
15056796: 12670,
15108796: 12833,
15112122: 12834,
15116458: 12835,
15117479: 12836,
15118004: 12837,
15175307: 12838,
15187841: 12839,
15246742: 12840,
15316140: 12841,
15316110: 12842,
15317892: 12843,
15053473: 12844,
15118998: 12845,
15240635: 12846,
15041668: 12847,
15053195: 12848,
15107766: 12849,
15239046: 12850,
15114678: 12851,
15174049: 12852,
14989721: 12853,
14991290: 12854,
15044024: 12855,
15106473: 12856,
15120553: 12857,
15182223: 12858,
15310771: 12859,
14989451: 12860,
15043734: 12861,
14990254: 12862,
14990741: 12863,
14990525: 12864,
14991009: 12865,
14990771: 12866,
15043232: 12867,
15044527: 12868,
15046793: 12869,
15049871: 12870,
15051649: 12871,
15052470: 12872,
15052705: 12873,
15181713: 12874,
15112839: 12875,
15113884: 12876,
15113910: 12877,
15117708: 12878,
15119027: 12879,
15172011: 12880,
15175554: 12881,
15181453: 12882,
15181502: 12883,
15182012: 12884,
15183495: 12885,
15239857: 12886,
15240091: 12887,
15240324: 12888,
15240631: 12889,
15241135: 12890,
15241107: 12891,
15244710: 12892,
15248050: 12893,
15046825: 12894,
15250088: 12895,
15253414: 12896,
15303054: 12897,
15309982: 12898,
15243914: 12899,
14991236: 12900,
15053736: 12901,
15108241: 12902,
15174041: 12903,
15176891: 12904,
15239077: 12905,
15239869: 12906,
15244222: 12907,
15250304: 12908,
15309701: 12909,
15312019: 12910,
15312789: 12911,
14990219: 12912,
14990490: 12913,
15247267: 12914,
15047582: 12915,
15049098: 12916,
15049610: 12917,
15055803: 12918,
15056811: 12919,
15106218: 12920,
15106708: 12921,
15106466: 12922,
15107984: 12923,
15108242: 12924,
15109008: 12925,
15111353: 12926,
15314305: 13089,
15112614: 13090,
15114928: 13091,
15119799: 13092,
15172016: 13093,
15177100: 13094,
15178374: 13095,
15185333: 13096,
15239845: 13097,
15245241: 13098,
15308427: 13099,
15309454: 13100,
15250077: 13101,
15042481: 13102,
15043262: 13103,
15049878: 13104,
15045299: 13105,
15052467: 13106,
15053974: 13107,
15107496: 13108,
15115906: 13109,
15120047: 13110,
15180429: 13111,
15242123: 13112,
15245719: 13113,
15247794: 13114,
15306407: 13115,
15313592: 13116,
15119788: 13117,
15312552: 13118,
15244185: 13119,
15048355: 13120,
15114175: 13121,
15244174: 13122,
15304846: 13123,
15043203: 13124,
15047303: 13125,
15044740: 13126,
15055763: 13127,
15109025: 13128,
15110841: 13129,
15114428: 13130,
15114424: 13131,
15118011: 13132,
15175090: 13133,
15180474: 13134,
15182251: 13135,
15247002: 13136,
15247250: 13137,
15250859: 13138,
15252611: 13139,
15303597: 13140,
15308451: 13141,
15309460: 13142,
15310249: 13143,
15052198: 13144,
15053491: 13145,
15115709: 13146,
15311245: 13147,
15311246: 13148,
15109787: 13149,
15183008: 13150,
15116459: 13151,
15116735: 13152,
15114934: 13153,
15315085: 13154,
15121823: 13155,
15042994: 13156,
15046301: 13157,
15106480: 13158,
15109036: 13159,
15119547: 13160,
15120519: 13161,
15121297: 13162,
15241627: 13163,
15246480: 13164,
15252868: 13165,
14989460: 13166,
15315129: 13167,
15044534: 13168,
15115419: 13169,
15116474: 13170,
15310468: 13171,
15114410: 13172,
15041948: 13173,
15182723: 13174,
15241906: 13175,
15304604: 13176,
15306380: 13177,
15047067: 13178,
15316136: 13179,
15114402: 13180,
15240325: 13181,
15241393: 13182,
15184549: 13345,
15042696: 13346,
15240069: 13347,
15176614: 13348,
14989758: 13349,
14990979: 13350,
15042208: 13351,
15052690: 13352,
15042698: 13353,
15043480: 13354,
15043495: 13355,
15054779: 13356,
15046298: 13357,
15048874: 13358,
15050662: 13359,
15052428: 13360,
15052440: 13361,
15052699: 13362,
15055282: 13363,
15055289: 13364,
15106723: 13365,
15107231: 13366,
15107491: 13367,
15107774: 13368,
15110043: 13369,
15111586: 13370,
15114129: 13371,
15114643: 13372,
15115194: 13373,
15117502: 13374,
15117715: 13375,
15118743: 13376,
15121570: 13377,
15122071: 13378,
15121797: 13379,
15176368: 13380,
15176856: 13381,
15178659: 13382,
15178891: 13383,
15182783: 13384,
15183521: 13385,
15184033: 13386,
15185833: 13387,
15187126: 13388,
15187888: 13389,
15237789: 13390,
15239590: 13391,
15240862: 13392,
15247027: 13393,
15248268: 13394,
15250091: 13395,
15303300: 13396,
15307153: 13397,
15308435: 13398,
15308433: 13399,
15308450: 13400,
15309221: 13401,
15310739: 13402,
15312040: 13403,
15239320: 13404,
14989496: 13405,
15044779: 13406,
15053496: 13407,
15054732: 13408,
15175337: 13409,
15178124: 13410,
15178940: 13411,
15053481: 13412,
15187883: 13413,
15250571: 13414,
15309697: 13415,
15310993: 13416,
15311252: 13417,
15311256: 13418,
14990465: 13419,
14990478: 13420,
15044017: 13421,
15046300: 13422,
15047080: 13423,
15048634: 13424,
15050119: 13425,
15051913: 13426,
15052676: 13427,
15053456: 13428,
15054988: 13429,
15055294: 13430,
15056780: 13431,
15110062: 13432,
15113402: 13433,
15112087: 13434,
15112098: 13435,
15113375: 13436,
15115147: 13437,
15115140: 13438,
15116703: 13601,
15055024: 13602,
15118213: 13603,
15118487: 13604,
15118781: 13605,
15177151: 13606,
15181192: 13607,
15052195: 13608,
15181952: 13609,
15185024: 13610,
15056573: 13611,
15246991: 13612,
15247512: 13613,
15250100: 13614,
15250871: 13615,
15252364: 13616,
15252637: 13617,
15311778: 13618,
15313038: 13619,
15314108: 13620,
14989952: 13621,
15040957: 13622,
15041664: 13623,
15050387: 13624,
15052444: 13625,
15108271: 13626,
15108736: 13627,
15111084: 13628,
15117498: 13629,
15174304: 13630,
15177361: 13631,
15181191: 13632,
15187625: 13633,
15245243: 13634,
15248060: 13635,
15248816: 13636,
15109804: 13637,
15241098: 13638,
15310496: 13639,
15044745: 13640,
15044739: 13641,
15046315: 13642,
15114644: 13643,
15116696: 13644,
15247792: 13645,
15179943: 13646,
15113653: 13647,
15317901: 13648,
15044020: 13649,
15052450: 13650,
15238298: 13651,
15243664: 13652,
15302790: 13653,
14989464: 13654,
14989701: 13655,
14990215: 13656,
14990481: 13657,
15044490: 13658,
15044792: 13659,
15052462: 13660,
15056019: 13661,
15106213: 13662,
15111569: 13663,
15113405: 13664,
15118722: 13665,
15118770: 13666,
15119267: 13667,
15172024: 13668,
15175811: 13669,
15182262: 13670,
15182510: 13671,
15182984: 13672,
15185050: 13673,
15184830: 13674,
15185318: 13675,
15112103: 13676,
15174043: 13677,
15044283: 13678,
15053189: 13679,
15054760: 13680,
15109010: 13681,
15109024: 13682,
15109273: 13683,
15120544: 13684,
15243674: 13685,
15247537: 13686,
15251357: 13687,
15305656: 13688,
15121537: 13689,
15181478: 13690,
15314330: 13691,
14989992: 13692,
14989995: 13693,
14989996: 13694,
14991003: 13857,
14991008: 13858,
15041425: 13859,
15041927: 13860,
15182774: 13861,
15041969: 13862,
15042486: 13863,
15043988: 13864,
15043745: 13865,
15044031: 13866,
15044523: 13867,
15046316: 13868,
15049347: 13869,
15053729: 13870,
15056055: 13871,
15056266: 13872,
15106223: 13873,
15106448: 13874,
15106477: 13875,
15109279: 13876,
15111577: 13877,
15116683: 13878,
15119233: 13879,
15174530: 13880,
15174573: 13881,
15179695: 13882,
15238072: 13883,
15238277: 13884,
15239304: 13885,
15242638: 13886,
15303607: 13887,
15306657: 13888,
15310783: 13889,
15312279: 13890,
15313306: 13891,
14990256: 13892,
15042461: 13893,
15052973: 13894,
15112833: 13895,
15115693: 13896,
15053184: 13897,
15113138: 13898,
15115701: 13899,
15175305: 13900,
15114640: 13901,
15184513: 13902,
15041413: 13903,
15043492: 13904,
15048071: 13905,
15054782: 13906,
15305894: 13907,
15111844: 13908,
15117475: 13909,
15117501: 13910,
15175860: 13911,
15181441: 13912,
15181501: 13913,
15183243: 13914,
15185802: 13915,
15239865: 13916,
15241100: 13917,
15245759: 13918,
15246751: 13919,
15248569: 13920,
15253393: 13921,
15304593: 13922,
15044767: 13923,
15305344: 13924,
14989725: 13925,
15040694: 13926,
15044517: 13927,
15043770: 13928,
15174551: 13929,
15175318: 13930,
15179689: 13931,
15240102: 13932,
15252143: 13933,
15312774: 13934,
15312776: 13935,
15312786: 13936,
15041975: 13937,
15107226: 13938,
15243678: 13939,
15046320: 13940,
15182266: 13941,
15040950: 13942,
15052691: 13943,
15303047: 13944,
15309445: 13945,
14989490: 13946,
15117211: 13947,
15304615: 13948,
15053201: 13949,
15053192: 13950,
15109784: 14113,
15182495: 14114,
15118995: 14115,
15310260: 14116,
15252897: 14117,
15182506: 14118,
15173258: 14119,
15309448: 14120,
15184514: 14121,
15114391: 14122,
15186352: 14123,
15114641: 14124,
15306156: 14125,
15043506: 14126,
15044763: 14127,
15242923: 14128,
15247507: 14129,
15187620: 14130,
15252365: 14131,
15303585: 14132,
15044006: 14133,
15245960: 14134,
15181185: 14135,
14991234: 14136,
15041214: 14137,
15042705: 14138,
15041924: 14139,
15046035: 14140,
15047853: 14141,
15175594: 14142,
15048331: 14143,
15050129: 14144,
15056290: 14145,
15056516: 14146,
15106485: 14147,
15107510: 14148,
15107495: 14149,
15107753: 14150,
15109810: 14151,
15110330: 14152,
15111596: 14153,
15112623: 14154,
15114626: 14155,
15120531: 14156,
15177126: 14157,
15182013: 14158,
15184827: 14159,
15185292: 14160,
15185561: 14161,
15186315: 14162,
15187371: 14163,
15240334: 14164,
15240586: 14165,
15244173: 14166,
15247496: 14167,
15247779: 14168,
15248806: 14169,
15252413: 14170,
15311002: 14171,
15316623: 14172,
15239864: 14173,
15253390: 14174,
15314856: 14175,
15043207: 14176,
15108255: 14177,
15110787: 14178,
15122304: 14179,
15309465: 14180,
15114625: 14181,
15041169: 14182,
15117472: 14183,
15118778: 14184,
15121812: 14185,
15182260: 14186,
15185296: 14187,
15245696: 14188,
15247523: 14189,
15113352: 14190,
14990262: 14191,
15040697: 14192,
15040678: 14193,
15040933: 14194,
15041980: 14195,
15042744: 14196,
15042979: 14197,
15046311: 14198,
15047823: 14199,
15048837: 14200,
15051660: 14201,
15055802: 14202,
15107762: 14203,
15108024: 14204,
15109043: 14205,
15109554: 14206,
15115420: 14369,
15116457: 14370,
15174077: 14371,
15174316: 14372,
15174830: 14373,
15179924: 14374,
15180207: 14375,
15185337: 14376,
15178892: 14377,
15237801: 14378,
15246987: 14379,
15248537: 14380,
15250338: 14381,
15252370: 14382,
15303075: 14383,
15306165: 14384,
15309242: 14385,
15311253: 14386,
15313043: 14387,
15317432: 14388,
15041923: 14389,
15044255: 14390,
15044275: 14391,
15055291: 14392,
15056038: 14393,
15120539: 14394,
15121040: 14395,
15175300: 14396,
15175614: 14397,
15185283: 14398,
15239351: 14399,
15247488: 14400,
15248314: 14401,
15309200: 14402,
14989710: 14403,
15040651: 14404,
15044516: 14405,
15045052: 14406,
15047610: 14407,
15050641: 14408,
15052196: 14409,
15054769: 14410,
15055531: 14411,
15056039: 14412,
15108280: 14413,
15111557: 14414,
15113903: 14415,
15120790: 14416,
15174544: 14417,
15184778: 14418,
15246004: 14419,
15237793: 14420,
15238049: 14421,
15241136: 14422,
15243662: 14423,
15248007: 14424,
15251368: 14425,
15304887: 14426,
15309703: 14427,
15311271: 14428,
15318163: 14429,
14989972: 14430,
14989970: 14431,
14990477: 14432,
15043976: 14433,
15045001: 14434,
15044798: 14435,
15050927: 14436,
15056524: 14437,
15056545: 14438,
15106719: 14439,
15114919: 14440,
15116942: 14441,
15176090: 14442,
15180417: 14443,
15248030: 14444,
15248036: 14445,
15248823: 14446,
15304336: 14447,
14989726: 14448,
15314825: 14449,
14989988: 14450,
14990780: 14451,
14991023: 14452,
15040665: 14453,
15040662: 14454,
15041929: 14455,
15041964: 14456,
15043231: 14457,
15043257: 14458,
15043518: 14459,
15044250: 14460,
15044515: 14461,
15044753: 14462,
15044750: 14625,
15046281: 14626,
15048081: 14627,
15048354: 14628,
15050173: 14629,
15052180: 14630,
15052189: 14631,
15052431: 14632,
15054757: 14633,
15054759: 14634,
15054775: 14635,
15055288: 14636,
15055491: 14637,
15055514: 14638,
15055543: 14639,
15056024: 14640,
15106450: 14641,
15107468: 14642,
15108759: 14643,
15109016: 14644,
15109799: 14645,
15111355: 14646,
15112322: 14647,
15112579: 14648,
15113140: 14649,
15113645: 14650,
15114401: 14651,
15114903: 14652,
15116171: 14653,
15118751: 14654,
15119530: 14655,
15119785: 14656,
15120559: 14657,
15121053: 14658,
15176882: 14659,
15178375: 14660,
15180204: 14661,
15182015: 14662,
15184800: 14663,
15185029: 14664,
15185048: 14665,
15185310: 14666,
15185585: 14667,
15237269: 14668,
15237251: 14669,
15237807: 14670,
15237809: 14671,
15238548: 14672,
15238799: 14673,
15239338: 14674,
15240594: 14675,
15245708: 14676,
15245729: 14677,
15248539: 14678,
15250082: 14679,
15250364: 14680,
15303562: 14681,
15304117: 14682,
15305137: 14683,
15179967: 14684,
15305660: 14685,
15308452: 14686,
15309197: 14687,
15310981: 14688,
15312537: 14689,
15313816: 14690,
15316155: 14691,
15042971: 14692,
15043243: 14693,
15044535: 14694,
15044744: 14695,
15049621: 14696,
15109047: 14697,
15122336: 14698,
15249834: 14699,
15252895: 14700,
15317689: 14701,
15041931: 14702,
15042747: 14703,
15045002: 14704,
15047613: 14705,
15182208: 14706,
15304119: 14707,
15316384: 14708,
15317906: 14709,
15175044: 14710,
15121545: 14711,
15238576: 14712,
15176849: 14713,
15056829: 14714,
15106970: 14715,
15313576: 14716,
15174555: 14717,
15253180: 14718,
15117732: 14881,
15310979: 14882,
14990218: 14883,
15047600: 14884,
15048100: 14885,
15049406: 14886,
15051162: 14887,
15106472: 14888,
15107975: 14889,
15112335: 14890,
15112326: 14891,
15114425: 14892,
15114929: 14893,
15120311: 14894,
15177621: 14895,
15185082: 14896,
15239598: 14897,
15314306: 14898,
14989979: 14899,
14990736: 14900,
15044489: 14901,
15045766: 14902,
15054255: 14903,
15054758: 14904,
15054766: 14905,
15114171: 14906,
15119001: 14907,
15176115: 14908,
15179906: 14909,
15247760: 14910,
15306390: 14911,
15246239: 14912,
15048080: 14913,
15055527: 14914,
15109291: 14915,
15041205: 14916,
15041196: 14917,
15042189: 14918,
15113344: 14919,
15045513: 14920,
15049118: 14921,
15050427: 14922,
15052464: 14923,
15056297: 14924,
15108493: 14925,
15109793: 14926,
15114429: 14927,
15117747: 14928,
15120520: 14929,
15172029: 14930,
15304583: 14931,
15174272: 14932,
15179925: 14933,
15179942: 14934,
15181229: 14935,
15111822: 14936,
15185072: 14937,
15241116: 14938,
15246209: 14939,
15252617: 14940,
15309467: 14941,
15042980: 14942,
15047848: 14943,
15113616: 14944,
15187370: 14945,
15250081: 14946,
15042228: 14947,
15048066: 14948,
15308970: 14949,
15048890: 14950,
15115914: 14951,
15237812: 14952,
15045298: 14953,
15053966: 14954,
15048636: 14955,
15180437: 14956,
15316922: 14957,
14990748: 14958,
15042954: 14959,
15045259: 14960,
15110334: 14961,
15112360: 14962,
15113364: 14963,
15114165: 14964,
15182468: 14965,
15183254: 14966,
15185058: 14967,
15305903: 14968,
15114652: 14969,
15314605: 14970,
15183033: 14971,
15043737: 14972,
15042186: 14973,
15042743: 14974,
15052703: 15137,
15109046: 15138,
15110830: 15139,
15111078: 15140,
15113389: 15141,
15118010: 15142,
15242921: 15143,
15309713: 15144,
15178384: 15145,
15314838: 15146,
15109516: 15147,
15305862: 15148,
15314603: 15149,
15178431: 15150,
15112594: 15151,
14989449: 15152,
15041176: 15153,
15044482: 15154,
15053233: 15155,
15106984: 15156,
15110802: 15157,
15111587: 15158,
15114655: 15159,
15173542: 15160,
15175562: 15161,
15176867: 15162,
15183511: 15163,
15186562: 15164,
15243925: 15165,
15249027: 15166,
15250331: 15167,
15304120: 15168,
15312016: 15169,
15111852: 15170,
15112875: 15171,
15117963: 15172,
14990229: 15173,
14990228: 15174,
14990522: 15175,
14990783: 15176,
15042746: 15177,
15044536: 15178,
15044530: 15179,
15046563: 15180,
15047579: 15181,
15049643: 15182,
15050635: 15183,
15050633: 15184,
15050687: 15185,
15052176: 15186,
15053197: 15187,
15054978: 15188,
15055019: 15189,
15056791: 15190,
15106205: 15191,
15109255: 15192,
15111343: 15193,
15052188: 15194,
15111855: 15195,
15111869: 15196,
15112104: 15197,
15113885: 15198,
15117730: 15199,
15117755: 15200,
15118479: 15201,
15175045: 15202,
15181193: 15203,
15181697: 15204,
15184824: 15205,
15185049: 15206,
15185067: 15207,
15237794: 15208,
15238274: 15209,
15239091: 15210,
15246998: 15211,
15247774: 15212,
15247785: 15213,
15247782: 15214,
15248012: 15215,
15248302: 15216,
15250311: 15217,
15250332: 15218,
15309708: 15219,
15311804: 15220,
15117743: 15221,
14989963: 15222,
14990524: 15223,
14990989: 15224,
15041936: 15225,
15052183: 15226,
15052730: 15227,
15107464: 15228,
15109249: 15229,
15112578: 15230,
15117473: 15393,
15121291: 15394,
15119035: 15395,
15173822: 15396,
15176381: 15397,
15177620: 15398,
15180673: 15399,
15180986: 15400,
15237260: 15401,
15237299: 15402