nmr-processing 3.3.3 → 4.0.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 (104) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/lib/assignment/get13CAssignments.d.ts +35 -0
  3. package/lib/assignment/get13CAssignments.js +54 -0
  4. package/lib/assignment/get13CAssignments.js.map +1 -0
  5. package/lib/assignment/get1HAssignments.d.ts +42 -0
  6. package/lib/assignment/get1HAssignments.js +55 -0
  7. package/lib/assignment/get1HAssignments.js.map +1 -0
  8. package/lib/assignment/utils/buildAssignments.d.ts +33 -0
  9. package/lib/assignment/utils/buildAssignments.js +93 -0
  10. package/lib/assignment/utils/buildAssignments.js.map +1 -0
  11. package/lib/assignment/utils/createMapPossibleAssignments.d.ts +15 -0
  12. package/lib/assignment/utils/createMapPossibleAssignments.js +51 -0
  13. package/lib/assignment/utils/createMapPossibleAssignments.js.map +1 -0
  14. package/lib/assignment/utils/exploreTreeRec.d.ts +22 -0
  15. package/lib/assignment/utils/exploreTreeRec.js +77 -0
  16. package/lib/assignment/utils/exploreTreeRec.js.map +1 -0
  17. package/lib/assignment/utils/generateID.d.ts +1 -0
  18. package/lib/assignment/utils/generateID.js +13 -0
  19. package/lib/assignment/utils/generateID.js.map +1 -0
  20. package/lib/assignment/utils/partialScore.d.ts +16 -0
  21. package/lib/assignment/utils/partialScore.js +91 -0
  22. package/lib/assignment/utils/partialScore.js.map +1 -0
  23. package/lib/index.d.ts +2 -5
  24. package/lib/index.js +2 -5
  25. package/lib/index.js.map +1 -1
  26. package/lib/peaks/peaksFilterImpurities.js +1 -1
  27. package/lib/peaks/peaksFilterImpurities.js.map +1 -1
  28. package/lib/peaks/peaksToRanges.js +11 -17
  29. package/lib/peaks/peaksToRanges.js.map +1 -1
  30. package/lib/peaks/util/determineRealTop.js +3 -2
  31. package/lib/peaks/util/determineRealTop.js.map +1 -1
  32. package/lib/peaks/util/jAnalyzer.js +33 -35
  33. package/lib/peaks/util/jAnalyzer.js.map +1 -1
  34. package/lib/ranges/rangesToXY.d.ts +2 -2
  35. package/lib/ranges/rangesToXY.js +10 -2
  36. package/lib/ranges/rangesToXY.js.map +1 -1
  37. package/lib/signals/signals2DToZ.d.ts +2 -2
  38. package/lib/signals/signalsToXY.d.ts +2 -2
  39. package/lib/signals/simulation/simulate1D.d.ts +4 -3
  40. package/lib/signals/simulation/simulate1D.js.map +1 -1
  41. package/lib/types/NMRPeak1D.d.ts +2 -9
  42. package/lib/types/NMRRange.d.ts +1 -0
  43. package/lib/types/NMRSignal1D.d.ts +3 -2
  44. package/lib/types/NMRSignal2D.d.ts +1 -0
  45. package/lib/types/NMRZone.d.ts +4 -3
  46. package/lib/xy/xyAutoPeaksPicking.d.ts +4 -60
  47. package/lib/xy/xyAutoPeaksPicking.js +3 -3
  48. package/lib/xy/xyAutoPeaksPicking.js.map +1 -1
  49. package/lib-esm/assignment/get13CAssignments.js +47 -0
  50. package/lib-esm/assignment/get13CAssignments.js.map +1 -0
  51. package/lib-esm/assignment/get1HAssignments.js +48 -0
  52. package/lib-esm/assignment/get1HAssignments.js.map +1 -0
  53. package/lib-esm/assignment/utils/buildAssignments.js +86 -0
  54. package/lib-esm/assignment/utils/buildAssignments.js.map +1 -0
  55. package/lib-esm/assignment/utils/createMapPossibleAssignments.js +47 -0
  56. package/lib-esm/assignment/utils/createMapPossibleAssignments.js.map +1 -0
  57. package/lib-esm/assignment/utils/exploreTreeRec.js +73 -0
  58. package/lib-esm/assignment/utils/exploreTreeRec.js.map +1 -0
  59. package/lib-esm/assignment/utils/generateID.js +10 -0
  60. package/lib-esm/assignment/utils/generateID.js.map +1 -0
  61. package/lib-esm/assignment/utils/partialScore.js +87 -0
  62. package/lib-esm/assignment/utils/partialScore.js.map +1 -0
  63. package/lib-esm/index.js +2 -5
  64. package/lib-esm/index.js.map +1 -1
  65. package/lib-esm/peaks/peaksFilterImpurities.js +1 -1
  66. package/lib-esm/peaks/peaksFilterImpurities.js.map +1 -1
  67. package/lib-esm/peaks/peaksToRanges.js +11 -17
  68. package/lib-esm/peaks/peaksToRanges.js.map +1 -1
  69. package/lib-esm/peaks/util/determineRealTop.js +4 -3
  70. package/lib-esm/peaks/util/determineRealTop.js.map +1 -1
  71. package/lib-esm/peaks/util/jAnalyzer.js +33 -35
  72. package/lib-esm/peaks/util/jAnalyzer.js.map +1 -1
  73. package/lib-esm/ranges/rangesToXY.js +10 -2
  74. package/lib-esm/ranges/rangesToXY.js.map +1 -1
  75. package/lib-esm/signals/simulation/simulate1D.js.map +1 -1
  76. package/lib-esm/xy/xyAutoPeaksPicking.js +3 -3
  77. package/lib-esm/xy/xyAutoPeaksPicking.js.map +1 -1
  78. package/package.json +4 -4
  79. package/src/assignment/get13CAssignments.ts +100 -0
  80. package/src/assignment/get1HAssignments.ts +116 -0
  81. package/src/assignment/utils/buildAssignments.ts +155 -0
  82. package/src/assignment/utils/createMapPossibleAssignments.ts +76 -0
  83. package/src/assignment/utils/exploreTreeRec.ts +138 -0
  84. package/src/assignment/utils/generateID.ts +11 -0
  85. package/src/assignment/utils/partialScore.ts +128 -0
  86. package/src/index.ts +3 -6
  87. package/src/peaks/peaksFilterImpurities.ts +1 -1
  88. package/src/peaks/peaksToRanges.ts +12 -19
  89. package/src/peaks/util/determineRealTop.ts +4 -6
  90. package/src/peaks/util/jAnalyzer.ts +34 -36
  91. package/src/ranges/rangesToXY.ts +14 -7
  92. package/src/signals/signals2DToZ.ts +2 -2
  93. package/src/signals/signalsToXY.ts +2 -2
  94. package/src/signals/simulation/simulate1D.ts +4 -3
  95. package/src/types/NMRPeak1D.ts +3 -9
  96. package/src/types/NMRRange.ts +1 -0
  97. package/src/types/NMRSignal1D.ts +3 -3
  98. package/src/types/NMRSignal2D.ts +2 -0
  99. package/src/types/NMRZone.ts +4 -3
  100. package/src/types/ml-spectra-processing/index.d.ts +8 -8
  101. package/src/types/ml-tree-set/index.d.ts +18 -0
  102. package/src/types/openchemlib-utils/index..d.ts +2 -2
  103. package/src/xy/xyAutoPeaksPicking.ts +19 -58
  104. package/src/types/ml-gsd/index.d.ts +0 -164
@@ -1 +1 @@
1
- {"version":3,"file":"jAnalyzer.js","sourceRoot":"","sources":["../../../src/peaks/util/jAnalyzer.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,QAAQ,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACtE,IAAI,QAAQ,GAAG,GAAG,CAAC;AACnB,IAAI,aAAa,GAAG,GAAG,CAAC,CAAC,KAAK;AAC9B,IAAI,aAAa,GAAG,CAAC,CAAC,CAAC,KAAK;AAO5B,IAAI,SAAS,GAAc,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC;AA0ClE,SAAS,4BAA4B,CACnC,MAAoB;IAEpB,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;QACnB,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;KAC/D;IACD,IAAI,CAAC,MAAM,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;AAC1E,CAAC;AAMD,eAAe;IACb;;;;;OAKG;IACH,cAAc,EAAE,CACd,WAAyB,EACzB,UAAgC,EAAE,EAClC,EAAE;QACF,IAAI,EAAE,QAAQ,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC;QAEvC,8BAA8B;QAE9B,0DAA0D;QAE1D,iBAAiB;QACjB,sFAAsF;QACtF,iEAAiE;QACjE,MAAM,MAAM,GAAG,oBAAoB,CAAC,WAAW,EAAE;YAC/C,QAAQ,EAAE,aAAa;YACvB,SAAS,EAAE,CAAC;YACZ,QAAQ;SACT,CAAC,CAAC;QACH,MAAM,CAAC,YAAY,GAAG,GAAG,CAAC;QAC1B,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC;QAEzB,mCAAmC;QACnC,4BAA4B,CAAC,MAAM,CAAC,CAAC;QAErC,2BAA2B;QAC3B,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE,EAAE;YAC1D,MAAM,CAAC,UAAU,GAAG,KAAK,CAAC;YAC1B,IAAI,EAAE,EAAE,EAAE,EAAE,UAAU,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,IAAI,EAAE,GAAG,EAAE,CAAC;YAEZ,0EAA0E;YAC1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC1B,0EAA0E;gBAC1E,IAAI,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;gBACjC,IAAI,YAAY,GAAG,KAAK,CAAC,CAAC,uDAAuD;gBACjF,gDAAgD;gBAChD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;oBACjC,YAAY,GAAG,IAAI,CAAC;iBACrB;qBAAM;oBACL,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;wBACrB,SAAS;qBACV;iBACF;gBACD,wFAAwF;gBACxF,IAAI,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;gBAC9B,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;gBAEpB,oFAAoF;gBACpF,IAAI,OAAO,GAAG,IAAI,CAAC;gBACnB,IAAI,OAAO,GAAG,CAAC,CAAC;gBAChB,OACE,CAAC,YAAY;oBACb,CAAC,OAAO,GAAG,kBAAkB,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI;oBACnD,OAAO,GAAG,GAAG,EACb;oBACA,yEAAyE;oBACzE,qBAAqB;oBACrB,IAAI,SAAS,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBAC1C,CAAC,GAAG,CAAC,CAAC;oBACN,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACvC,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;wBACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;4BACnC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;yBACvB;qBACF;oBAED,EAAE,GAAG,EAAE,CAAC,CAAC,6CAA6C;oBACtD,yEAAyE;oBACzE,IAAI,CAAC,GAAG,CAAC,CAAC;oBACV,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjC,EAAE,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;oBAChB,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU;oBACrC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU;oBACrC,CAAC,GAAG,CAAC,CAAC;oBACN,IAAI,QAAQ,GAAG,CAAC,CAAC;oBACjB,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;oBAChC,OAAO,EAAE,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,GAAG,UAAU,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE;wBACjE,OAAO,IAAI,CAAC,CAAC;wBACb,0EAA0E;wBAC1E,CAAC,EAAE,CAAC;wBACJ,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;4BACpD,CAAC,EAAE,CAAC;yBACL;wBACD,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE;4BACpB,oBAAoB;4BACpB,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BACjC,+CAA+C;4BAC/C,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU;4BACrC,QAAQ,EAAE,CAAC;4BACX,6CAA6C;4BAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gCAC3B,IAAI,IAAI,GAAG,CAAC,CAAC;gCACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;oCAC1B,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;iCACf;gCACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oCACzC,6BAA6B;oCAC7B,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,GAAG,IAAI,EAAE;wCAC7C,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,UAAU;wCACrC,QAAQ,EAAE,CAAC;wCACX,MAAM;qCACP;iCACF;6BACF;yBACF;qBACF;oBACD,gEAAgE;oBAChE,IAAI,OAAO,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;oBAC/B,2DAA2D;oBAC3D,4DAA4D;oBAC5D,YAAY,GAAG,IAAI,CAAC;oBACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;wBACvC,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE;4BACvC,YAAY,GAAG,KAAK,CAAC;yBACtB;qBACF;iBACF;gBACD,kEAAkE;gBAClE,IAAI,YAAY,EAAE;oBAChB,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;iBAC1B;aACF;SACF;QACD,uEAAuE;QACvE,KAAK,IAAI,QAAQ,IAAI,MAAM,CAAC,SAAS,EAAE;YACrC,QAAQ,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC;SAC9B;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;CACF,CAAC;AAEF;;;;;GAKG;AACH,SAAS,YAAY,CAAC,MAA6B,EAAE,EAAY;IAC/D,kCAAkC;IAClC,IAAI,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,eAAe;IAC7C,IAAI,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3B,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACnE,MAAM,CAAC,KAAK;QACV,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;IACzE,MAAM,CAAC,YAAY,CAAC,IAAI;QACtB,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;IACzD,MAAM,CAAC,YAAY,CAAC,EAAE;QACpB,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;IAC7E,wDAAwD;IACxD,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;IAClC,MAAM,CAAC,YAAY,GAAG,eAAe,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAClD,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,uDAAuD;AAC/F,CAAC;AAED;;;;;;GAMG;AACH,SAAS,eAAe,CAAC,MAA6B,EAAE,EAAY;IAClE,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,IAAI,OAAO,GAAG,EAAE,CAAC;IACjB,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,QAAQ,GAAG,EAAE,CAAC;IAElB,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;QACvB,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACf,OAAO,CAAC,GAAG,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;QAEH,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YACtC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE;gBACrC,IAAI,EAAE,CAAC;aACR;iBAAM;gBACL,QAAQ,CAAC,IAAI,CAAC;oBACZ,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;oBACzB,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC;iBAC7B,CAAC,CAAC;gBACH,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;gBAC1B,IAAI,GAAG,CAAC,CAAC;aACV;SACF;QACD,IAAI,KAAK,GAAG,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC;YACZ,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;YAC7B,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC;SAC7B,CAAC,CAAC;QACH,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC1B,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC;KACzB;SAAM;QACL,OAAO,GAAG,GAAG,CAAC;QACd,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,GAAG,EAAE,EAAE;YAChE,OAAO,GAAG,MAAM,CAAC;SAClB;KACF;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,YAAY,CAAC,EAAY;IAChC,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC;IAClC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1C,8BAA8B;IAC9B,KAAK,MAAM,EAAE,IAAI,EAAE,EAAE;QACnB,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YAC5C,OAAO,CAAC,IAAI,CAAC;gBACX,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC;gBACxB,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC;aACpC,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACrC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;SACjD;KACF;IACD,2CAA2C;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACpB,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACnB,CAAC,CAAC,CAAC;IACH,KAAK,IAAI,CAAC,GAAG,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAC5C,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE;YACnD,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YACjD,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;SAC1B;KACF;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,MAAiB,EAAE,KAAa;IAC1D,IAAI,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;IACjD,IAAI,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC;IAC/B,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,EAAE,CAAC;IACP,OAAO,GAAG,KAAK,KAAK,EAAE;QACpB,+DAA+D;QAC/D,EAAE,GAAG,KAAK,CAAC;QACX,OAAO,CAAC,EAAE,EAAE;YACV,EAAE,GAAG,IAAI,CAAC;YACV,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACrC,IACE,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC;gBAClC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EACnC;gBACA,uDAAuD;gBACvD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;oBAC9B,OAAO,IAAI,CAAC;iBACb;qBAAM;oBACL,sDAAsD;oBACtD,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBACvC,EAAE,GAAG,KAAK,CAAC;oBACX,MAAM,CAAC,MAAM,EAAE,CAAC;iBACjB;aACF;iBAAM;gBACL,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;aACnB;SACF;QACD,uCAAuC;QACvC,GAAG,GAAG,CAAC,CAAC;QACR,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC7B,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;SACrD;QACD,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,EAAE;YAClC,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC;SAC/D;KACF;IACD,sEAAsE;IACtE,IAAI,GAAG,KAAK,KAAK,EAAE;QACjB,IAAI,OAAO,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;YAC7B,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,OAAO,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;SACjE;QACD,OAAO,OAAO,CAAC;KAChB;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,KAAqB;IACtC,IAAI,MAAM,GAAe,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACjD,IAAI,YAAY,GAAa,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACrD,IAAI,GAAG,EAAE,GAAG,CAAC;IACb,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAChB,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IAC/B,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACrB,YAAY,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;QACzC,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;QAC5C,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,CAAC;QAC5C,MAAM,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QACf,KAAK,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,EAAE,EAAE;YAC/B,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;SACnB;QACD,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;KACrB;IACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC;AACnE,CAAC;AACD;;;;;;;;GAQG;AACH,SAAS,oBAAoB,CAC3B,MAAoB,EACpB,OAIC;IAED,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,GAAG,SAAS,EAAE,GAAG,OAAO,CAAC;IAC5D,wBAAwB;IACxB,IAAI,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAEnE,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;KACvD;IAED,IAAI,QAAQ,GAAG,UAAU,CAAC,SAAS,CAAC;IACpC,IAAI,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC;IAC9B,IAAI,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC;IACtB,MAAM,CAAC,KAAK;QACV,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACpE,IAAI,UAAU,GAAG,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IAEnE,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE;QACzB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;KACvD;IAED,IAAI,UAAU,CAAC,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE;QACjD,OAAO,UAAU,CAAC;KACnB;IACD,MAAM,CAAC,KAAK,GAAG,EAAE,CAAC;IAClB,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC;IAC5B,MAAM,CAAC,IAAI,GAAG,OAAO,CAAC;IACtB,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,UAAU,CACjB,WAAyB,EACzB,QAAgB,EAChB,SAAiB,EACjB,GAAc;IAEd,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC;IAE/B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC;IAC1D,4FAA4F;IAC5F,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,CAAC;IACnC,IAAI,KAAK,GAAmB,IAAI,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9D,sDAAsD;IACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACrC,IAAI,IAAI,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC9B,KAAK,CAAC,CAAC,CAAC,GAAG;YACT,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO;YAClC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC;YAC1B,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK;aACxB;SACF,CAAC;KACH;IACD,8CAA8C;IAC9C,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAC1C,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,EAAE;YAChD,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACR,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;oBAC/B,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1C,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YACjE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACjC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC;YACxB,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;YACjD,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;SACxB;KACF;IACD,SAAS,CAAC,SAAS,GAAG,KAAK,CAAC;IAC5B,IAAI,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3B,IAAI,IAAI,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC;IAC9B,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC;IACtB,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,IAAI,EAAE,GAAG,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,OAAO,CAAC;IAC7C,IAAI,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;IAC1D,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3C,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,sGAAsG;IACtG,uBAAuB;IACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE;QAChC,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;QACf,0CAA0C;QAC1C,SAAS,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;KACjC;IAED,OAAO,IAAI,IAAI,KAAK,EAAE;QACpB,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC;QACnB,IAAI,IAAI,KAAK,KAAK,EAAE;YAClB,IAAI,OAAO,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,QAAQ,EAAE;gBAC1D,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;aACpB;SACF;aAAM;YACL,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;YAC9D,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;YAC9D,KAAK,GAAG,GAAG,GAAG,GAAG,CAAC;YAClB,IAAI,KAAK,GAAG,QAAQ,EAAE;gBACpB,IAAI,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,KAAK,GAAG,EAAE;oBACjC,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;oBACnB,KAAK,EAAE,CAAC;iBACT;qBAAM;oBACL,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;oBACpB,IAAI,EAAE,CAAC;iBACR;aACF;iBAAM;gBACL,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBACzC,IAAI,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;gBAE1C,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,QAAQ,EAAE;oBACtC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC;oBAC9D,QAAQ,GAAG,IAAI,CAAC,GAAG,CACjB,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,EACvB,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CACzB,CAAC;oBACF,KAAK,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,GAAG,CAAC;oBACrD,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,GAAG,QAAQ,CAAC;oBAC9D,MAAM,GAAG;wBACP,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;wBAChD,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC;qBACd,CAAC;iBACH;qBAAM;oBACL,IAAI,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,KAAK,EAAE;wBACpC,IAAI,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;wBACpB,IAAI,EAAE,CAAC;qBACR;yBAAM;wBACL,IAAI,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC;wBACnB,KAAK,EAAE,CAAC;qBACT;iBACF;aACF;SACF;QACD,IAAI,EAAE,CAAC;QACP,KAAK,EAAE,CAAC;QACR,iEAAiE;QACjE,IAAI,SAAS,KAAK,CAAC,EAAE;YACnB,EAAE,GAAG,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YAChC,oCAAoC;YACpC,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE;gBACb,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC;gBACtB,OAAO,SAAS,CAAC;aAClB;SACF;QACD,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;KACxD;IACD,kDAAkD;IAClD,KAAK,IAAI,CAAC,GAAG,OAAO,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE;YACrB,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SACpB;KACF;IACD,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,KAAK,CAAC,EAAE,CAAC,EAAE;QACb,SAAS,CAAC,OAAO,GAAG,CAAC,CAAC;QACtB,OAAO,SAAS,CAAC;KAClB;IACD,SAAS,CAAC,KAAK,GAAG,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC;IACzC,4FAA4F;IAC5F,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QACpB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;YACzD,SAAS;gBACP,CAAC,CAAC,CAAC;oBACD,IAAI,CAAC,GAAG,CACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,EACzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAC7C,CAAC;oBACF,CAAC,CAAC;wBACA,IAAI,CAAC,GAAG,CACN,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,EACzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAC7C,CAAC,CAAC;oBACP,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SAC9B;QACD,SAAS,IAAI,MAAM,CAAC;KACrB;SAAM;QACL,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;YACtB,SAAS,GAAG,CAAC,CAAC;SACf;KACF;IACD,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;QACxB,aAAa,IAAI,IAAI,CAAC,SAAS,CAAC;KACjC;IACD,SAAS,IAAI,CAAC,CAAC,SAAS,GAAG,aAAa,CAAC,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,wBAAwB;IACvF,qEAAqE;IACrE,IAAI,SAAS,GAAG,GAAG,IAAI,SAAS,GAAG,IAAI,IAAI,SAAS,GAAG,CAAC,EAAE;QACxD,OAAO,UAAU,CAAC,SAAS,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;KACrD;SAAM;QACL,kDAAkD;QAClD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACpB,IAAI,GAAG,CAAC;YACR,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;gBACzD,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;gBACzD,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC;gBACtB,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC;aAC1C;SACF;KACF;IACD,SAAS,CAAC,OAAO,GAAG,SAAS,CAAC;IAC9B,OAAO,SAAS,CAAC;AACnB,CAAC;AACD;;;;;GAKG;AACH,SAAS,KAAK,CAAC,KAAa;IAC1B,IAAI,QAAQ,GAAG,KAAK,GAAG,GAAG,CAAC;IAC3B,IAAI,QAAQ,GAAG,IAAI,EAAE;QACnB,QAAQ,GAAG,IAAI,CAAC;KACjB;IACD,IAAI,QAAQ,GAAG,CAAC,EAAE;QAChB,QAAQ,GAAG,CAAC,CAAC;KACd;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AACD;;;;;;;GAOG;AACH,SAAS,SAAS,CAAC,MAA6B,EAAE,CAAS;IACzD,uBAAuB;IACvB,IAAI,KAAK,GAAmB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;IACzE,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;QACtB,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC;KACxB;IACD,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAC7B,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;IAEnC,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IACpC,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAC1C,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC;QAC3B,OAAO,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE;YAClD,KAAK,EAAE,CAAC;SACT;QACD,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,IAAI,EAAE;YAC7B,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YACnB,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;SAC7B;aAAM;YACL,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;SAC7B;QACD,KAAK,EAAE,CAAC;KACT;IACD,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE;QAC1C,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,IAAI,KAAK,CAAC;KAC7B;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,KAAqB,EAAE,OAAkB,EAAE;IAChE,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,IAAI,CAAC;IACT,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;gBACpB,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzB,GAAG,IAAI,IAAI,CAAC;gBACZ,EAAE,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACzB;SACF;KACF;SAAM;QACL,KAAK,IAAI,IAAI,IAAI,KAAK,EAAE;YACtB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;YACrB,GAAG,IAAI,IAAI,CAAC;YACZ,EAAE,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC;SACrB;KACF;IACD,OAAO,EAAE,GAAG,GAAG,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,SAAS,OAAO,CAAC,IAAkB;IACjC,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,gBAAgB;AAC7E,CAAC"}
1
+ {"version":3,"file":"jAnalyzer.js","sourceRoot":"","sources":["../../../src/peaks/util/jAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,15 @@ export function rangesToXY(ranges, options = {}) {
25
25
  };
26
26
  let spectrum = new Float64Array(nbPoints);
27
27
  for (const range of ranges) {
28
- const { integration, signals } = range;
28
+ const { integration, signals = [] } = range;
29
+ const { multiplicity: rangeMulplicity = '' } = range;
30
+ if (rangeMulplicity === 'm' && signals.length < 1) {
31
+ const { from, to } = range;
32
+ signals.push({
33
+ delta: (from + to) / 2,
34
+ multiplicity: 'm',
35
+ });
36
+ }
29
37
  let rangeSpectrum = new Float64Array(nbPoints);
30
38
  for (const signal of signals) {
31
39
  const { multiplicity } = signal;
@@ -89,8 +97,8 @@ function normalizeSpectrum(spectrum, signals, options = {}) {
89
97
  return acc + integration;
90
98
  }, 0), } = options;
91
99
  const sum = spectrum.reduce((acc, element) => acc + element, 0);
92
- const norma = (integration / sum) * 1e6;
93
100
  if (sum !== 0) {
101
+ const norma = (integration / sum) * 1e6;
94
102
  for (let i = 0; i < spectrum.length; i++) {
95
103
  spectrum[i] *= norma;
96
104
  }
@@ -1 +1 @@
1
- {"version":3,"file":"rangesToXY.js","sourceRoot":"","sources":["../../src/ranges/rangesToXY.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rangesToXY.js","sourceRoot":"","sources":["../../src/ranges/rangesToXY.ts"],"names":[],"mappings":"AACA,OAAO,mBAAmB,MAAM,0BAA0B,CAAC;AAE3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAuC7D,SAAS,eAAe,CACtB,MAAkB;IAElB,KAAK,IAAI,KAAK,IAAI,MAAM,EAAE;QACxB,IAAI,CAAC,KAAK,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;KAC9D;AACH,CAAC;AACD,MAAM,UAAU,UAAU,CAAC,MAAkB,EAAE,UAAe,EAAE;IAC9D,eAAe,CAAC,MAAM,CAAC,CAAC;IACxB,IAAI,EACF,SAAS,GAAG,GAAG,EACf,SAAS,GAAG,CAAC,EACb,IAAI,GAAG,CAAC,EACR,EAAE,GAAG,EAAE,EACP,QAAQ,GAAG,EAAE,GAAG,IAAI,EACpB,KAAK,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,GAC7B,GAAG,OAAO,CAAC;IAEZ,MAAM,WAAW,GAAG,CAAC,CAAc,EAAE,CAAc,EAAE,EAAE;QACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC,EAAE,EAAE;YACjC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;SACd;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG;QACtB,IAAI;QACJ,EAAE;QACF,QAAQ;QACR,KAAK;QACL,SAAS;QACT,SAAS;KACV,CAAC;IAEF,IAAI,QAAQ,GAAgB,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC;IACvD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;QAC1B,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC;QAC5C,MAAM,EAAE,YAAY,EAAE,eAAe,GAAG,EAAE,EAAE,GAAG,KAAK,CAAC;QACrD,IAAI,eAAe,KAAK,GAAG,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;YACjD,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC;YAC3B,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,CAAC;gBACtB,YAAY,EAAE,GAAG;aAClB,CAAC,CAAC;SACJ;QACD,IAAI,aAAa,GAAgB,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC5D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;YAChC,IAAI,cAAc,GAChB,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,MAAM;gBACrE,CAAC,CAAC,4BAA4B,CAAC,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC;gBAC3D,CAAC,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC;YACnD,iBAAiB,CAAC,cAAc,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;YAC5C,WAAW,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;SAC5C;QACD,IAAI,KAAK,CAAC,WAAW,EAAE;YACrB,iBAAiB,CAAC,aAAa,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;SAC5D;QACD,WAAW,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;KACtC;IAED,OAAO;QACL,CAAC,EAAE,mBAAmB,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;QACpD,CAAC,EAAE,QAAQ;KACZ,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CACnC,OAAsB,EACtB,UAAe,EAAE;IAEjB,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,OAAO,CAAC;IACzC,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAEzD,MAAM,UAAU,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC;IAC/C,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE;QAC1B,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,WAAW,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC;QACxD,IAAI,YAAY,KAAK,GAAG,IAAI,YAAY,KAAK,MAAM,EAAE;YACnD,iBAAiB,CAAC,OAAO,CAAC;gBACxB,CAAC,EAAE,KAAK;gBACR,CAAC,EAAE,WAAW;gBACd,KAAK,EAAE,UAAU;aAClB,CAAC,CAAC;SACJ;aAAM;YACL,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,EAAE;gBACpC,SAAS;gBACT,SAAS;aACV,CAAC,CAAC;YACH,iBAAiB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;SACnC;KACF;IACD,OAAO,iBAAiB,CAAC,WAAW,EAAE,CAAC;AACzC,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAa,EAAE,OAAY;IACnD,MAAM,EACJ,SAAS,EACT,SAAS,EACT,WAAW,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,GAC1C,GAAG,OAAO,CAAC;IAEZ,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,CAAC;IAC3C,MAAM,iBAAiB,GAAG,YAAY,GAAG,GAAG,CAAC;IAE7C,MAAM,KAAK,GAAG,EAAE,CAAC;IACjB,MAAM,iBAAiB,GACrB,KAAK,GAAG,CAAC,iBAAiB,GAAG,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACvD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QAC3C,KAAK,CAAC,IAAI,CAAC;YACT,CAAC,EAAE,iBAAiB,GAAG,iBAAiB,GAAG,CAAC;YAC5C,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;YACjB,KAAK,EAAE,YAAY;SACpB,CAAC,CAAC;KACJ;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,iBAAiB,CACxB,QAAqB,EACrB,OAAsB,EACtB,UAAe,EAAE;IAEjB,MAAM,EACJ,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;QAC3C,MAAM,EAAE,WAAW,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC;QACnC,OAAO,GAAG,GAAG,WAAW,CAAC;IAC3B,CAAC,EAAE,CAAC,CAAC,GACN,GAAG,OAAO,CAAC;IACZ,MAAM,GAAG,GAAI,QAAyB,CAAC,MAAM,CAC3C,CAAC,GAAW,EAAE,OAAe,EAAE,EAAE,CAAC,GAAG,GAAG,OAAO,EAC/C,CAAC,CACF,CAAC;IAEF,IAAI,GAAG,KAAK,CAAC,EAAE;QACb,MAAM,KAAK,GAAG,CAAC,WAAW,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACxC,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC;SACtB;KACF;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"simulate1D.js","sourceRoot":"","sources":["../../../src/signals/simulation/simulate1D.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulate1D.js","sourceRoot":"","sources":["../../../src/signals/simulation/simulate1D.ts"],"names":[],"mappings":"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"}
@@ -32,14 +32,14 @@ function getPeakList(data, options) {
32
32
  shape,
33
33
  sgOptions,
34
34
  minMaxRatio,
35
- broadRatio,
36
35
  noiseLevel,
37
36
  smoothY,
38
37
  realTopDetection,
39
38
  });
40
39
  if (broadWidth) {
41
- peakList = joinBroadPeaks(peakList, {
42
- width: broadWidth,
40
+ peakList = joinBroadPeaks(data, peakList, {
41
+ broadRatio,
42
+ broadWidth,
43
43
  shape,
44
44
  optimization,
45
45
  });
@@ -1 +1 @@
1
- {"version":3,"file":"xyAutoPeaksPicking.js","sourceRoot":"","sources":["../../src/xy/xyAutoPeaksPicking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xyAutoPeaksPicking.js","sourceRoot":"","sources":["../../src/xy/xyAutoPeaksPicking.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nmr-processing",
3
- "version": "3.3.3",
3
+ "version": "4.0.0",
4
4
  "description": "Pure functions allowing to process NMR spectra.",
5
5
  "main": "./lib/index.js",
6
6
  "module": "./lib-esm/index.js",
@@ -73,18 +73,18 @@
73
73
  "ml-array-rescale": "^1.3.6",
74
74
  "ml-array-sequential-fill": "^1.1.7",
75
75
  "ml-array-sum": "^1.1.5",
76
- "ml-gsd": "^7.0.1",
76
+ "ml-gsd": "^9.0.1",
77
77
  "ml-hclust": "^3.1.0",
78
78
  "ml-levenberg-marquardt": "^3.1.1",
79
79
  "ml-matrix": "^6.8.0",
80
80
  "ml-matrix-convolution": "^1.0.0",
81
81
  "ml-matrix-peaks-finder": "^1.0.0",
82
- "ml-peak-shape-generator": "^2.0.2",
82
+ "ml-peak-shape-generator": "^3.0.3",
83
83
  "ml-simple-clustering": "^0.1.0",
84
84
  "ml-sparse-matrix": "^2.1.0",
85
85
  "ml-spectra-processing": "^6.8.0",
86
86
  "ml-tree-set": "^0.1.1",
87
87
  "openchemlib-utils": "^1.5.1",
88
- "spectrum-generator": "^5.4.1"
88
+ "spectrum-generator": "^6.0.1"
89
89
  }
90
90
  }
@@ -0,0 +1,100 @@
1
+ import { Molecule } from 'openchemlib';
2
+ import { addDiastereotopicMissingChirality } from 'openchemlib-utils';
3
+
4
+ import { NMRRange, NMRRangeWithIntegration } from '..';
5
+ import {
6
+ predictCarbon,
7
+ PredictCarbonOptions,
8
+ } from '../prediction/predictCarbon';
9
+ import type { NMRSignal1D } from '../types/NMRSignal1D';
10
+
11
+ import type { NMRSignal1DWithAtomsAndDiaIDs, Targets } from './get1HAssignments';
12
+ import { RestrictionByCS, buildAssignments } from './utils/buildAssignments';
13
+ import generateID from './utils/generateID';
14
+
15
+ function checkAtomsAndDiaIDs(
16
+ signals: NMRSignal1D[],
17
+ ): asserts signals is NMRSignal1DWithAtomsAndDiaIDs[] {
18
+ for (const signal of signals) {
19
+ if (!signal.atoms) throw new Error('signal has not atoms property');
20
+ if (!signal.diaIDs) throw new Error('signal has not diaIDs property');
21
+ if (!signal.nbAtoms) throw new Error('signal has not nbAtoms property');
22
+ }
23
+ }
24
+
25
+ function checkIntegration(ranges: NMRRange[]) {
26
+ for (let range of ranges) {
27
+ if (range.integration === undefined) range.integration = 0;
28
+ }
29
+ return ranges as NMRRangeWithIntegration[];
30
+ }
31
+
32
+ export interface Get13CAssignmentsOptions {
33
+ restrictionByCS?: Partial<RestrictionByCS>;
34
+ /**
35
+ * min score to accept an assignment
36
+ * @default 1
37
+ */
38
+ minScore?: number;
39
+ /**
40
+ * maximal number of assignments to return
41
+ * @default 10
42
+ */
43
+ maxSolutions?: number;
44
+ /**
45
+ * number of allowed unassignment signals
46
+ * @default 0
47
+ */
48
+ nbAllowedUnAssigned?: number;
49
+ /**
50
+ * time limit in miliseconds to finish the assignment procedure.
51
+ * @default 6000
52
+ */
53
+ timeout?: number;
54
+ /**
55
+ * prediction options
56
+ */
57
+ predictionOptions?: PredictCarbonOptions;
58
+ }
59
+
60
+ export async function get13CAssignments(
61
+ ranges: NMRRange[],
62
+ molecule: Molecule,
63
+ options: Get13CAssignmentsOptions = {},
64
+ ) {
65
+ let {
66
+ restrictionByCS = {},
67
+ minScore = 1,
68
+ maxSolutions = 10,
69
+ nbAllowedUnAssigned = 0,
70
+ timeout = 6000,
71
+ predictionOptions = {},
72
+ } = options;
73
+
74
+ if (!molecule) {
75
+ throw new Error('It is needed a OCL molecule instance to assign');
76
+ }
77
+
78
+ addDiastereotopicMissingChirality(molecule);
79
+ const { joinedSignals } = await predictCarbon(molecule, predictionOptions);
80
+
81
+ checkAtomsAndDiaIDs(joinedSignals);
82
+ const copyRanges = checkIntegration(ranges);
83
+
84
+ const targets: Targets = {};
85
+ for (const range of copyRanges) {
86
+ const { id = generateID() } = range;
87
+ targets[id] = JSON.parse(JSON.stringify(range));
88
+ }
89
+
90
+ return buildAssignments({
91
+ restrictionByCS,
92
+ timeout,
93
+ minScore,
94
+ nbAllowedUnAssigned,
95
+ maxSolutions,
96
+ targets,
97
+ joinedSignals,
98
+ useIntegrationRestriction: false,
99
+ });
100
+ }
@@ -0,0 +1,116 @@
1
+ import { Molecule } from 'openchemlib';
2
+ import { addDiastereotopicMissingChirality } from 'openchemlib-utils';
3
+
4
+ import { NMRRange } from '..';
5
+ import {
6
+ predictProton,
7
+ PredictProtonOptions,
8
+ } from '../prediction/predictProton';
9
+ import { MakeMandatory } from '../types/MakeMandatory';
10
+ import type { NMRSignal1D } from '../types/NMRSignal1D';
11
+
12
+ import { buildAssignments, RestrictionByCS } from './utils/buildAssignments';
13
+ import generateID from './utils/generateID';
14
+
15
+ export type NMRSignal1DWithAtomsAndDiaIDs = MakeMandatory<
16
+ NMRSignal1D,
17
+ 'atoms' | 'diaIDs' | 'nbAtoms'
18
+ >;
19
+
20
+ function checkAtomsAndDiaIDs(
21
+ signals: NMRSignal1D[],
22
+ ): asserts signals is NMRSignal1DWithAtomsAndDiaIDs[] {
23
+ for (const signal of signals) {
24
+ if (!signal.atoms) throw new Error('signal has not atoms property');
25
+ if (!signal.diaIDs) throw new Error('signal has not diaIDs property');
26
+ if (!signal.nbAtoms) throw new Error('signal has not nbAtoms property');
27
+ }
28
+ }
29
+
30
+ export type NMRRangeWithIntegration = MakeMandatory<NMRRange, 'integration'>;
31
+
32
+ function checkForIntegration(
33
+ ranges: NMRRange[],
34
+ ): asserts ranges is NMRRangeWithIntegration[] {
35
+ for (let range of ranges) {
36
+ if (range.integration === undefined) {
37
+ throw new Error('ranges has not integration property');
38
+ }
39
+ }
40
+ }
41
+
42
+ export interface Get1HAssignmentsOptions {
43
+ restrictionByCS?: Partial<RestrictionByCS>;
44
+ /**
45
+ * min score to accept an assignment
46
+ * @default 1
47
+ */
48
+ minScore?: number;
49
+ /**
50
+ * maximal number of assignments to return
51
+ * @default 10
52
+ */
53
+ maxSolutions?: number;
54
+ /**
55
+ * number of allowed unassignment signals
56
+ * @default 0
57
+ */
58
+ nbAllowedUnAssigned?: number;
59
+ /**
60
+ * time limit in miliseconds to finish the assignment procedure.
61
+ * @default 6000
62
+ */
63
+ timeout?: number;
64
+ /**
65
+ * prediction options
66
+ */
67
+ predictionOptions?: PredictProtonOptions;
68
+ }
69
+
70
+ export interface Targets {
71
+ [key: string]: NMRRangeWithIntegration;
72
+ }
73
+
74
+ export async function get1HAssignments(
75
+ ranges: NMRRange[],
76
+ molecule: Molecule,
77
+ options: Get1HAssignmentsOptions = {},
78
+ ) {
79
+ let {
80
+ restrictionByCS,
81
+ minScore = 1,
82
+ maxSolutions = 10,
83
+ nbAllowedUnAssigned = 0,
84
+ timeout = 6000,
85
+ predictionOptions = {},
86
+ } = options;
87
+
88
+ if (!molecule) {
89
+ throw new Error('It is needed a OCL molecule instance to assign');
90
+ }
91
+
92
+ molecule.addImplicitHydrogens();
93
+ addDiastereotopicMissingChirality(molecule);
94
+
95
+ const { joinedSignals } = await predictProton(molecule, predictionOptions);
96
+
97
+ checkForIntegration(ranges);
98
+ checkAtomsAndDiaIDs(joinedSignals);
99
+
100
+ const targets: Targets = {};
101
+ for (const range of ranges) {
102
+ const { id = generateID() } = range;
103
+ targets[id] = JSON.parse(JSON.stringify(range));
104
+ }
105
+
106
+ return buildAssignments({
107
+ restrictionByCS,
108
+ timeout,
109
+ minScore,
110
+ nbAllowedUnAssigned,
111
+ maxSolutions,
112
+ targets,
113
+ joinedSignals,
114
+ useIntegrationRestriction: true,
115
+ });
116
+ }
@@ -0,0 +1,155 @@
1
+ import treeSet from 'ml-tree-set';
2
+
3
+ import {
4
+ Targets,
5
+ NMRSignal1DWithAtomsAndDiaIDs,
6
+ } from '../get1HAssignments';
7
+
8
+ import { createMapPossibleAssignments } from './createMapPossibleAssignments';
9
+ import { exploreTreeRec } from './exploreTreeRec';
10
+ import type { SolutionAssignment } from './exploreTreeRec';
11
+
12
+ const comparator = (a: SolutionAssignment, b: SolutionAssignment) => {
13
+ return b.score - a.score;
14
+ };
15
+
16
+ export interface RestrictionByCS {
17
+ chemicalShiftRestriction: boolean;
18
+ tolerance: number;
19
+ useChemicalShiftScore: boolean;
20
+ }
21
+
22
+ export interface BuildAssignmentsProps {
23
+ restrictionByCS?: Partial<RestrictionByCS>;
24
+ timeout: number;
25
+ minScore: number;
26
+ useIntegrationRestriction: boolean;
27
+ nbAllowedUnAssigned: number;
28
+ maxSolutions: number;
29
+ targets: Targets;
30
+ joinedSignals: NMRSignal1DWithAtomsAndDiaIDs[];
31
+ }
32
+
33
+ export interface Signals1DAssignment extends NMRSignal1DWithAtomsAndDiaIDs {
34
+ diaIDIndex: number;
35
+ allHydrogens: number;
36
+ error?: number;
37
+ }
38
+
39
+ export interface Predictions1Dassignments {
40
+ [key: string]: Signals1DAssignment;
41
+ }
42
+
43
+ export interface StoreAssignments1D {
44
+ solutions: treeSet;
45
+ nSolutions: number;
46
+ }
47
+
48
+ export async function buildAssignments(props: BuildAssignmentsProps) {
49
+ const {
50
+ restrictionByCS = {},
51
+ useIntegrationRestriction,
52
+ timeout,
53
+ minScore,
54
+ nbAllowedUnAssigned,
55
+ maxSolutions,
56
+ targets,
57
+ joinedSignals,
58
+ } = props;
59
+
60
+ const {
61
+ tolerance = 1,
62
+ useChemicalShiftScore = false,
63
+ chemicalShiftRestriction = true,
64
+ } = restrictionByCS;
65
+
66
+ let date = new Date();
67
+ let timeStart = date.getTime();
68
+
69
+ let store: StoreAssignments1D = {
70
+ solutions: new treeSet(comparator),
71
+ nSolutions: 0,
72
+ };
73
+
74
+ let nSources = joinedSignals.length;
75
+ const predictions: Predictions1Dassignments = {};
76
+
77
+ for (let prediction of joinedSignals) {
78
+ const diaID = prediction.diaIDs[0];
79
+ const index = prediction.atoms[0];
80
+ predictions[diaID] = {
81
+ ...prediction,
82
+ diaIDIndex: index,
83
+ allHydrogens: prediction.nbAtoms,
84
+ };
85
+ }
86
+
87
+ const possibleAssignmentMap = createMapPossibleAssignments({
88
+ restrictionByCS: {
89
+ tolerance,
90
+ useChemicalShiftScore,
91
+ chemicalShiftRestriction,
92
+ },
93
+ useIntegrationRestriction,
94
+ predictions,
95
+ targets,
96
+ });
97
+
98
+ const diaIDPeerPossibleAssignment = Object.keys(possibleAssignmentMap);
99
+
100
+ let partial = fillPartial(nSources);
101
+
102
+ store = {
103
+ solutions: new treeSet(comparator),
104
+ nSolutions: 0,
105
+ };
106
+
107
+ exploreTreeRec(
108
+ {
109
+ nSources,
110
+ restrictionByCS: {
111
+ tolerance,
112
+ useChemicalShiftScore,
113
+ chemicalShiftRestriction,
114
+ },
115
+ timeout,
116
+ timeStart,
117
+ targets,
118
+ predictions,
119
+ maxSolutions,
120
+ lowerBoundScore: minScore,
121
+ nbAllowedUnAssigned,
122
+ possibleAssignmentMap,
123
+ diaIDPeerPossibleAssignment,
124
+ useIntegrationRestriction,
125
+ },
126
+ 0,
127
+ partial,
128
+ store,
129
+ );
130
+
131
+ const assignments = [];
132
+ for (const solution of store.solutions.elements) {
133
+ const { assignment, score } = solution;
134
+ const currentAssignment = JSON.parse(JSON.stringify(targets));
135
+ for (let i = 0; i < assignment.length; i++) {
136
+ let range = currentAssignment[assignment[i]];
137
+ if (!range.diaIDs) range.diaIDs = [];
138
+ if (assignment[i]) range.diaIDs.push(diaIDPeerPossibleAssignment[i]);
139
+ }
140
+ assignments.push({
141
+ score,
142
+ assignment: Object.values(currentAssignment),
143
+ });
144
+ }
145
+
146
+ return assignments;
147
+ }
148
+
149
+ function fillPartial(nSources: number, value = null) {
150
+ const partial = new Array(nSources);
151
+ for (let i = 0; i < nSources; i++) {
152
+ partial[i] = value;
153
+ }
154
+ return partial;
155
+ }