@beatbax/engine 0.1.1 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/audio/playback.d.ts +20 -0
  3. package/dist/audio/playback.d.ts.map +1 -1
  4. package/dist/audio/playback.js +196 -23
  5. package/dist/audio/playback.js.map +1 -1
  6. package/dist/export/jsonExport.d.ts.map +1 -1
  7. package/dist/export/jsonExport.js +11 -9
  8. package/dist/export/jsonExport.js.map +1 -1
  9. package/dist/export/midiExport.d.ts.map +1 -1
  10. package/dist/export/midiExport.js +13 -11
  11. package/dist/export/midiExport.js.map +1 -1
  12. package/dist/export/ugeWriter.d.ts.map +1 -1
  13. package/dist/export/ugeWriter.js +40 -38
  14. package/dist/export/ugeWriter.js.map +1 -1
  15. package/dist/export/wavWriter.d.ts.map +1 -1
  16. package/dist/export/wavWriter.js +8 -6
  17. package/dist/export/wavWriter.js.map +1 -1
  18. package/dist/index.d.ts.map +1 -1
  19. package/dist/index.js +32 -30
  20. package/dist/index.js.map +1 -1
  21. package/dist/parser/peggy/generated/parser.d.ts.map +1 -1
  22. package/dist/parser/peggy/generated/parser.js +20 -38
  23. package/dist/parser/peggy/generated/parser.js.map +1 -1
  24. package/dist/parser/peggy/index.d.ts.map +1 -1
  25. package/dist/parser/peggy/index.js +49 -1
  26. package/dist/parser/peggy/index.js.map +1 -1
  27. package/dist/song/resolver.d.ts.map +1 -1
  28. package/dist/song/resolver.js +18 -0
  29. package/dist/song/resolver.js.map +1 -1
  30. package/dist/util/diag.d.ts.map +1 -1
  31. package/dist/util/diag.js +4 -2
  32. package/dist/util/diag.js.map +1 -1
  33. package/dist/util/index.d.ts +6 -0
  34. package/dist/util/index.d.ts.map +1 -0
  35. package/dist/util/index.js +8 -0
  36. package/dist/util/index.js.map +1 -0
  37. package/dist/util/logger.d.ts +115 -0
  38. package/dist/util/logger.d.ts.map +1 -0
  39. package/dist/util/logger.js +392 -0
  40. package/dist/util/logger.js.map +1 -0
  41. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"midiExport.d.ts","sourceRoot":"","sources":["../../src/export/midiExport.ts"],"names":[],"mappings":"AAmEA,4CAA4C;AAC5C,wBAAsB,UAAU,CAAC,UAAU,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,iBAuU5K"}
1
+ {"version":3,"file":"midiExport.d.ts","sourceRoot":"","sources":["../../src/export/midiExport.ts"],"names":[],"mappings":"AAsEA,4CAA4C;AAC5C,wBAAsB,UAAU,CAAC,UAAU,EAAE,GAAG,EAAE,SAAS,CAAC,EAAE,MAAM,EAAE,OAAO,GAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAA;CAAO,EAAE,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,iBAuU5K"}
@@ -6,6 +6,8 @@
6
6
  */
7
7
  import { writeFileSync } from 'fs';
8
8
  import { noteNameToMidi } from '../audio/playback.js';
9
+ import { createLogger } from '../util/logger.js';
10
+ const log = createLogger('export:midi');
9
11
  function writeVarLen(n) {
10
12
  const bytes = [];
11
13
  let val = n & 0xffffffff;
@@ -83,14 +85,14 @@ export async function exportMIDI(songOrPath, maybePath, options = {}, opts) {
83
85
  const track = writeChunk('MTrk', [0x00, 0xff, 0x2f, 0x00]);
84
86
  writeFileSync(outPath, Buffer.concat([header, track]));
85
87
  if (opts && opts.debug)
86
- console.log('Wrote empty MIDI to', outPath);
88
+ log.debug('Wrote empty MIDI to', outPath);
87
89
  return;
88
90
  }
89
91
  const song = songOrPath;
90
92
  if (!outPath)
91
93
  outPath = 'song.mid';
92
94
  if (verbose) {
93
- console.log(`Exporting to MIDI (Standard MIDI File): ${outPath}`);
95
+ log.info(`Exporting to MIDI (Standard MIDI File): ${outPath}`);
94
96
  }
95
97
  // Basic SMF parameters
96
98
  const ticksPerQuarter = 480; // PPQ
@@ -366,25 +368,25 @@ export async function exportMIDI(songOrPath, maybePath, options = {}, opts) {
366
368
  // Write file
367
369
  const out = Buffer.concat([header, ...trackBuffers]);
368
370
  if (opts && opts.debug) {
369
- console.log(`[DEBUG] MIDI: ${ntracks} tracks, ${ticksPerQuarter} PPQ`);
371
+ log.debug(`MIDI: ${ntracks} tracks, ${ticksPerQuarter} PPQ`);
370
372
  }
371
373
  if (verbose) {
372
- console.log(` MIDI configuration:`);
373
- console.log(` - Format: Type 1 (multi-track)`);
374
- console.log(` - Tracks: ${ntracks} (1 per channel)`);
375
- console.log(` - Tempo: ${bpm} BPM`);
376
- console.log(` - Resolution: ${ticksPerQuarter} PPQ`);
374
+ log.info(` MIDI configuration:`);
375
+ log.info(` - Format: Type 1 (multi-track)`);
376
+ log.info(` - Tracks: ${ntracks} (1 per channel)`);
377
+ log.info(` - Tempo: ${bpm} BPM`);
378
+ log.info(` - Resolution: ${ticksPerQuarter} PPQ`);
377
379
  if (options.channels) {
378
- console.log(` - Channels exported: ${options.channels.join(', ')}`);
380
+ log.info(` - Channels exported: ${options.channels.join(', ')}`);
379
381
  }
380
382
  if (options.duration) {
381
- console.log(` - Duration: ${options.duration}s`);
383
+ log.info(` - Duration: ${options.duration}s`);
382
384
  }
383
385
  }
384
386
  writeFileSync(outPath, out);
385
387
  if (verbose) {
386
388
  const sizeKB = (out.length / 1024).toFixed(2);
387
- console.log(`Export complete: ${out.length.toLocaleString()} bytes (${sizeKB} KB) written`);
389
+ log.info(`Export complete: ${out.length.toLocaleString()} bytes (${sizeKB} KB) written`);
388
390
  }
389
391
  }
390
392
  //# sourceMappingURL=midiExport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"midiExport.js","sourceRoot":"","sources":["../../src/export/midiExport.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACnC,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtD,SAAS,WAAW,CAAC,CAAS;IAC7B,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC;IACzB,IAAI,MAAM,GAAG,GAAG,GAAG,IAAI,CAAC;IACxB,GAAG,KAAK,CAAC,CAAC;IACV,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC,CAAC;QACb,MAAM,IAAI,CAAC,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAChC,GAAG,KAAK,CAAC,CAAC;IACX,CAAC;IACD,yBAAyB;IACzB,OAAO,IAAI,EAAE,CAAC;QACb,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;QAC1B,IAAI,MAAM,GAAG,IAAI;YAAE,MAAM,KAAK,CAAC,CAAC;;YAAM,MAAM;IAC7C,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,SAAS,GAAG,CAAC,CAAS;IACrB,iDAAiD;IACjD,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,IAAI,KAAK,GAAG,CAAC,GAAG,UAAU,CAAC;IAC3B,IAAI,MAAM,GAAG,KAAK,GAAG,IAAI,CAAC;IAC1B,KAAK,KAAK,CAAC,CAAC;IACZ,OAAO,KAAK,GAAG,CAAC,EAAE,CAAC;QAClB,MAAM,IAAI,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QACrD,KAAK,KAAK,CAAC,CAAC;IACb,CAAC;IACD,iCAAiC;IACjC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC,GAAG,CAAC,CAAC;IACV,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACrB,CAAC,KAAK,CAAC,CAAC;IACR,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAC9B,CAAC,KAAK,CAAC,CAAC;IACT,CAAC;IACD,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;AACxB,CAAC;AAED,SAAS,UAAU,CAAC,EAAU,EAAE,IAAc;IAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAC5B,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,YAAY,CAAC,IAAc,EAAE,KAAa,EAAE,IAAY;IAChE,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;IAC1B,KAAK,MAAM,CAAC,IAAI,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACrC,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACjC,KAAK,MAAM,CAAC,IAAI,QAAQ;QAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,GAAG;QAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzC,CAAC;AAED,4CAA4C;AAC5C,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAe,EAAE,SAAkB,EAAE,UAAsD,EAAE,EAAE,IAA6C;IAC5K,IAAI,OAAO,GAAG,SAA+B,CAAC;IAC9C,MAAM,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,CAAC;IAE9C,gEAAgE;IAChE,IAAI,OAAO,UAAU,KAAK,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;QAClD,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,UAAU,MAAM,CAAC;QACzE,gDAAgD;QAChD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;QACpC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW;QACvC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU;QACvC,MAAM,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC,oBAAoB;QACnD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAC3D,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;QACvD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,OAAO,CAAC,CAAC;QACpE,OAAO;IACR,CAAC;IAED,MAAM,IAAI,GAAG,UAAU,CAAC;IACxB,IAAI,CAAC,OAAO;QAAE,OAAO,GAAG,UAAU,CAAC;IAEnC,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,2CAA2C,OAAO,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,uBAAuB;IACvB,MAAM,eAAe,GAAG,GAAG,CAAC,CAAC,MAAM;IACnC,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC,2BAA2B;IAClF,MAAM,GAAG,GAAG,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAEpE,qEAAqE;IACrE,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IACtE,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ;QAChC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,EAAO,EAAE,EAAE,CAAC,OAAO,CAAC,QAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC,WAAW,CAAC;IAEf,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;IAC3D,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAChC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IACpC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC3B,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW;IACvC,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAClC,MAAM,CAAC,aAAa,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAE1C,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,kDAAkD;IAClD,MAAM,gBAAgB,GAA2B;QAChD,MAAM,EAAE,EAAE,EAAE,uBAAuB;QACnC,MAAM,EAAE,EAAE,EAAE,0BAA0B;QACtC,IAAI,EAAE,EAAE,EAAE,mBAAmB;QAC7B,KAAK,EAAE,CAAC;KACR,CAAC;IAEF,MAAM,aAAa,GAA2B;QAC7C,EAAE,EAAE,EAAE,EAAE,gBAAgB;QACxB,EAAE,EAAE,EAAE,EAAE,iBAAiB;QACzB,IAAI,EAAE,EAAE,EAAE,YAAY;QACtB,OAAO,EAAE,EAAE;KACX,CAAC;IAEF,SAAS,+BAA+B,CAAC,QAA4B,EAAE,EAAO,EAAE,EAAQ;QACvF,gGAAgG;QAChG,IAAI,EAAE,IAAI,EAAE,CAAC,SAAS,IAAI,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,QAAQ;YAAE,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,GAAG,IAAI,CAAC;QAC7F,IAAI,EAAE,IAAI,EAAE,CAAC,SAAS,IAAI,OAAO,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC/D,MAAM,MAAM,GAAG,QAAQ,CAAC,EAAE,CAAC,SAAS,CAAC,EAAS,EAAE,EAAE,CAAC,CAAC;YACpD,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;gBAAE,OAAO,MAAM,GAAG,IAAI,CAAC;QAC1C,CAAC;QACD,IAAI,QAAQ,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC;YAC/D,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;gBACzC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,EAAS,EAAE,EAAE,CAAC,CAAC;gBAC5C,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;oBAAE,OAAO,MAAM,GAAG,IAAI,CAAC;YAC1C,CAAC;YACD,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC1C,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAAE,OAAO,gBAAgB,CAAC,MAAM,CAAC;gBACzD,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAAE,OAAO,gBAAgB,CAAC,MAAM,CAAC;gBACzD,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAAE,OAAO,gBAAgB,CAAC,IAAI,CAAC;gBACrD,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;oBAAE,OAAO,gBAAgB,CAAC,KAAK,CAAC;YACxD,CAAC;QACF,CAAC;QACD,sDAAsD;QACtD,IAAI,EAAE,IAAI,EAAE,CAAC,iBAAiB,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC1F,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;YAC9C,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;gBAC1C,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAAE,OAAO,gBAAgB,CAAC,MAAM,CAAC;gBACzD,IAAI,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAAE,OAAO,gBAAgB,CAAC,MAAM,CAAC;gBACzD,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;oBAAE,OAAO,gBAAgB,CAAC,IAAI,CAAC;gBACrD,IAAI,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;oBAAE,OAAO,gBAAgB,CAAC,KAAK,CAAC;YACxD,CAAC;QACF,CAAC;QACD,OAAO,gBAAgB,CAAC,MAAM,CAAC;IAChC,CAAC;IAED,8FAA8F;IAC9F,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC;QACrC,MAAM,EAAE,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;QACxB,MAAM,MAAM,GAAG,CAAC,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC1G,MAAM,IAAI,GAAa,EAAE,CAAC;QAC1B,IAAI,QAAQ,GAAG,CAAC,CAAC;QAEjB,wEAAwE;QACxE,IAAI,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC;QACvD,yEAAyE;QACzE,IAAI,EAAE,IAAI,EAAE,CAAC,iBAAiB,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC1F,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC,CAAC;YAC/C,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAAE,WAAW,GAAG,CAAC,CAAC;QACpH,CAAC;QAED,2CAA2C;QAC3C,IAAI,cAAc,GAAG,+BAA+B,CAAC,EAAE,IAAI,EAAE,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;QACrF,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;YAClB,KAAK,MAAM,CAAC,IAAI,EAAE;gBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,EAAE,cAAc,GAAG,IAAI,CAAC,CAAC;QACtD,CAAC;QAED,iDAAiD;QACjD,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC;YACd,gDAAgD;YAChD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE,GAAG,GAAG,IAAI,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,cAAc,GAAG,EAAE,GAAG,GAAG,CAAC;QAChC,MAAM,WAAW,GAAG,cAAc,GAAG,CAAC,CAAC,CAAC,YAAY;QACpD,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;QAChG,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;QAEnD,KAAK,IAAI,EAAE,GAAG,CAAC,EAAE,EAAE,GAAG,eAAe,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC;YACpD,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,CAAC,CAAC;YAC/B,MAAM,QAAQ,GAAG,EAAE,GAAG,aAAa,CAAC;YACpC,IAAI,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAC;YAChC,IAAI,KAAK,GAAG,CAAC;gBAAE,KAAK,GAAG,CAAC,CAAC;YAEzB,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBAC/B,QAAQ,GAAG,QAAQ,CAAC;gBACpB,SAAS;YACV,CAAC;YAED,IAAI,EAAE,CAAC,IAAI,KAAK,MAAM,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAC/C,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC;gBAErC,mHAAmH;gBACnH,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC/B,KAAK,MAAM,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;wBAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;wBAC7C,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;4BACtB,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC5F,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC3F,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC5F,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,aAAa,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,UAAU,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC5J,KAAK,GAAG,CAAC,CAAC;4BACV,MAAM;wBACP,CAAC;6BAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;4BAC9B,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC5F,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC/F,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,aAAa,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BAC/H,KAAK,GAAG,CAAC,CAAC;4BACV,MAAM;wBACP,CAAC;6BAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;4BAC9B,wCAAwC;4BACxC,iDAAiD;4BACjD,uDAAuD;4BACvD,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC5F,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC3F,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAC/F,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,SAAS,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,aAAa,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;4BAC1K,KAAK,GAAG,CAAC,CAAC;4BACV,MAAM;wBACP,CAAC;6BAAM,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;4BAClC,+CAA+C;4BAC/C,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC/F,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BACpG,+DAA+D;4BAC/D,+CAA+C;4BAC/C,MAAM,QAAQ,GAAG,EAAE,CAAC;4BACpB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,mBAAmB;4BACnE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC;4BAErE,sCAAsC;4BACtC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;4BAC1B,KAAK,MAAM,CAAC,IAAI,MAAM;gCAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BACrC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,EAAE,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC,CAAC;4BAEtD,oCAAoC;4BACpC,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,QAAQ,UAAU,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;4BACpG,KAAK,GAAG,CAAC,CAAC;4BACV,MAAM;wBACP,CAAC;6BAAM,IAAI,MAAM,KAAK,MAAM,EAAE,CAAC;4BAC9B,2CAA2C;4BAC3C,6EAA6E;4BAC7E,kFAAkF;4BAClF,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAChG,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;4BACnG,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BACpG,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;4BAEvG,+DAA+D;4BAC/D,2EAA2E;4BAC3E,qEAAqE;4BACrE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;4BAC5D,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC;4BAE7D,sCAAsC;4BACtC,MAAM,GAAG,GAAG,YAAY,GAAG,IAAI,CAAC;4BAChC,MAAM,GAAG,GAAG,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;4BAEvC,yCAAyC;4BACzC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;4BAC1B,KAAK,MAAM,CAAC,IAAI,MAAM;gCAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BACrC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;4BAExC,0EAA0E;4BAC1E,YAAY,CAAC,IAAI,EAAE,CAAC,EAAE,kBAAkB,SAAS,UAAU,KAAK,UAAU,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,SAAS,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;4BAC7K,KAAK,GAAG,CAAC,CAAC;4BACV,MAAM;wBACP,CAAC;6BAAM,IAAI,MAAM,KAAK,OAAO,EAAE,CAAC;4BAC/B,gEAAgE;4BAChE,sEAAsE;4BACtE,MAAM,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAC3F,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;4BACrG,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAE5F,mCAAmC;4BACnC,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,IAAI,cAAc,SAAS,UAAU,KAAK,YAAY,CAAC,CAAC;4BAChG,KAAK,GAAG,CAAC,CAAC;4BACV,MAAM;wBACP,CAAC;oBACF,CAAC;gBACF,CAAC;gBAED,yEAAyE;gBACzE,MAAM,QAAQ,GAAG,EAAE,CAAC,UAAU,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,iBAAiB,CAAC,IAAI,SAAS,CAAC;gBAC5E,MAAM,MAAM,GAAG,+BAA+B,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;gBAEjE,sEAAsE;gBACtE,IAAI,WAAW,KAAK,CAAC,IAAI,MAAM,KAAK,cAAc,EAAE,CAAC;oBACpD,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;oBAC1B,KAAK,MAAM,CAAC,IAAI,MAAM;wBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;oBAC7C,cAAc,GAAG,MAAM,CAAC;oBACxB,yBAAyB;oBACzB,QAAQ,GAAG,QAAQ,CAAC;oBACpB,KAAK,GAAG,CAAC,CAAC;gBACX,CAAC;gBAED,uEAAuE;gBACvE,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;oBACvB,0CAA0C;oBAC1C,MAAM,GAAG,GAAG,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,IAAI,aAAa,CAAC,OAAO,CAAC;oBACnF,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;oBAC1B,KAAK,MAAM,CAAC,IAAI,MAAM;wBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,IAAI,CAAC,CAAC;oBAClC,MAAM,QAAQ,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC;oBACpC,KAAK,MAAM,CAAC,IAAI,QAAQ;wBAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBACvC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,GAAG,IAAI,EAAE,IAAI,CAAC,CAAC;oBAClC,QAAQ,GAAG,QAAQ,GAAG,aAAa,CAAC;oBACpC,SAAS;gBACV,CAAC;gBAED,+BAA+B;gBAC/B,MAAM,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;gBACjD,IAAI,CAAC,EAAE,CAAC;oBACP,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;oBAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAClC,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;oBAC1C,IAAI,IAAI,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;wBAC/C,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;wBAC1B,KAAK,MAAM,CAAC,IAAI,MAAM;4BAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC,CAAC;wBACjD,MAAM,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC;wBACzC,KAAK,MAAM,CAAC,IAAI,aAAa;4BAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBAC5C,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,EAAE,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC,CAAC;wBACjD,QAAQ,GAAG,QAAQ,GAAG,aAAa,CAAC;wBACpC,SAAS;oBACV,CAAC;gBACF,CAAC;gBAED,QAAQ,GAAG,QAAQ,CAAC;gBACpB,SAAS;YACV,CAAC;YAED,qCAAqC;YACrC,QAAQ,GAAG,QAAQ,CAAC;QACrB,CAAC;QAED,0BAA0B;QAC1B,MAAM,QAAQ,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QACxB,KAAK,MAAM,CAAC,IAAI,QAAQ;YAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAE5B,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC1C,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7B,CAAC;IAED,aAAa;IACb,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAC;IACrD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,YAAY,eAAe,MAAM,CAAC,CAAC;IACxE,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,oCAAoC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CAAC,iBAAiB,OAAO,kBAAkB,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,MAAM,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,qBAAqB,eAAe,MAAM,CAAC,CAAC;QACxD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,4BAA4B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QACD,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,mBAAmB,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrD,CAAC;IACF,CAAC;IAED,aAAa,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAE5B,IAAI,OAAO,EAAE,CAAC;QACb,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC9C,OAAO,CAAC,GAAG,CAAC,oBAAoB,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,WAAW,MAAM,cAAc,CAAC,CAAC;IAC7F,CAAC;AACF,CAAC"}
1
+ {"version":3,"file":"midiExport.js","sourceRoot":"","sources":["../../src/export/midiExport.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"ugeWriter.d.ts","sourceRoot":"","sources":["../../src/export/ugeWriter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,SAAS,EAA2B,MAAM,sBAAsB,CAAC;AAqpB1E;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAenD;AA4nBD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAE,YAAY,GAAG,QAAmB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,SAAS,CA0BtI;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAmyBzJ;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"ugeWriter.d.ts","sourceRoot":"","sources":["../../src/export/ugeWriter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAGH,OAAO,EAAE,SAAS,EAA2B,MAAM,sBAAsB,CAAC;AAwpB1E;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAenD;AA4nBD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAE,YAAY,GAAG,QAAmB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,SAAS,CA0BtI;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,GAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAmyBzJ;AAED,eAAe,SAAS,CAAC"}
@@ -17,6 +17,8 @@
17
17
  import { writeFileSync } from 'fs';
18
18
  import { parseEnvelope, parseSweep } from '../chips/gameboy/pulse.js';
19
19
  import { warn } from '../util/diag.js';
20
+ import { createLogger } from '../util/logger.js';
21
+ const log = createLogger('export:uge');
20
22
  // Constants from UGE v6 spec
21
23
  const UGE_VERSION = 6;
22
24
  const NUM_DUTY_INSTRUMENTS = 15;
@@ -1191,7 +1193,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1191
1193
  const strictGb = opts && opts.strictGb === true;
1192
1194
  const verbose = opts && opts.verbose === true;
1193
1195
  if (verbose) {
1194
- console.log(`Exporting to UGE v6 format: ${outputPath}`);
1196
+ log.info(`Exporting to UGE v6 format: ${outputPath}`);
1195
1197
  }
1196
1198
  // ====== Header & NR51 metadata ======
1197
1199
  // Compute NR51 register from channel/instrument pans and encode into comment for compatibility
@@ -1256,19 +1258,19 @@ export async function exportUGE(song, outputPath, opts = {}) {
1256
1258
  }
1257
1259
  }
1258
1260
  if (opts && opts.debug)
1259
- console.log(`[DEBUG] Discovered instruments: duty=${dutyInsts.length} wave=${waveInsts.length} noise=${noiseInsts.length}`);
1261
+ log.debug(`Discovered instruments: duty=${dutyInsts.length} wave=${waveInsts.length} noise=${noiseInsts.length}`);
1260
1262
  if (opts && opts.debug)
1261
- console.log(`[DEBUG] Wave instrument names: ${JSON.stringify(waveInsts)}`);
1263
+ log.debug(`Wave instrument names: ${JSON.stringify(waveInsts)}`);
1262
1264
  if (verbose) {
1263
- console.log('Processing instruments...');
1265
+ log.info('Processing instruments...');
1264
1266
  if (dutyInsts.length > 0 || waveInsts.length > 0 || noiseInsts.length > 0) {
1265
- console.log(` Instruments exported:`);
1267
+ log.info(` Instruments exported:`);
1266
1268
  if (dutyInsts.length > 0)
1267
- console.log(` - Duty: ${dutyInsts.length}/15 slots (${dutyInsts.join(', ')})`);
1269
+ log.info(` - Duty: ${dutyInsts.length}/15 slots (${dutyInsts.join(', ')})`);
1268
1270
  if (waveInsts.length > 0)
1269
- console.log(` - Wave: ${waveInsts.length}/15 slots (${waveInsts.join(', ')})`);
1271
+ log.info(` - Wave: ${waveInsts.length}/15 slots (${waveInsts.join(', ')})`);
1270
1272
  if (noiseInsts.length > 0)
1271
- console.log(` - Noise: ${noiseInsts.length}/15 slots (${noiseInsts.join(', ')})`);
1273
+ log.info(` - Noise: ${noiseInsts.length}/15 slots (${noiseInsts.join(', ')})`);
1272
1274
  }
1273
1275
  }
1274
1276
  // ====== Instruments Section ======
@@ -1323,7 +1325,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1323
1325
  const lengthEnabled = inst.length ? true : false;
1324
1326
  const ugeVolume = mapWaveVolumeToUGE(inst.volume ?? inst.vol ?? 100);
1325
1327
  if (opts && opts.debug)
1326
- console.log(`[DEBUG] Wave instrument '${name}' -> volume (beatbax)=${inst.volume ?? inst.vol ?? 'undefined'} ugeValue=${ugeVolume}`);
1328
+ log.debug(`Wave instrument '${name}' -> volume (beatbax)=${inst.volume ?? inst.vol ?? 'undefined'} ugeValue=${ugeVolume}`);
1327
1329
  writeWaveInstrument(w, name, i, ugeVolume, lengthEnabled, length);
1328
1330
  }
1329
1331
  else {
@@ -1407,7 +1409,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1407
1409
  // ====== Build patterns per channel ======
1408
1410
  const channelPatterns = [];
1409
1411
  if (verbose) {
1410
- console.log('Building patterns for 4 channels...');
1412
+ log.info('Building patterns for 4 channels...');
1411
1413
  }
1412
1414
  // Shared map of desired vibrato durations (globalRow -> rows)
1413
1415
  const desiredVibMap = new Map();
@@ -1417,7 +1419,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1417
1419
  const chModel = song.channels && song.channels.find(c => c.id === ch + 1);
1418
1420
  const chEvents = (chModel && chModel.events) || [];
1419
1421
  if (opts && opts.debug)
1420
- console.log(`[DEBUG] Channel ${ch + 1} has ${chEvents.length} events`);
1422
+ log.debug(`Channel ${ch + 1} has ${chEvents.length} events`);
1421
1423
  // share `desiredVibMap` across channels so later passes can inspect desired vib rows
1422
1424
  const patterns = eventsToPatterns(chEvents, song.insts || {}, ch, dutyInsts, waveInsts, noiseInsts, strictGb, song.bpm, desiredVibMap);
1423
1425
  channelPatterns.push(patterns);
@@ -1501,25 +1503,25 @@ export async function exportUGE(song, outputPath, opts = {}) {
1501
1503
  }
1502
1504
  }
1503
1505
  if (verbose) {
1504
- console.log('Applying effects and post-processing...');
1506
+ log.info('Applying effects and post-processing...');
1505
1507
  // Pattern statistics
1506
1508
  let totalRows = 0;
1507
1509
  for (let ch = 0; ch < NUM_CHANNELS; ch++) {
1508
1510
  totalRows += channelPatterns[ch].reduce((sum, pat) => sum + pat.length, 0);
1509
1511
  }
1510
- console.log(' Pattern structure:');
1512
+ log.info(' Pattern structure:');
1511
1513
  for (let ch = 0; ch < NUM_CHANNELS; ch++) {
1512
1514
  const patterns = channelPatterns[ch];
1513
1515
  const rowCount = patterns.reduce((sum, pat) => sum + pat.length, 0);
1514
- console.log(` - Channel ${ch + 1}: ${patterns.length} pattern${patterns.length !== 1 ? 's' : ''} (${rowCount} rows total)`);
1516
+ log.info(` - Channel ${ch + 1}: ${patterns.length} pattern${patterns.length !== 1 ? 's' : ''} (${rowCount} rows total)`);
1515
1517
  }
1516
1518
  // Effect statistics
1517
1519
  if (vibCount > 0 || cutCount > 0) {
1518
- console.log(' Effects applied:');
1520
+ log.info(' Effects applied:');
1519
1521
  if (vibCount > 0)
1520
- console.log(` - Vibrato: ${vibCount} note${vibCount !== 1 ? 's' : ''}`);
1522
+ log.info(` - Vibrato: ${vibCount} note${vibCount !== 1 ? 's' : ''}`);
1521
1523
  if (cutCount > 0)
1522
- console.log(` - Note cuts: ${cutCount} occurrence${cutCount !== 1 ? 's' : ''}`);
1524
+ log.info(` - Note cuts: ${cutCount} occurrence${cutCount !== 1 ? 's' : ''}`);
1523
1525
  }
1524
1526
  }
1525
1527
  // Inject global per-row NR51 panning effects (write a single 8xx on channel 1 when value changes)
@@ -1615,7 +1617,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1615
1617
  else {
1616
1618
  if (opts && opts.debug) {
1617
1619
  try {
1618
- console.log('[DEBUG] Skipping NR51 write due to existing effect on ch1 row', { orderIdx, row, existingEffect: targetCell && targetCell.effectCode });
1620
+ log.debug('[DEBUG] Skipping NR51 write due to existing effect on ch1 row', { orderIdx, row, existingEffect: targetCell && targetCell.effectCode });
1619
1621
  }
1620
1622
  catch (e) { }
1621
1623
  }
@@ -1627,7 +1629,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1627
1629
  if (opts && opts.debug) {
1628
1630
  try {
1629
1631
  const rows = Array.from(nr51Writes.entries()).map(([k, v]) => ({ globalRow: k, value: v.value, explicit: v.explicit }));
1630
- console.log('[DEBUG] NR51 writes:', JSON.stringify(rows, null, 2));
1632
+ log.debug('[DEBUG] NR51 writes:', JSON.stringify(rows, null, 2));
1631
1633
  }
1632
1634
  catch (e) { }
1633
1635
  }
@@ -1642,7 +1644,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1642
1644
  const ticksPerRow = Math.max(1, Math.round(896 / bpm));
1643
1645
  if (verbose) {
1644
1646
  const actualBpm = Math.round(896 / ticksPerRow);
1645
- console.log(` Tempo: ${bpm} BPM (${ticksPerRow} ticks/row in UGE${actualBpm !== bpm ? `, actual: ~${actualBpm} BPM` : ''})`);
1647
+ log.info(` Tempo: ${bpm} BPM (${ticksPerRow} ticks/row in UGE${actualBpm !== bpm ? `, actual: ~${actualBpm} BPM` : ''})`);
1646
1648
  }
1647
1649
  w.writeU32(ticksPerRow); // Initial ticks per row
1648
1650
  w.writeBool(false); // Timer based tempo enabled (v6)
@@ -1673,7 +1675,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1673
1675
  try {
1674
1676
  if (opts && opts.debug) {
1675
1677
  try {
1676
- console.log('[DEBUG] finalEnforcement start', { nr51Writes: Array.from(nr51Writes.entries()), desiredVibMap: Array.from(desiredVibMap.entries()) });
1678
+ log.debug('[DEBUG] finalEnforcement start', { nr51Writes: Array.from(nr51Writes.entries()), desiredVibMap: Array.from(desiredVibMap.entries()) });
1677
1679
  }
1678
1680
  catch (e) { }
1679
1681
  }
@@ -1750,7 +1752,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1750
1752
  const preserveNoteNR51 = !!noteCell && noteCell.effectCode === 8 && nrWasExplicit && !nrIsDefault;
1751
1753
  if (opts && opts.debug) {
1752
1754
  try {
1753
- console.log('[DEBUG] finalEnforce note check', { ch, globalStart, nrInfo, noteCellEffect: noteCell && noteCell.effectCode, preserveNoteNR51, allPatternsNoteCell: (allPatterns.find(p => p.channelIndex === ch && p.patternIndex === Math.floor(globalStart / PATTERN_ROWS)) || { cells: [] }).cells[globalStart % PATTERN_ROWS] });
1755
+ log.debug('[DEBUG] finalEnforce note check', { ch, globalStart, nrInfo, noteCellEffect: noteCell && noteCell.effectCode, preserveNoteNR51, allPatternsNoteCell: (allPatterns.find(p => p.channelIndex === ch && p.patternIndex === Math.floor(globalStart / PATTERN_ROWS)) || { cells: [] }).cells[globalStart % PATTERN_ROWS] });
1754
1756
  }
1755
1757
  catch (e) { }
1756
1758
  }
@@ -1794,7 +1796,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1794
1796
  }
1795
1797
  catch (e) {
1796
1798
  if (opts && opts.debug) {
1797
- console.log('[DEBUG] final vib enforcement failed', e && e.stack ? e.stack : e);
1799
+ log.debug('[DEBUG] final vib enforcement failed', e && e.stack ? e.stack : e);
1798
1800
  }
1799
1801
  }
1800
1802
  // NOTE: vib->cut heuristic removed. We rely on per-note post-process above
@@ -1804,18 +1806,18 @@ export async function exportUGE(song, outputPath, opts = {}) {
1804
1806
  // Debug: inspect patterns before serialization
1805
1807
  if (opts && opts.debug) {
1806
1808
  try {
1807
- console.log('[DEBUG] Dumping first 3 allPatterns entries (showing up to 16 rows each)');
1809
+ log.debug('[DEBUG] Dumping first 3 allPatterns entries (showing up to 16 rows each)');
1808
1810
  for (let pi = 0; pi < Math.min(3, allPatterns.length); pi++) {
1809
1811
  const p = allPatterns[pi];
1810
- console.log(`[DEBUG] allPatterns[${pi}] -> channel=${p.channelIndex} pattern=${p.patternIndex} rows=${p.cells.length}`);
1812
+ log.debug(`[DEBUG] allPatterns[${pi}] -> channel=${p.channelIndex} pattern=${p.patternIndex} rows=${p.cells.length}`);
1811
1813
  for (let r = 0; r < Math.min(16, p.cells.length); r++) {
1812
1814
  const c = p.cells[r];
1813
- console.log(` [DEBUG] pat${pi} row${r}: note=${c.note} inst=${c.instrument} vol=${typeof c.volume === 'number' ? c.volume : 'undef'} eff=0x${(c.effectCode || 0).toString(16)} effp=0x${(c.effectParam || 0).toString(16)}`);
1815
+ log.debug(` [DEBUG] pat${pi} row${r}: note=${c.note} inst=${c.instrument} vol=${typeof c.volume === 'number' ? c.volume : 'undef'} eff=0x${(c.effectCode || 0).toString(16)} effp=0x${(c.effectParam || 0).toString(16)}`);
1814
1816
  }
1815
1817
  }
1816
1818
  }
1817
1819
  catch (e) {
1818
- console.log('[DEBUG] Pattern dump failed', e && e.stack ? e.stack : e);
1820
+ log.debug('[DEBUG] Pattern dump failed', e && e.stack ? e.stack : e);
1819
1821
  }
1820
1822
  // Debug: count EC (note-cut) occurrences before writing
1821
1823
  let ecCount = 0;
@@ -1826,13 +1828,13 @@ export async function exportUGE(song, outputPath, opts = {}) {
1826
1828
  ecCount++;
1827
1829
  }
1828
1830
  }
1829
- console.log('[DEBUG] Pre-serialize EC count:', ecCount);
1831
+ log.debug('[DEBUG] Pre-serialize EC count:', ecCount);
1830
1832
  }
1831
1833
  w.writeU32(allPatterns.length);
1832
1834
  if (opts && opts.debug)
1833
- console.log(`[DEBUG] Total patterns: ${allPatterns.length}`);
1835
+ log.debug(`Total patterns: ${allPatterns.length}`);
1834
1836
  if (opts && opts.debug)
1835
- console.log(`[DEBUG] Pattern breakdown: Ch1=${channelPatterns[0].length}, Ch2=${channelPatterns[1].length}, Ch3=${channelPatterns[2].length}, Ch4=${channelPatterns[3].length}`);
1837
+ log.debug(`Pattern breakdown: Ch1=${channelPatterns[0].length}, Ch2=${channelPatterns[1].length}, Ch3=${channelPatterns[2].length}, Ch4=${channelPatterns[3].length}`);
1836
1838
  // Focused debug: show effect codes for first 16 rows of each channel for quick verification
1837
1839
  if (opts && opts.debug) {
1838
1840
  for (let ch = 0; ch < NUM_CHANNELS; ch++) {
@@ -1844,7 +1846,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1844
1846
  const c = pat[r];
1845
1847
  entries.push({ row: r, note: c.note, eff: `0x${(c.effectCode || 0).toString(16)}`, effp: `0x${(c.effectParam || 0).toString(16)}` });
1846
1848
  }
1847
- console.log(`[DEBUG] Channel ${ch + 1} first ${rowsToShow} rows:`, JSON.stringify(entries));
1849
+ log.debug(`Channel ${ch + 1} first ${rowsToShow} rows:`, JSON.stringify(entries));
1848
1850
  }
1849
1851
  }
1850
1852
  // Write pattern data
@@ -1856,10 +1858,10 @@ export async function exportUGE(song, outputPath, opts = {}) {
1856
1858
  if (ch >= 0 && ch < NUM_CHANNELS) {
1857
1859
  const nonEmpty = pattern.cells.filter((c, idx) => c.note !== EMPTY_NOTE || c.instrument !== 0);
1858
1860
  if (opts && opts.debug)
1859
- console.log(`[DEBUG] Pattern ${i} for channel ${ch + 1}: ${nonEmpty.length} non-empty cells out of ${pattern.cells.length} total rows`);
1861
+ log.debug(`Pattern ${i} for channel ${ch + 1}: ${nonEmpty.length} non-empty cells out of ${pattern.cells.length} total rows`);
1860
1862
  if (nonEmpty.length <= 20) {
1861
1863
  if (opts && opts.debug)
1862
- console.log(`[DEBUG] Non-empty cells:`, nonEmpty.map((c) => {
1864
+ log.debug(` Non-empty cells:`, nonEmpty.map((c) => {
1863
1865
  const rowIdx = pattern.cells.indexOf(c);
1864
1866
  return `row${rowIdx}:note=${c.note},inst=${c.instrument}`;
1865
1867
  }).join('; '));
@@ -1869,7 +1871,7 @@ export async function exportUGE(song, outputPath, opts = {}) {
1869
1871
  for (let rowIdx = 0; rowIdx < pattern.cells.length; rowIdx++) {
1870
1872
  const cell = pattern.cells[rowIdx];
1871
1873
  if (opts && opts.debug && cell && cell.effectCode === 0xC) {
1872
- console.log(`[DEBUG] Writing Note Cut in pattern ${i} ch ${ch} row ${rowIdx}`);
1874
+ log.debug(`Writing Note Cut in pattern ${i} ch ${ch} row ${rowIdx}`);
1873
1875
  }
1874
1876
  // Convert absolute instrument index to relative index based on channel type
1875
1877
  // UGE pattern cells use 1-based indices (1-15) within each instrument type
@@ -1983,14 +1985,14 @@ export async function exportUGE(song, outputPath, opts = {}) {
1983
1985
  // Write final binary
1984
1986
  const out = w.toBuffer();
1985
1987
  if (opts && opts.debug) {
1986
- console.log(`[DEBUG] UGE: ${out.length} bytes written to ${outputPath}`);
1988
+ log.debug(`UGE: ${out.length} bytes written to ${outputPath}`);
1987
1989
  }
1988
1990
  writeFileSync(outputPath, out);
1989
1991
  if (verbose) {
1990
- console.log('Writing binary output...');
1992
+ log.info('Writing binary output...');
1991
1993
  const sizeKB = (out.length / 1024).toFixed(2);
1992
- console.log(`Export complete: ${out.length.toLocaleString()} bytes (${sizeKB} KB) written`);
1993
- console.log(`File ready for hUGETracker v6`);
1994
+ log.info(`Export complete: ${out.length.toLocaleString()} bytes (${sizeKB} KB) written`);
1995
+ log.info(`File ready for hUGETracker v6`);
1994
1996
  }
1995
1997
  }
1996
1998
  export default exportUGE;