@datagrok-libraries/bio 5.65.1 → 5.65.3

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.
package/CLAUDE.md CHANGED
@@ -65,9 +65,9 @@ This decouples the library from concrete package implementations, allowing packa
65
65
 
66
66
  | File | Purpose |
67
67
  |---|---|
68
- | `types.ts` | Re-exports all HELM types from `@datagrok-libraries/helm-web-editor` and `js-draw-lite`: `HelmType`, `HelmAtom`, `HelmBond`, `HelmMol`, `HelmEditor`, `PolymerType`, `MonomerType`, `IHelmWebEditor`, `ISeqMonomer`, `MonomerSetType`, etc. |
68
+ | `types.ts` | Re-exports HELM types from `@datagrok-libraries/helm-web-editor` and `js-draw-lite`: `HelmType`, `HelmAtom` / `Atom` / `IJsAtom`, `HelmBond` / `Bond`, `HelmMol` / `Mol`, `HelmEditor` / `Editor`, `MonomerExplorer`, `PolymerType`, `MonomerType`, `IHelmWebEditor`, `ISeqMonomer`, `MonomerSetType`, `WebEditorRGroups`, `MonomersFuncs`, `TabDescType`, `IBio` / `IHelmBio`, `HelmString`, `Point`, browser-side singletons `HweWindow` / `ScilModuleType` / `JSDraw2ModuleType` / `OrgType` / `DojoType` / `DojoxType` |
69
69
  | `consts.ts` | Re-exports `HelmTypes`, `MonomerTypes`, `PolymerTypes`, `MonomerNumberingTypes`, `HelmTabKeys` |
70
- | `helm-helper.ts` | `IHelmHelper` interface (parse, removeGaps, getMolfiles, createHelmInput, createWebEditorApp), `HelmInputBase` abstract class, `HelmNotSupportedError`, `getHelmHelper()` factory, `getMonomerHandleArgs()` helper. Augments `ui.input` with `helmAsync()` |
70
+ | `helm-helper.ts` | `IHelmHelper` interface — `parse()`, `removeGaps()`, `getMolfiles()`, `createHelmInput()`, `createHelmWebEditor()`, `createWebEditorApp()`, `getHoveredAtom()`, plus monomer-funcs hooks (`originalMonomersFuncs` getter, `buildMonomersFuncsFromLib()`, `overrideMonomersFuncs()` / `revertOriginalMonomersFuncs()`) and `seqHelper` getter. `HelmInputBase` abstract class. `HelmNotSupportedError` (+ `HelmNotSupportedErrorType`). `getHelmHelper()` factory. `getMonomerHandleArgs()` helper. `IHelmInputInitOptions`, `HelmConvertRes` exported. Augments `ui.input` with `helmAsync()` |
71
71
  | `utils.ts` | `cleanupHelmSymbol()` — strips brackets from HELM monomer symbols |
72
72
 
73
73
  ### `molecule/` — 2D Molecule Column Handling
@@ -93,23 +93,23 @@ The core engine for converting macromolecule sequences into V3000 molfiles.
93
93
 
94
94
  | File | Purpose |
95
95
  |---|---|
96
- | `types.ts` | Core types: `MonomerGraph` (atoms, bonds, R-groups), `MolGraph` (assembled molecule graph), `MonomerMapValue` (atom/bond indices per position), `MonomerSequenceDict`, `SeqToMolfileWorkerInput/Output`, `LibSettings` |
97
- | `consts.ts` | V2K/V3K parsing tokens, precision factors, canonical nucleotide component symbols (ribose, deoxyribose, phosphate) |
98
- | `monomer-works.ts` | `MonomerWorks` class — wraps `IMonomerLib`, provides `getMonomerMolfile()`. `helmTypeToPolymerType()` converter |
99
- | `to-atomic-level.ts` | **Core engine.** `seqColToMolFileColumn()` — converts macromolecule column to molfile column. Handles molfile parsing, V2K→V3K conversion, spatial adjustment (rotation, flipping, coordinate shifting), R-group capping, stereo-center handling, and final V3K assembly |
100
- | `to-atomic-level-utils.ts` | Molfile assembly engine: `buildMolfileFromSeq()` — chains monomers into a complete V3K molfile. Handles peptide bonds, nucleotide assembly (sugar+phosphate+base), terminal capping |
101
- | `seq-to-molfile.ts` | Parallel orchestration: `seqToMolfile()` — spawns Web Workers for parallel conversion. `getHighlightMoleculeData()` — builds per-monomer atom/bond coloring for highlights |
102
- | `seq-to-molfile-worker.ts` | Web Worker entry point — receives sequence chunks, calls `buildMolfileFromSeq()`, posts results back |
103
- | `monomer-hover.ts` | `addMonomerHoverLink()` — creates hover links between sequence cells and molecule cells with LRU-cached monomer maps. `executeHoverLinks()` / `getHoverLinks()` / `addHoverLink()` |
104
- | `monomer-utils.ts` | Analytics: `encodeMonomerSymbol()` (Unicode encoding), `getMonomerMolfiles()`, `sdfToJson()` (SDF→HELM library conversion), `calculatePositionChemSimilarity()`, `monomerPairwiseSimilarity()`, `getSubstitutionMatrix()` |
105
- | `lib-settings.ts` | `loadLibSettings()` / `saveLibSettings()` — user-specific monomer library preferences with chunked storage |
106
- | `utils.ts` | Small shared helpers: `getAtomicLevelColName()`, `helmTypeToNotation()`, `hexToPercentRgba()` |
96
+ | `types.ts` | Core types: `Atoms` / `Bonds` / `MonomerMetadata` (parsed-molfile data), `MolGraph` (assembled molecule graph) + `MonomerMolGraphMap` + `getMolGraph` / `hasMolGraph` / `setMolGraph` helpers, `LibMonomerKey`, `MonomerMap` / `MonomerMapValue` / `MolfileWithMap`, `LoopVariables` / `LoopConstants` / `NumberWrapper`, `Point`, `ITypedArray`, `UserLibSettings`, `NucleotideRole` enum (`SUGAR` / `BASE` / `PHOSPHATE` / `TERMINAL_5P` / `TERMINAL_3P`), `SeqToMolfileWorkerData` / `SeqToMolfileWorkerRes` |
97
+ | `consts.ts` | `monomerWorksConsts` object — V2K/V3K parsing tokens, `PRECISION_FACTOR`, canonical nucleotide component keys (`RIBOSE` / `DEOXYRIBOSE` / `PHOSPHATE`), `OXYGEN` / `HYDROGEN` element symbols |
98
+ | `monomer-works.ts` | `MonomerWorks` class — wraps `IMonomerLib`, provides `getMonomerMolfile()`. `helmTypeToPolymerType()` converter. `IMolfileConverter` interface |
99
+ | `to-atomic-level.ts` | **Core engine.** `_toAtomicLevel()` — converts macromolecule column to V3000 molfile column. HELM RNA path (triples mode) keeps per-position sugar/base/phosphate (via `getMonomerSequencesArray`, `getMonomersDictFromLib`, `buildRolesForHelmRna`); legacy path uses default ribose/deoxyribose/phosphate. Handles V2K→V3K conversion (`convertMolfileToV3K`, `fixV2000MolfileRAtomLines`), atom/bond block parsing (`parseAtomBlock` is internal; `parseBondBlock`, `parseAtomAndBondCounts`, `parseCapGroups`, `parseCapGroupIdxMap` / `parseCapGroupIdxMapV2K` / `parseCapGroupIdxMapV3K` are exported), R-group capping, stereo-center handling, V3K serialization (`convertMolGraphToMolfileV3K`), capped-monomer rendering (`getSymbolToCappedMolfileMap`, `capPeptideMonomer`). The geometric pipeline (`adjustSugarMonomerGraph`, `adjustPhosphateMonomerGraph`, `adjustBaseMonomerGraph`, `adjustPeptideMonomerGraph`) places R-attached atoms (`terminalNodes`) on the OX axis with R3 / branch up; the sugar branch is overridden so the base is placed above the topmost atom for non-canonical sugars (e.g. LNA's 2,4-bridge). `setShiftsAndTerminalNodes` injects an O at the R1 cap position when the cap is `H` so phosphorothioate-style linkers (sp, en, …) keep a real C-O-P bridging atom |
100
+ | `to-atomic-level-utils.ts` | Molfile assembly engine: `monomerSeqToMolfile()` — chains monomers into a complete V3K molfile (peptide bonds, nucleotide assembly: sugar+base+phosphate, terminal capping). `runTriplesAssembly()` (internal) handles HELM RNA per-row triples including 5'/3' terminal modifiers (Chol / GalNAc / Bio) and missing-trailing-phosphate. `getFormattedMonomerLib()` (lib → per-symbol object map). `keepPrecision()` (coordinate rounding helper) |
101
+ | `seq-to-molfile.ts` | `seqToMolFileWorker()` — orchestrates the molfile column build (single-threaded today; the `Worker` plumbing is wired but disabled — runs synchronously per row). `getMolHighlight()` — builds an `ISubstruct` from per-monomer atom/bond ranges for hover highlights. `SeqToMolfileResult` type |
102
+ | `seq-to-molfile-worker.ts` | Web Worker entry point — receives `SeqToMolfileWorkerData`, calls `monomerSeqToMolfile()`, posts `SeqToMolfileWorkerRes` back |
103
+ | `monomer-hover.ts` | `addMonomerHoverLink()` — wires hover from a sequence cell to a molecule cell with LRU-cached monomer maps. `execMonomerHoverLinks()` / `getMonomerHoverLinks()`. `MonomerHoverLinksTemp` column-tag constant |
104
+ | `monomer-utils.ts` | Analytics: `encodeMonomers()` (Unicode encoding of monomer symbols for cosine-distance use), `getMolfilesFromSeq()` / `getMolfilesFromSingleSeq()` (per-position molfile assembly), `createMomomersMolDict()`, `createJsonMonomerLibFromSdf()` (SDF table → HELM JSON library) |
105
+ | `lib-settings.ts` | `getUserLibSettings()` / `setUserLibSettings()` — user-specific monomer library preferences with chunked storage |
106
+ | `utils.ts` | Small shared helpers: `getUnusedColName()`, `getMolColName()`, `alphabetToPolymerType()`, `hexToPercentRgb()`. `MonomerHoverLink` type |
107
107
 
108
108
  **Data flow for sequence → molfile conversion:**
109
- 1. `seqColToMolFileColumn()` in `to-atomic-level.ts` is the entry point
110
- 2. It parses monomer molfiles from the library into `MonomerGraph` objects
111
- 3. `seqToMolfile()` in `seq-to-molfile.ts` spawns Web Workers
112
- 4. Each worker (`seq-to-molfile-worker.ts`) calls `buildMolfileFromSeq()` from `to-atomic-level-utils.ts`
109
+ 1. `_toAtomicLevel()` in `to-atomic-level.ts` is the entry point. HELM RNA columns stay in triples mode (per-position sugar / base / phosphate); other notations convert to separator first.
110
+ 2. It parses monomer molfiles from the library into `MolGraph` objects (`getMonomersDictFromLib` → `getMolGraph` per symbol).
111
+ 3. `seqToMolFileWorker()` in `seq-to-molfile.ts` iterates rows.
112
+ 4. Each row calls `monomerSeqToMolfile()` from `to-atomic-level-utils.ts`, which threads the row through the geometric assembly loop. The chirality engine (`Chem:convertToV3KViaOCL`) is applied to the resulting column to add `STEABS` blocks.
113
113
 
114
114
  ### `utils/` — Core Utilities
115
115
 
@@ -117,13 +117,15 @@ The core engine for converting macromolecule sequences into V3000 molfiles.
117
117
 
118
118
  | File | Purpose |
119
119
  |---|---|
120
- | `types.ts` | **Key file.** `ISplitted` (split sequence interface), `INotationProvider` (notation-specific behavior), `SplitterFunc` type, `CandidateType` (alphabet detection), `SeqColStats` / `SeqColStatsCached` |
121
- | `consts.ts` | **Key file.** `NOTATION` enum (FASTA, SEPARATOR, HELM), `ALIGNMENT` enum, `ALPHABET` enum (DNA, RNA, PT, UN), `TAGS` (column tag names for units, aligned, alphabet, separator, region), `GAP_SYMBOL`, `ALPHABET_CHARS`, regex patterns for FASTA/HELM parsing |
122
- | `utils.ts` | **Largest utility file.** All `Splitter` implementations: `SplitterBase`, `SplitterFasta`, `SplitterHelm`, `SplitterBiln`. Splitter factory functions. Alphabet detection via cosine similarity. Palette selection. Monomer abbreviation. `getJoiner()`, `getAlphabetSimilarity()`, `getStats()`, `candidateStats()` |
120
+ | `types.ts` | **Key file.** `ISeqSplitted` (split sequence interface) + `SeqSplittedBase`, `INotationProvider` (notation-specific behavior) + `NotationProviderBase`, `SplitterFunc` type, `IMonomerCanonicalizer`, `CandidateType` / `CandidateSimType` (alphabet detection), `MonomerFreqs`, `SeqColStats`, graph types `ISeqConnection` / `ISeqGraphInfo` |
121
+ | `consts.ts` | **Key file.** `NOTATION` enum (FASTA, SEPARATOR, HELM, BILN, CUSTOM), `ALIGNMENT` enum, `ALPHABET` enum (DNA, RNA, PT, UN), `TAGS` enum (column tag names `units`, `aligned`, `alphabet`, `separator`, `region`, plus also exported as `BioTags`), `Alphabets` namespace (per-alphabet character sets), `GAP_SYMBOL`, `GapOriginals`, `candidateAlphabets`, `monomerRe` / `helmRe` / `helmPp1Re`, `MONOMER_MOTIF_SPLITTER`, `MONOMER_CANONICALIZER_FUNC_TAG` / `MONOMER_CANONICALIZER_TEMP`, `NOTATION_PROVIDER_CONSTRUCTOR_ROLE`, `positionSeparator` |
122
+ | `utils.ts` | **Largest utility file.** Splitter implementations: `StringListSeqSplitted` (separator), `FastaSimpleSeqSplitted`, `HelmSplitted` (with graph info), `BilnSeqSplitted` (cycles/connections). Splitter factory funcs: `splitterAsFasta`, `splitterAsFastaSimple`, `splitterAsHelm`, `splitterAsBiln`, `getSplitterWithSeparator`, `getSplitter`. Alphabet detection: `detectAlphabet`, `detectHelmAlphabet`, `getAlphabet`, `getAlphabetSimilarity`, `getStatsForCol`, `pickUpPalette` / `pickUpSeqCol` / `getPaletteByType`. Monomer abbreviation (`monomerToShort`). HELM helpers: `polymerTypeToHelmType`, `RNA_HELM_TRIPLET_MONOMER_REG`, `RNA_HELM_TERMINAL_PHOSPHATELESS_MONOMER_REG` |
123
123
  | `seq-handler.ts` | `ISeqHandler` interface — central abstraction for a macromolecule column: notation, alphabet, separator, splitter/joiner, HELM conversion, region extraction, distance function selection. `SeqValueBase` — wraps a single row value with `getOriginal()`, `getCanonical()`, `helm` |
124
124
  | `scoring.ts` | `ScoringMethod` enum + `calculateIdentityScoring()` / `calculateChemSimilarityScoring()` — sequence scoring vs reference |
125
125
  | `alignment.ts` | `pairwiseAlignmentWithEmptyPositions()` — Needleman-Wunsch alignment with gap penalties |
126
- | `monomers.ts` | Precomputed SMILES/fingerprints for 20 amino acids + 5 nucleotides. `calcMonomerFps()`, `matchMonomerToNatural()` |
126
+ | `monomers.ts` | Precomputed SMILES + fingerprints for the 20 amino acids and 5 nucleotides: `naturalMonomers`, `naturalMonomerFps`, `getMorganFingerprint()`, `mostSimilarNaturalAnalog()` |
127
+ | `annotations.ts` | Sequence-annotation type system: `AnnotationVisualType` / `AnnotationCategory` / `LiabilitySeverity` enums, `SeqAnnotation` / `SeqAnnotationHit` interfaces, `RowAnnotationData` row payload, default colors/opacity constants used by the annotation cell-renderer overlay |
128
+ | `numbering-schemes.ts` | Antibody numbering scheme region definitions: `NumberingScheme` / `ChainType` enums, `SchemeRegionDef`, and `IMGT_REGIONS` / `KABAT_REGIONS` / `CHOTHIA_REGIONS` / `AHO_REGIONS` plus `SCHEME_REGIONS` lookup |
127
129
  | `index.ts` | Barrel re-exports for the macromolecule module |
128
130
 
129
131
  #### Cell Rendering
@@ -140,13 +142,18 @@ The core engine for converting macromolecule sequences into V3000 molfiles.
140
142
 
141
143
  | File | Purpose |
142
144
  |---|---|
143
- | `seq-helper.ts` | `ISeqHelper` interface + `getSeqHelper()` factory. `ISeqHelper` is the primary entry point for sequence operations: `getSeqHandler()`, `setNotationProvider()`, `getMonomersList()`, `helmToSmiles()`, `helmToMolfile()` |
145
+ | `seq-helper.ts` | `ISeqHelper` interface + `getSeqHelper()` factory. `ISeqHelper` is the primary entry point for sequence operations: `helmToAtomicLevel()` / `helmToAtomicLevelSingle()` (column-wide and one-shot HELM → V3K molfile), `getSeqHandler()`, `getSeqMonomers()`, `setUnitsToFastaColumn()` / `setUnitsToSeparatorColumn()` / `setUnitsToHelmColumn()`, `getHelmToMolfileConverter()`. Also exports `ToAtomicLevelRes`, `IHelmToMolfileConverter` |
144
146
  | `const.ts` | HELM monomer library JSON schema field names (`HELM_REQUIRED_FIELD`, `HELM_OPTIONAL_FIELDS`, `HELM_RGROUP_FIELDS`), SDF-to-JSON mapping, dummy monomer template, encoding ranges |
145
- | `splitter.ts` | `joinDataFrames()` — splits aligned sequences into per-position columns |
147
+ | `splitter.ts` | `splitAlignedSequences()` — splits aligned sequences into per-position columns |
146
148
  | `composition-table.ts` | `getCompositionTable()` — builds HTML monomer composition bar chart |
147
149
  | `fasta-handler.ts` | `FastaFileHandler` — parses FASTA files into DataFrames |
148
150
  | `generator.ts` | Test data generators for synthetic macromolecule columns |
149
- | `sequence-position-scroller.ts` | `SequencePositionScroller` interactive MSA header with WebLogo tracks, conservation scoring, position slider, composition tooltips (~1600 lines) |
151
+ | `sequence-position-scroller.ts` | MSA header / scroll bar engine: `MSAScrollingHeader`, abstract `MSAHeaderTrack`, plus `WebLogoTrack` and `ConservationTrack` track implementations. Renders sequence-logo + conservation tracks above an MSA grid with a scrollable position slider and composition tooltips |
152
+ | `annotation-track.ts` | `AnnotationTrack` — `MSAHeaderTrack` subclass that overlays region/liability annotations on the MSA scroller |
153
+ | `cell-renderer-annotations.ts` | `AnnotationRenderer` — paints region rectangles and liability underlines on the macromolecule cell renderer |
154
+ | `macromolecule-highlight.ts` | Cross-package monomer highlight bus: `fireMacromoleculeHighlight()`, `setMacromoleculeMonomerHighlight()` / `setMacromoleculeMonomerHighlights()`, `clear*` siblings, `MACROMOLECULE_HIGHLIGHT_EVENT_ID` / `…_TEMP` / `…_ALPHA` constants, `MacromoleculeHighlightEntry` / `EventArgs` / `Colors` / `Target` / `RowSpec` types, `macromoleculeHighlightColorToCss()` |
155
+ | `monomer-selection-dialog.ts` | `MonomerSelectionWidget` + `showMonomerSelectionDialog()` — picker dialog for choosing monomer symbols. `parseMonomerSymbolList()` parses comma/space-separated symbol input |
156
+ | `sequence-column-input.ts` | `ISequenceColumnInput` / `SequenceColumnInputBase` + `createSequenceColumnInput()` — DG input that filters its choices to `Macromolecule` columns and exposes notation/alphabet metadata |
150
157
  | `data-provider.ts` | `getDataProviderFuncs()` — discovers registered data provider functions by semtype |
151
158
  | `docker.ts` | `awaitStatus()` — polls Docker container status until target state |
152
159
  | `syncer.ts` | `Syncer` — serializes concurrent async operations into sequential execution |
@@ -179,8 +186,8 @@ All viewer types follow `IXxxViewer` + property defaults pattern. Implementation
179
186
  | `types.ts` | `BiostructureData` type (binary/text with extension), `BiostructureDataJson` namespace for serialization |
180
187
  | `pdb-helper.ts` | `IPdbHelper` interface (parse, convert PDB/PDBQT/mol), `PdbAtomDataFrame` typed DataFrame |
181
188
  | `auto-dock-service.ts` | `IAutoDockService` interface (docking operations, Docker container management) |
182
- | `index.ts` | `PdbTag` constant export |
183
- | `format/` | PDB/PDBQT atom record parsing classes: `AtomRecordBase` `PdbAtomRecord` / `PdbqtAtomRecord`, with coordinate parsing, chain/residue sorting, TER records |
189
+ | `index.ts` | `TAGS` enum (currently just `TAGS.PDB` = `'.pdb'`) — column-tag identifier used for PDB-bearing data |
190
+ | `format/` | PDB/PDBQT atom record parsing classes. `types-base.ts` defines the abstract `LineBase` and `AtomBase` (with shared coord/residue/chain parsing); `types-pdb.ts` and `types-pdbqt.ts` carry the `Pdb*` / `Pdbqt*` line implementations including TER records and chain/residue sorting; `types.ts` re-exports the public surface |
184
191
 
185
192
  ### `trees/` — Phylogenetic Tree Handling
186
193
 
@@ -198,8 +205,8 @@ All viewer types follow `IXxxViewer` + property defaults pattern. Implementation
198
205
 
199
206
  | File | Purpose |
200
207
  |---|---|
201
- | `monomer-lib-tests.ts` | `testExpectedMonomerLib()` — validates IMonomerLib against expected polymer type counts |
202
- | `palettes-tests.ts` | Tests for nucleotide and amino acid palette instantiation |
208
+ | `monomer-lib-tests.ts` | `expectMonomerLib()` — validates `IMonomerLib` against expected polymer type counts |
209
+ | `palettes-tests.ts` | `_testPaletteN()` / `_testPaletteAA()` — palette instantiation tests for nucleotide and amino acid palettes |
203
210
 
204
211
  ### Other
205
212
 
@@ -228,13 +235,14 @@ Monomers follow the Pistoia HELM JSON schema. The library system has three layer
228
235
 
229
236
  ### Sequence Splitting
230
237
 
231
- Sequences are split into per-position monomers via `SplitterFunc` implementations:
232
- - `SplitterFasta` — character-level splitting for FASTA notation
233
- - `SplitterBase` — separator-based splitting
234
- - `SplitterHelm` — HELM parsing with graph/connection info
235
- - `SplitterBiln` — BILN notation with cyclization marks
238
+ Sequences are split into per-position monomers via `SplitterFunc` factories returning `ISeqSplitted`:
239
+ - `splitterAsFastaSimple` / `splitterAsFasta` → `FastaSimpleSeqSplitted` — character-level splitting for FASTA notation (the multichar variant handles `[multi]` brackets)
240
+ - `getSplitterWithSeparator` → `StringListSeqSplitted` — separator-based splitting
241
+ - `splitterAsHelm` → `HelmSplitted` — HELM parsing with graph/connection info (`ISeqGraphInfo` exposes per-monomer `polymerTypes`, `cycles`, etc.)
242
+ - `splitterAsBiln` → `BilnSeqSplitted` — BILN notation with cyclization marks
243
+ - `getSplitter(notation, sep)` is the dispatcher used everywhere else
236
244
 
237
- The split result implements `ISplitted` with `getOriginal(pos)`, `getCanonical(pos)`, `isGap(pos)`, `length`.
245
+ The split result implements `ISeqSplitted` with `getOriginal(pos)`, `getCanonical(pos)`, `isGap(pos)`, `length`, plus `graphInfo` on HELM. `SeqSplittedBase` is the abstract base for custom implementations.
238
246
 
239
247
  ### Cell Rendering Pipeline
240
248
 
@@ -256,7 +264,9 @@ Macromolecule grid cell rendering uses a layered async architecture:
256
264
  | Macromolecule handler interface (`ISeqHandler`) | `src/utils/macromolecule/seq-handler.ts` |
257
265
  | Notation/alphabet/tag constants | `src/utils/macromolecule/consts.ts` |
258
266
  | Sequence splitter implementations | `src/utils/macromolecule/utils.ts` |
259
- | Macromolecule type system (`ISplitted`, `SplitterFunc`) | `src/utils/macromolecule/types.ts` |
267
+ | Macromolecule type system (`ISeqSplitted`, `SplitterFunc`) | `src/utils/macromolecule/types.ts` |
268
+ | Antibody numbering scheme region maps | `src/utils/macromolecule/numbering-schemes.ts` |
269
+ | Sequence-annotation type system | `src/utils/macromolecule/annotations.ts` |
260
270
  | Amino acid palettes & names | `src/aminoacids.ts` |
261
271
  | Nucleotide palettes & names | `src/nucleotides.ts` |
262
272
  | Non-standard monomer palettes | `src/unknown.ts` |
@@ -284,6 +294,11 @@ Macromolecule grid cell rendering uses a layered async architecture:
284
294
  | Sequence scoring (identity/similarity) | `src/utils/macromolecule/scoring.ts` |
285
295
  | Natural monomer fingerprints | `src/utils/macromolecule/monomers.ts` |
286
296
  | MSA position scroller/header | `src/utils/sequence-position-scroller.ts` |
297
+ | MSA annotation track | `src/utils/annotation-track.ts` |
298
+ | Annotation cell-renderer overlay | `src/utils/cell-renderer-annotations.ts` |
299
+ | Cross-package monomer highlight bus | `src/utils/macromolecule-highlight.ts` |
300
+ | Monomer picker dialog | `src/utils/monomer-selection-dialog.ts` |
301
+ | Sequence column input (`Macromolecule`-only) | `src/utils/sequence-column-input.ts` |
287
302
  | Substructure filter framework | `src/substructure-filter/bio-substructure-filter-types.ts` |
288
303
  | Nucleotide sequence library (fast) | `src/ntseq/ntseq.js` |
289
304
  | RDKit module accessor | `src/chem/rdkit-module.ts` |
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "access": "public"
9
9
  },
10
10
  "friendlyName": "Datagrok bio library",
11
- "version": "5.65.1",
11
+ "version": "5.65.3",
12
12
  "description": "Bio utilities, types supporting Macromolecule, Molecule3D data",
13
13
  "dependencies": {
14
14
  "@datagrok-libraries/chem-meta": "^1.2.7",
@@ -1 +1 @@
1
- {"version":3,"file":"to-atomic-level-utils.d.ts","sourceRoot":"","sources":["to-atomic-level-utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAA4C,cAAc,EAAwB,kBAAkB,EACzG,cAAc,EAAC,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAC,QAAQ,EAAa,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAC,eAAe,EAAU,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AAIvD;;;;iHAIiH;AACjH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GACxE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAqBlB;AAED;;;;;;;+EAO+E;AAC/E,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,WAAW,EAAE,EAAE,YAAY,EAAE,kBAAkB,EAC3D,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAC5C,KAAK,CAAC,EAAE,cAAc,EAAE,GACvB,cAAc,CA6HhB;AAsZD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE/C"}
1
+ {"version":3,"file":"to-atomic-level-utils.d.ts","sourceRoot":"","sources":["to-atomic-level-utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAA4C,cAAc,EAAwB,kBAAkB,EACzG,cAAc,EAAC,MAAM,SAAS,CAAC;AAEjC,OAAO,EAAC,QAAQ,EAAa,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAC,eAAe,EAAU,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAC,WAAW,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AAIvD;;;;iHAIiH;AACjH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,GACxE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAqBlB;AAED;;;;;;;+EAO+E;AAC/E,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,WAAW,EAAE,EAAE,YAAY,EAAE,kBAAkB,EAC3D,QAAQ,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAC5C,KAAK,CAAC,EAAE,cAAc,EAAE,GACvB,cAAc,CA6HhB;AAyVD;;;GAGG;AACH,wBAAgB,aAAa,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAE/C"}
@@ -384,37 +384,45 @@ function getResultingAtomBondCounts(monomerSeq, monomersDict, alphabet, polymerT
384
384
  }
385
385
  return { atomCount, bondCount, needsCapping };
386
386
  }
387
- // Triples-mode RNA assembly. Iterates by NUCLEOTIDE over the row's "core"
388
- // positions (those tagged SUGAR/BASE/PHOSPHATE), and emits at most one
389
- // TERMINAL_5P at the head and one TERMINAL_3P at the tail.
387
+ // Role-driven RNA assembly. Walks the monomers in chain order and emits
388
+ // each one according to its NucleotideRole (assigned by `buildRolesForHelmRna`
389
+ // from the library, not from a fixed triple index):
390
+ // - BASE → branch monomer, attached to the
391
+ // branch point of the sugar most
392
+ // recently emitted.
393
+ // - SUGAR / PHOSPHATE / TERMINAL_5P / 3P → backbone monomer, chained to the
394
+ // previous backbone unit.
390
395
  //
391
- // Layout permutations the function handles:
392
- // roles = [SUGAR, BASE, PHOSPHATE, ...] // standard RNA
393
- // roles = [..., SUGAR, BASE] // no trailing P
394
- // roles = [TERMINAL_5P, SUGAR, BASE, PHOSPHATE, ...] // 5' modifier
395
- // roles = [..., SUGAR, BASE, TERMINAL_3P] // 3' modifier (replaces last P)
396
- // roles = [TERMINAL_5P, ..., TERMINAL_3P] // both
397
- //
398
- // When a TERMINAL_3P is present the OH cap MUST be skipped (the last
399
- // monomer is the chain end, period); the caller takes responsibility for
400
- // needsCapping=false in `getResultingAtomBondCounts`.
396
+ // Because the role comes from chemistry, this transparently handles every
397
+ // backbone layout — standard [sugar, base, phosphate] triples, a 5'-leading
398
+ // phosphate, several phosphates / linkers in a row, a linker dropped in the
399
+ // middle of the chain, missing trailing phosphate, and 5'/3' terminal
400
+ // modifiers without any index arithmetic. The first backbone monomer
401
+ // naturally has no incoming chain bond (v.backboneAttachNode starts at 0),
402
+ // and the trailing OH cap is added by the caller via needsCapping (skipped
403
+ // when a TERMINAL_3P ends the chain).
401
404
  function runTriplesAssembly(monomerSeq, roles, monomersDict, molfileAtomBlock, molfileBondBlock, v, LC, monomers, steabsCollection, addAtoms, getAtoms) {
402
- const has5pTerm = roles.length > 0 && roles[0] === NucleotideRole.TERMINAL_5P;
403
- const has3pTerm = roles.length > 0 && roles[roles.length - 1] === NucleotideRole.TERMINAL_3P;
404
- const coreStart = has5pTerm ? 1 : 0;
405
- const coreEnd = has3pTerm ? roles.length - 1 : roles.length;
406
- const coreLen = coreEnd - coreStart;
407
- const N = Math.ceil(coreLen / 3); // nucleotide count in the core
408
- // coreLen === 3N → trailing P present. coreLen === 3N - 1 → no trailing P.
409
- const hasTrailingP = coreLen === 3 * N;
410
- // Helper: emit one monomer as a backbone unit and record its atom/bond
411
- // ranges in the per-row monomer map.
412
- const emitBackbone = (sm, mapKey) => {
405
+ void LC; // assembly is driven by per-monomer roles, not by LC.seqLength
406
+ for (let i = 0; i < monomerSeq.length; ++i) {
407
+ const sm = monomerSeq[i];
408
+ if (sm.symbol === GAP_SYMBOL)
409
+ continue;
410
+ const role = roles[i];
413
411
  const mG = getMolGraph(monomersDict, { symbol: sm.symbol, polymerType: helmTypeToPolymerType(sm.biotype) });
414
412
  const aFirst = v.nodeShift;
415
413
  const bFirst = v.bondShift;
416
- addBackboneMonomerToMolblock(mG, molfileAtomBlock, molfileBondBlock, v);
417
- mG.stereoAtoms?.forEach((i) => steabsCollection.push(i + getAtoms()));
414
+ v.i = i; // keep loop counter monotone (unused by nucleotide geometry)
415
+ if (role === NucleotideRole.BASE)
416
+ // Branch: attaches to v.branchAttachNode, set when the preceding sugar
417
+ // was emitted. Does not advance the backbone, so the next backbone unit
418
+ // still chains from that sugar's 3' side.
419
+ addBranchMonomerToMolblock(mG, molfileAtomBlock, molfileBondBlock, v);
420
+ else
421
+ // Backbone: sugar / phosphate / linker / terminal modifier. Chains from
422
+ // the previous backbone unit (none for the very first one) and, for a
423
+ // sugar, sets up the branch attach point for the next base.
424
+ addBackboneMonomerToMolblock(mG, molfileAtomBlock, molfileBondBlock, v);
425
+ mG.stereoAtoms?.forEach((s) => steabsCollection.push(s + getAtoms()));
418
426
  addAtoms(mG.atoms.x.length);
419
427
  const aList = [];
420
428
  for (let a = aFirst; a < v.nodeShift; ++a)
@@ -422,70 +430,7 @@ function runTriplesAssembly(monomerSeq, roles, monomersDict, molfileAtomBlock, m
422
430
  const bList = [];
423
431
  for (let b = bFirst; b < v.bondShift; ++b)
424
432
  bList.push(b);
425
- monomers.set(mapKey, { biotype: sm.biotype, symbol: sm.symbol, atoms: aList, bonds: bList });
426
- };
427
- // 1. 5'-end terminal modifier (e.g. Chol).
428
- if (has5pTerm) {
429
- v.i = 0;
430
- emitBackbone(monomerSeq[0], 0);
431
- }
432
- // 2. Core triples loop: each iteration emits [prev-P (if n>=1)] + sugar + base.
433
- for (let n = 0; n < N; ++n) {
434
- v.i = n + (has5pTerm ? 1 : 0); // keep v.i monotone across emits
435
- const sugarSeqIdx = coreStart + 3 * n;
436
- const baseSeqIdx = sugarSeqIdx + 1;
437
- const sugarSm = monomerSeq[sugarSeqIdx];
438
- const baseSm = monomerSeq[baseSeqIdx];
439
- const sugarG = getMolGraph(monomersDict, { symbol: sugarSm.symbol, polymerType: helmTypeToPolymerType(sugarSm.biotype) });
440
- const baseG = getMolGraph(monomersDict, { symbol: baseSm.symbol, polymerType: helmTypeToPolymerType(baseSm.biotype) });
441
- // Inter-nucleotide phosphate sits at coreStart + 3*(n-1) + 2 for n >= 1.
442
- if (n >= 1) {
443
- const prevPhosKey = coreStart + 3 * (n - 1) + 2;
444
- emitBackbone(monomerSeq[prevPhosKey], prevPhosKey);
445
- }
446
- // Sugar (backbone)
447
- const sugarAtomFirst = v.nodeShift;
448
- const sugarBondFirst = v.bondShift;
449
- addBackboneMonomerToMolblock(sugarG, molfileAtomBlock, molfileBondBlock, v);
450
- sugarG.stereoAtoms?.forEach((i) => steabsCollection.push(i + getAtoms()));
451
- addAtoms(sugarG.atoms.x.length);
452
- const sAList = [];
453
- for (let a = sugarAtomFirst; a < v.nodeShift; ++a)
454
- sAList.push(a);
455
- const sBList = [];
456
- for (let b = sugarBondFirst; b < v.bondShift; ++b)
457
- sBList.push(b);
458
- monomers.set(sugarSeqIdx, {
459
- biotype: sugarSm.biotype, symbol: sugarSm.symbol,
460
- atoms: sAList, bonds: sBList,
461
- });
462
- // Base (branch)
463
- const baseAtomFirst = v.nodeShift;
464
- const baseBondFirst = v.bondShift;
465
- addBranchMonomerToMolblock(baseG, molfileAtomBlock, molfileBondBlock, v);
466
- baseG.stereoAtoms?.forEach((i) => steabsCollection.push(i + getAtoms()));
467
- addAtoms(baseG.atoms.x.length);
468
- const bAList = [];
469
- for (let a = baseAtomFirst; a < v.nodeShift; ++a)
470
- bAList.push(a);
471
- const bBList = [];
472
- for (let b = baseBondFirst; b < v.bondShift; ++b)
473
- bBList.push(b);
474
- monomers.set(baseSeqIdx, {
475
- biotype: baseSm.biotype, symbol: baseSm.symbol,
476
- atoms: bAList, bonds: bBList,
477
- });
478
- }
479
- // 3. Trailing phosphate (the LAST nucleotide's P) — only if HELM wrote
480
- // one AND there is no 3'-terminal modifier replacing it.
481
- if (hasTrailingP) {
482
- const lastPhosKey = coreStart + 3 * (N - 1) + 2;
483
- emitBackbone(monomerSeq[lastPhosKey], lastPhosKey);
484
- }
485
- // 4. 3'-end terminal modifier (e.g. GalNAc).
486
- if (has3pTerm) {
487
- v.i = N + (has5pTerm ? 1 : 0);
488
- emitBackbone(monomerSeq[roles.length - 1], roles.length - 1);
433
+ monomers.set(i, { biotype: sm.biotype, symbol: sm.symbol, atoms: aList, bonds: bList });
489
434
  }
490
435
  }
491
436
  /** Keep precision upon floating point operations over atom coordinates
@@ -1 +1 @@
1
- {"version":3,"file":"to-atomic-level-utils.js","sourceRoot":"","sources":["to-atomic-level-utils.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,OAAO,EAAC,kBAAkB,IAAI,CAAC,EAAC,MAAM,UAAU,CAAC;AACjD,OAAO,EAAC,WAAW,EAAgC,cAAc,EAAY,UAAU,EACrF,cAAc,EAAC,MAAM,SAAS,CAAC;AACjC,OAAO,EAAc,gBAAgB,GAAwC,MAAM,gBAAgB,CAAC;AACpG,OAAO,EAAC,QAAQ,EAAE,UAAU,EAAC,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAC,qBAAqB,EAAC,MAAM,iBAAiB,CAAC;AAGtD;;;;iHAIiH;AACjH,MAAM,UAAU,sBAAsB,CACpC,UAA2B,EAAE,WAAwB,EAAE,QAAkB;IAEzE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAe,CAAC;IACnC,KAAK,MAAM,aAAa,IAAI,UAAU,CAAC,uBAAuB,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5E,MAAM,EAAE,GAAY,UAAU,CAAC,UAAU,CAAC,WAAW,EAAE,aAAa,CAAE,CAAC;QACvE;QACE,uEAAuE;QACvE,uEAAuE;QACvE,yEAAyE;QACzE,WAAW,sCAA0B,IAAI,CACvC,WAAW,8CAA8B;YAC3C,EAAE,8CAA0B,4CAA6B,CACxD,EAAE,CAAC;YACJ,MAAM,aAAa,GAA2B,EAAE,CAAC;YACjD,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjC,YAAY;gBACZ,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;+EAO+E;AAC/E,MAAM,UAAU,mBAAmB,CACjC,UAAyB,EAAE,YAAgC,EAC3D,QAAkB,EAAE,WAAwB,EAC5C,KAAwB;IAExB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,0CAA0C;QAC1C,OAAO,cAAc,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAED,qEAAqE;IACrE,yEAAyE;IACzE,iEAAiE;IACjE,uEAAuE;IACvE,+BAA+B;IAC/B,MAAM,WAAW,GAAG,WAAW,sCAA0B,IAAI,CAAC,CAAC,KAAK;QAClE,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,CAAC;IAErC,iEAAiE;IACjE,MAAM,EAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAC,GACxC,0BAA0B,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;IAElG,wDAAwD;IACxD,MAAM,gBAAgB,GAAG,IAAI,KAAK,CAAS,SAAS,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,KAAK,CAAS,SAAS,CAAC,CAAC;IAEtD,IAAI,oBAA8I,CAAC;IAEnJ,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,IAAI,WAAW,8CAA8B;QAC3C,oBAAoB,GAAG,sBAAsB,CAAC;SAC3C,CAAC,CAAC,cAAc;QACnB,oBAAoB,GAAG,uBAAuB,CAAC;QAC/C,oEAAoE;QACpE,kDAAkD;QAClD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,KAAK,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;YACrH,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IACD,MAAM,CAAC,GAAkB;QACvB,CAAC,EAAE,CAAC;QACJ,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,CAAC;QACZ,qBAAqB,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,mBAAmB,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACjD,kBAAkB,EAAE,CAAC;QACrB,gBAAgB,EAAE,CAAC;QACnB,UAAU,EAAE,CAAC;KACd,CAAC;IAEF,MAAM,EAAE,GAAkB;QACxB,KAAK,EAAE,KAAM;QACb,SAAS,EAAE,SAAU;QACrB,0EAA0E;QAC1E,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM;QAC7E,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,SAAS;KACrB,CAAC;IAEF,MAAM,QAAQ,GAAe,IAAI,UAAU,EAAE,CAAC;IAC9C,MAAM,gBAAgB,GAAc,EAAE,CAAC;IACvC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,sBAAsB,GAAuB,SAAS,CAAC;IAE3D,IAAI,WAAW,EAAE,CAAC;QAChB,kBAAkB,CAChB,UAAU,EAAE,KAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EACpE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EACjC,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU;gBAAE,SAAS;YAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,EAAE,EAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,CAAC,UAAU,CAAC,OAAO,CAAC,EAAC,CAAE,CAAC;YAChI,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC;YAChD,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC;YAC/B,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC;YAC/B,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACzE,kEAAkE;YAClE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YACvE,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YAEjC,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,GAAG,UAAU,CAAC;YAC5C,MAAM,SAAS,GAAa,IAAI,KAAK,CAAS,UAAU,CAAC,CAAC;YAC1D,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,UAAU,EAAE,EAAE,GAAG;gBAAE,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,GAAG,CAAC;YAE7E,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,GAAG,UAAU,CAAC;YAC5C,MAAM,SAAS,GAAa,IAAI,KAAK,CAAS,UAAU,CAAC,CAAC;YAC1D,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,UAAU,EAAE,EAAE,GAAG;gBAAE,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,GAAG,CAAC;YAE7E,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gBAChB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS;aACnC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,uFAAuF;IACvF,IAAI,YAAY;QACd,oBAAoB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE,sBAAsB,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;IAEtG,MAAM,iBAAiB,GAAG,CAAC,CAAC,qBAAqB,GAAG,SAAS,GAAG,GAAG,GAAG,SAAS,GAAG,CAAC,CAAC,sBAAsB,CAAC;IAE3G,6EAA6E;IAC7E,4EAA4E;IAC5E,gCAAgC;IAEhC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,IAAI,CAAC,CAAC,qBAAqB,CAAC;IAClC,MAAM,IAAI,CAAC,CAAC,sBAAsB,CAAC;IACnC,MAAM,IAAI,CAAC,CAAC,oBAAoB,CAAC;IACjC,MAAM,IAAI,iBAAiB,CAAC;IAC5B,MAAM,IAAI,CAAC,CAAC,oBAAoB,CAAC;IACjC,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC;IAC/B,MAAM,IAAI,CAAC,CAAC,oBAAoB,CAAC;IACjC,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC;IAC/B,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;QAC7B,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACjD,MAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC;IAC/B,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC;IAEpB,gCAAgC;IAChC,OAAO,EAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC;AAC/C,CAAC;AAGD,SAAS,kBAAkB,CAAC,UAAoB;IAC9C,0DAA0D;IAC1D,kDAAkD;IAClD,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,SAAS,GAAG,EAAE,CAAC;IAErB,IAAI,gBAAgB,GAAG,+BAA+B,UAAU,CAAC,MAAM,EAAE,CAAC;IAC1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,UAAU,GAAG,GAAG,gBAAgB,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,UAAU,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YACnC,SAAS,CAAC,IAAI,CAAC,GAAG,gBAAgB,MAAM,CAAC,CAAC;YAC1C,gBAAgB,GAAG,UAAU,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,CAAC;;YACC,gBAAgB,GAAG,UAAU,CAAC;QAChC,+CAA+C;QAC/C,IAAI,CAAC,KAAK,UAAU,CAAC,MAAM,GAAG,CAAC;YAC7B,SAAS,CAAC,IAAI,CAAC,GAAG,gBAAgB,KAAK,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,4BAA4B,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC;AACjF,CAAC;AAED;;;;+CAI+C;AAC/C,SAAS,oBAAoB,CAC3B,gBAA0B,EAAE,gBAA0B,EACtD,CAAgB,EAAE,EAAiB,EAAE,kBAA0B,CAAC,CAAC,MAAM;IAEvE,sBAAsB;IACtB,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;IAChC,gBAAgB,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;QACpE,CAAC,eAAe,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;QACrF,CAAC,CAAC,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,YAAY,GAAG,IAAI,CAAC;IAEvF,oBAAoB;IACpB,MAAM,SAAS,GAAG,CAAC,CAAC,kBAAkB,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,SAAS,GAAG,GAAG;QACxE,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC;AAClD,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAiB,EAAE,gBAA0B,EAC3E,gBAA0B,EAAE,CAAgB;IAE5C,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,qCAAqC;IACvE,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,4BAA4B,CACnC,OAAiB,EAAE,gBAA0B,EAAE,gBAA0B,EAAE,CAAgB;IAE3F,uEAAuE;IACvE,iDAAiD;IACjD,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAE5C,gDAAgD;IAChD,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAE5C,eAAe;IACf,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAErD,uCAAuC;IACvC,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;QAC5E,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAEpC,wBAAwB;IACxB,6BAA6B,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,uBAAuB,CAC9B,UAAoB,EAAE,gBAA0B,EAAE,gBAA0B,EAAE,CAAgB,EAAE,EAAiB;IAEjH,4EAA4E;IAC5E,YAAY;IACZ,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACX,4BAA4B,CAAC,EAAE,CAAC,KAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;SAC5E,CAAC;QACJ,KAAK,MAAM,OAAO,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC;YAC5C,4BAA4B,CAAC,OAAQ,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,0BAA0B,CAAC,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,0BAA0B,CACjC,OAAiB,EAAE,gBAA0B,EAAE,gBAA0B,EAAE,CAAgB;IAE3F,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAClD,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC5C,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAEvD,WAAW;IACX,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC;IAC5B,MAAM,SAAS,GAAG,CAAC,CAAC,gBAAgB,CAAC;IACrC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;IAC/D,gBAAgB,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;QACnE,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC;IAEhD,wBAAwB;IACxB,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAClD,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;AAChD,CAAC;AAED,SAAS,6BAA6B,CAAC,OAAiB,EAAE,CAAgB;IACxE,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAElD,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;IAC9C,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,uBAAuB;IAC3F,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAiB,EAAE,CAAgB;IAChE,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACxB,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,aAAa,CAAC,OAAiB,EAAE,gBAA0B,EAAE,CAAgB;IACpF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;YACvE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG;YAChC,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YACpE,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7E,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,2BAA2B;AAC3B,SAAS,mBAAmB,CAAC,OAAiB,EAAE,gBAA0B,EAAE,CAAgB;IAC1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;YACvE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG;YAChC,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YAClE,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,OAAiB,EAAE,gBAA0B,EAAE,CAAgB;IACpF,gDAAgD;IAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;QAC9D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;QAC/D,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,kCAAkC;YAClC,IAAI,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC;gBAClB,WAAW,GAAG,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,OAAO,GAAG,OAAO,GAAG,WAAW,CAAC;QAClC,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;YACvE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG;YAChC,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAiB,EAAE,gBAA0B,EAAE,CAAgB;IAC7F,IAAI,CAAC,CAAC,kBAAkB,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC;QAC5B,MAAM,SAAS,GAAG,CAAC,CAAC,kBAAkB,CAAC;QACvC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;QAC/D,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;YACvE,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC;IAClD,CAAC;AACH,CAAC;AAED,eAAe;AACf,SAAS,wBAAwB,CAAC,aAAuB,EAAE,gBAA0B,EAAE,CAAgB;IACrG,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC;IAC5B,MAAM,SAAS,GAAG,CAAC,CAAC,gBAAgB,CAAC;IACrC,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;IACrE,gBAAgB,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;QACnE,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC;AAClD,CAAC;AAED;;;;;;;;kEAQkE;AAClE,SAAS,0BAA0B,CACjC,UAAyB,EAAE,YAAgC,EAC3D,QAAkB,EAAE,WAAwB,EAC5C,WAAoB,EAAE,KAAwB;IAE9C,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,IAAI,YAAY,GAAW,CAAC,CAAC;IAC7B,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,IAAI,gBAAgB,GAAoB,IAAI,CAAC;IAC7C,IAAI,kBAAkB,GAAoB,IAAI,CAAC;IAC/C,sDAAsD;IACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QAC3C,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU;YAAE,SAAS,CAAC,oCAAoC;QACpF,IAAI,UAAU,CAAC,MAAM,IAAI,GAAG;YAC1B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,gBAAgB,GAAG,WAAW,CAAC,YAAY,EAAE,EAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,CAAC,UAAU,CAAC,OAAO,CAAC,EAAC,CAAE,CAAC;QACnI,SAAS,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7C,SAAS,IAAI,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QACrD,YAAY,EAAE,CAAC;QACf,yEAAyE;QACzE,iEAAiE;QACjE,IAAI,WAAW,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,kBAAkB,GAAG,gBAAgB,CAAC;IACxE,CAAC;IAED,iDAAiD;IACjD,IAAI,WAAW,8CAA8B,EAAE,CAAC;QAC9C,0DAA0D;QAC1D,SAAS,IAAI,CAAC,CAAC;QACf,2EAA2E;QAC3E,SAAS,IAAI,YAAY,CAAC;QAC1B,2FAA2F;QAC3F,yHAAyH;QACzH,wGAAwG;QACxG,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;gBACtI,YAAY,GAAG,KAAK,CAAC;gBACrB,SAAS,IAAI,CAAC,CAAC,CAAC,0CAA0C;gBAC1D,SAAS,IAAI,CAAC,CAAC,CAAC,2CAA2C;YAC7D,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC,CAAC,iEAAiE;QACzF,KAAK,kBAAkB,CAAC,CAAC,mEAAmE;QAE5F,wEAAwE;QACxE,uEAAuE;QACvE,oEAAoE;QACpE,sEAAsE;QACtE,2CAA2C;QAC3C,SAAS,IAAI,YAAY,CAAC;QAE1B,iEAAiE;QACjE,4DAA4D;QAC5D,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAC3C,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,cAAc,CAAC,WAAW,CAAC;QACzD,IAAI,SAAS;YACX,YAAY,GAAG,KAAK,CAAC;;YAErB,SAAS,IAAI,CAAC,CAAC,CAAC,0DAA0D;IAC9E,CAAC;SAAM,CAAC,CAAC,oEAAoE;QAC3E,MAAM,KAAK,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACzC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,WAAW,CAAE,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAE,CAAC;QACnF,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,SAAS,CAAE,CAAC;QAE1D,oDAAoD;QACpD,SAAS,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAEhE,uCAAuC;QACvC,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAEtD,6CAA6C;QAC7C,SAAS,IAAI,CAAC,CAAC;QAEf,oCAAoC;QACpC,SAAS,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QAExE,gCAAgC;QAChC,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QAE9D,+EAA+E;QAC/E,SAAS,IAAI,CAAC,CAAC;QAEf,8EAA8E;QAC9E,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,EAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAC,CAAC;AAC9C,CAAC;AAED,0EAA0E;AAC1E,uEAAuE;AACvE,2DAA2D;AAC3D,EAAE;AACF,4CAA4C;AAC5C,8EAA8E;AAC9E,+EAA+E;AAC/E,6EAA6E;AAC7E,+FAA+F;AAC/F,sEAAsE;AACtE,EAAE;AACF,qEAAqE;AACrE,yEAAyE;AACzE,sDAAsD;AACtD,SAAS,kBAAkB,CACzB,UAAyB,EAAE,KAAuB,EAClD,YAAgC,EAChC,gBAA0B,EAAE,gBAA0B,EACtD,CAAgB,EAAE,EAAiB,EACnC,QAAoB,EAAE,gBAA0B,EAChD,QAA6B,EAAE,QAAsB;IAErD,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,cAAc,CAAC,WAAW,CAAC;IAC9E,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,cAAc,CAAC,WAAW,CAAC;IAC7F,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC;IAC5D,MAAM,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;IACpC,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,+BAA+B;IACjE,4EAA4E;IAC5E,MAAM,YAAY,GAAG,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;IAEvC,uEAAuE;IACvE,qCAAqC;IACrC,MAAM,YAAY,GAAG,CAAC,EAAe,EAAE,MAAc,EAAQ,EAAE;QAC7D,MAAM,EAAE,GAAG,WAAW,CAAC,YAAY,EACjC,EAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAC,CAAE,CAAC;QACxE,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC;QAC3B,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC;QAC3B,4BAA4B,CAAC,EAAE,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QACxE,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;QACtE,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC5B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzD,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,EAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IAC7F,CAAC,CAAC;IAEF,2CAA2C;IAC3C,IAAI,SAAS,EAAE,CAAC;QACd,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACR,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,gFAAgF;IAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC;QAC3B,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC;QAChE,MAAM,WAAW,GAAG,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,MAAM,UAAU,GAAG,WAAW,GAAG,CAAC,CAAC;QAEnC,MAAM,OAAO,GAAG,UAAU,CAAC,WAAW,CAAC,CAAC;QACxC,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;QAEtC,MAAM,MAAM,GAAG,WAAW,CAAC,YAAY,EACrC,EAAC,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAC,CAAE,CAAC;QAClF,MAAM,KAAK,GAAG,WAAW,CAAC,YAAY,EACpC,EAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAC,CAAE,CAAC;QAEhF,yEAAyE;QACzE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACX,MAAM,WAAW,GAAG,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAChD,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;QACrD,CAAC;QAED,mBAAmB;QACnB,MAAM,cAAc,GAAG,CAAC,CAAC,SAAS,CAAC;QACnC,MAAM,cAAc,GAAG,CAAC,CAAC,SAAS,CAAC;QACnC,4BAA4B,CAAC,MAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAC5E,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC1E,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAChC,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,cAAc,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClE,QAAQ,CAAC,GAAG,CAAC,WAAW,EAAE;YACxB,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM;YAChD,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;SAC7B,CAAC,CAAC;QAEH,gBAAgB;QAChB,MAAM,aAAa,GAAG,CAAC,CAAC,SAAS,CAAC;QAClC,MAAM,aAAa,GAAG,CAAC,CAAC,SAAS,CAAC;QAClC,0BAA0B,CAAC,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QACzE,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;QACzE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,KAAK,IAAI,CAAC,GAAG,aAAa,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;YAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACjE,QAAQ,CAAC,GAAG,CAAC,UAAU,EAAE;YACvB,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM;YAC9C,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,uEAAuE;IACvE,yDAAyD;IACzD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,WAAW,GAAG,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAChD,YAAY,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,6CAA6C;IAC7C,IAAI,SAAS,EAAE,CAAC;QACd,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9B,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAC/D,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC;AACjE,CAAC"}
1
+ {"version":3,"file":"to-atomic-level-utils.js","sourceRoot":"","sources":["to-atomic-level-utils.ts"],"names":[],"mappings":"AAAA,4BAA4B;AAC5B,OAAO,EAAC,kBAAkB,IAAI,CAAC,EAAC,MAAM,UAAU,CAAC;AACjD,OAAO,EAAC,WAAW,EAAgC,cAAc,EAAY,UAAU,EACrF,cAAc,EAAC,MAAM,SAAS,CAAC;AACjC,OAAO,EAAc,gBAAgB,GAAwC,MAAM,gBAAgB,CAAC;AACpG,OAAO,EAAC,QAAQ,EAAE,UAAU,EAAC,MAAM,+BAA+B,CAAC;AAGnE,OAAO,EAAC,qBAAqB,EAAC,MAAM,iBAAiB,CAAC;AAGtD;;;;iHAIiH;AACjH,MAAM,UAAU,sBAAsB,CACpC,UAA2B,EAAE,WAAwB,EAAE,QAAkB;IAEzE,MAAM,GAAG,GAAG,IAAI,GAAG,EAAe,CAAC;IACnC,KAAK,MAAM,aAAa,IAAI,UAAU,CAAC,uBAAuB,CAAC,WAAW,CAAC,EAAE,CAAC;QAC5E,MAAM,EAAE,GAAY,UAAU,CAAC,UAAU,CAAC,WAAW,EAAE,aAAa,CAAE,CAAC;QACvE;QACE,uEAAuE;QACvE,uEAAuE;QACvE,yEAAyE;QACzE,WAAW,sCAA0B,IAAI,CACvC,WAAW,8CAA8B;YAC3C,EAAE,8CAA0B,4CAA6B,CACxD,EAAE,CAAC;YACJ,MAAM,aAAa,GAA2B,EAAE,CAAC;YACjD,gBAAgB,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE;gBACjC,YAAY;gBACZ,aAAa,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YACnC,CAAC,CAAC,CAAC;YACH,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QACxC,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;+EAO+E;AAC/E,MAAM,UAAU,mBAAmB,CACjC,UAAyB,EAAE,YAAgC,EAC3D,QAAkB,EAAE,WAAwB,EAC5C,KAAwB;IAExB,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC5B,0CAA0C;QAC1C,OAAO,cAAc,CAAC,WAAW,EAAE,CAAC;IACtC,CAAC;IAED,qEAAqE;IACrE,yEAAyE;IACzE,iEAAiE;IACjE,uEAAuE;IACvE,+BAA+B;IAC/B,MAAM,WAAW,GAAG,WAAW,sCAA0B,IAAI,CAAC,CAAC,KAAK;QAClE,KAAK,CAAC,MAAM,KAAK,UAAU,CAAC,MAAM,CAAC;IAErC,iEAAiE;IACjE,MAAM,EAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAC,GACxC,0BAA0B,CAAC,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;IAElG,wDAAwD;IACxD,MAAM,gBAAgB,GAAG,IAAI,KAAK,CAAS,SAAS,CAAC,CAAC;IACtD,MAAM,gBAAgB,GAAG,IAAI,KAAK,CAAS,SAAS,CAAC,CAAC;IAEtD,IAAI,oBAA8I,CAAC;IAEnJ,IAAI,KAAK,GAAG,IAAI,CAAC;IACjB,IAAI,SAAS,GAAG,IAAI,CAAC;IAErB,IAAI,WAAW,8CAA8B;QAC3C,oBAAoB,GAAG,sBAAsB,CAAC;SAC3C,CAAC,CAAC,cAAc;QACnB,oBAAoB,GAAG,uBAAuB,CAAC;QAC/C,oEAAoE;QACpE,kDAAkD;QAClD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,KAAK,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC;YACrH,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IACD,MAAM,CAAC,GAAkB;QACvB,CAAC,EAAE,CAAC;QACJ,SAAS,EAAE,CAAC;QACZ,SAAS,EAAE,CAAC;QACZ,qBAAqB,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACnD,mBAAmB,EAAE,IAAI,KAAK,CAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QACjD,kBAAkB,EAAE,CAAC;QACrB,gBAAgB,EAAE,CAAC;QACnB,UAAU,EAAE,CAAC;KACd,CAAC;IAEF,MAAM,EAAE,GAAkB;QACxB,KAAK,EAAE,KAAM;QACb,SAAS,EAAE,SAAU;QACrB,0EAA0E;QAC1E,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM;QAC7E,SAAS,EAAE,SAAS;QACpB,SAAS,EAAE,SAAS;KACrB,CAAC;IAEF,MAAM,QAAQ,GAAe,IAAI,UAAU,EAAE,CAAC;IAC9C,MAAM,gBAAgB,GAAc,EAAE,CAAC;IACvC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,sBAAsB,GAAuB,SAAS,CAAC;IAE3D,IAAI,WAAW,EAAE,CAAC;QAChB,kBAAkB,CAChB,UAAU,EAAE,KAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EACpE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EACjC,CAAC,CAAC,EAAE,EAAE,GAAG,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxC,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnC,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU;gBAAE,SAAS;YAC/C,MAAM,OAAO,GAAG,WAAW,CAAC,YAAY,EAAE,EAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,CAAC,UAAU,CAAC,OAAO,CAAC,EAAC,CAAE,CAAC;YAChI,sBAAsB,GAAG,OAAO,CAAC,cAAc,CAAC;YAChD,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC;YAC/B,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,CAAC;YAC/B,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;YACzE,kEAAkE;YAClE,OAAO,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC;YACvE,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YAEjC,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,GAAG,UAAU,CAAC;YAC5C,MAAM,SAAS,GAAa,IAAI,KAAK,CAAS,UAAU,CAAC,CAAC;YAC1D,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,UAAU,EAAE,EAAE,GAAG;gBAAE,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,GAAG,CAAC;YAE7E,MAAM,UAAU,GAAG,CAAC,CAAC,SAAS,GAAG,UAAU,CAAC;YAC5C,MAAM,SAAS,GAAa,IAAI,KAAK,CAAS,UAAU,CAAC,CAAC;YAC1D,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,UAAU,EAAE,EAAE,GAAG;gBAAE,SAAS,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,GAAG,CAAC;YAE7E,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE;gBAChB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,MAAM,EAAE,UAAU,CAAC,MAAM;gBACzB,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS;aACnC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,uFAAuF;IACvF,IAAI,YAAY;QACd,oBAAoB,CAAC,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE,sBAAsB,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;IAEtG,MAAM,iBAAiB,GAAG,CAAC,CAAC,qBAAqB,GAAG,SAAS,GAAG,GAAG,GAAG,SAAS,GAAG,CAAC,CAAC,sBAAsB,CAAC;IAE3G,6EAA6E;IAC7E,4EAA4E;IAC5E,gCAAgC;IAEhC,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,MAAM,IAAI,CAAC,CAAC,qBAAqB,CAAC;IAClC,MAAM,IAAI,CAAC,CAAC,sBAAsB,CAAC;IACnC,MAAM,IAAI,CAAC,CAAC,oBAAoB,CAAC;IACjC,MAAM,IAAI,iBAAiB,CAAC;IAC5B,MAAM,IAAI,CAAC,CAAC,oBAAoB,CAAC;IACjC,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC;IAC/B,MAAM,IAAI,CAAC,CAAC,oBAAoB,CAAC;IACjC,MAAM,IAAI,gBAAgB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC;IAC/B,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;QAC7B,MAAM,IAAI,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IACjD,MAAM,IAAI,CAAC,CAAC,kBAAkB,CAAC;IAC/B,MAAM,IAAI,CAAC,CAAC,OAAO,CAAC;IAEpB,gCAAgC;IAChC,OAAO,EAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAC,CAAC;AAC/C,CAAC;AAGD,SAAS,kBAAkB,CAAC,UAAoB;IAC9C,0DAA0D;IAC1D,kDAAkD;IAClD,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,SAAS,GAAG,EAAE,CAAC;IAErB,IAAI,gBAAgB,GAAG,+BAA+B,UAAU,CAAC,MAAM,EAAE,CAAC;IAC1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,UAAU,GAAG,GAAG,gBAAgB,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,UAAU,CAAC,MAAM,GAAG,UAAU,EAAE,CAAC;YACnC,SAAS,CAAC,IAAI,CAAC,GAAG,gBAAgB,MAAM,CAAC,CAAC;YAC1C,gBAAgB,GAAG,UAAU,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,CAAC;;YACC,gBAAgB,GAAG,UAAU,CAAC;QAChC,+CAA+C;QAC/C,IAAI,CAAC,KAAK,UAAU,CAAC,MAAM,GAAG,CAAC;YAC7B,SAAS,CAAC,IAAI,CAAC,GAAG,gBAAgB,KAAK,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,4BAA4B,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,yBAAyB,CAAC;AACjF,CAAC;AAED;;;;+CAI+C;AAC/C,SAAS,oBAAoB,CAC3B,gBAA0B,EAAE,gBAA0B,EACtD,CAAgB,EAAE,EAAiB,EAAE,kBAA0B,CAAC,CAAC,MAAM;IAEvE,sBAAsB;IACtB,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;IAChC,gBAAgB,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;QACpE,CAAC,eAAe,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,GAAG,GAAG,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;QACrF,CAAC,CAAC,UAAU,GAAG,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,YAAY,GAAG,IAAI,CAAC;IAEvF,oBAAoB;IACpB,MAAM,SAAS,GAAG,CAAC,CAAC,kBAAkB,CAAC;IACvC,MAAM,UAAU,GAAG,OAAO,CAAC;IAC3B,gBAAgB,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,CAAC,CAAC,SAAS,GAAG,GAAG;QACxE,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC;AAClD,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAiB,EAAE,gBAA0B,EAC3E,gBAA0B,EAAE,CAAgB;IAE5C,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,qCAAqC;IACvE,4BAA4B,CAAC,OAAO,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;AAC/E,CAAC;AAED,SAAS,4BAA4B,CACnC,OAAiB,EAAE,gBAA0B,EAAE,gBAA0B,EAAE,CAAgB;IAE3F,uEAAuE;IACvE,iDAAiD;IACjD,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAE5C,gDAAgD;IAChD,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAE5C,eAAe;IACf,sBAAsB,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAErD,uCAAuC;IACvC,IAAI,OAAO,CAAC,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;QAC5E,qBAAqB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAEpC,wBAAwB;IACxB,6BAA6B,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,SAAS,uBAAuB,CAC9B,UAAoB,EAAE,gBAA0B,EAAE,gBAA0B,EAAE,CAAgB,EAAE,EAAiB;IAEjH,4EAA4E;IAC5E,YAAY;IACZ,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACX,4BAA4B,CAAC,EAAE,CAAC,KAAM,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;SAC5E,CAAC;QACJ,KAAK,MAAM,OAAO,IAAI,CAAC,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC;YAC5C,4BAA4B,CAAC,OAAQ,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,0BAA0B,CAAC,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;AAChF,CAAC;AAED,SAAS,0BAA0B,CACjC,OAAiB,EAAE,gBAA0B,EAAE,gBAA0B,EAAE,CAAgB;IAE3F,mBAAmB,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAClD,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAC5C,wBAAwB,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;IAEvD,WAAW;IACX,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC;IAC5B,MAAM,SAAS,GAAG,CAAC,CAAC,gBAAgB,CAAC;IACrC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;IAC/D,gBAAgB,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;QACnE,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC;IAEhD,wBAAwB;IACxB,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAClD,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;AAChD,CAAC;AAED,SAAS,6BAA6B,CAAC,OAAiB,EAAE,CAAgB;IACxE,CAAC,CAAC,kBAAkB,GAAG,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACnE,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;IAElD,CAAC,CAAC,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;IAC9C,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,uBAAuB;IAC3F,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAiB,EAAE,CAAgB;IAChE,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;IACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;QACxB,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,WAAY,CAAC,CAAC,CAAC,CAAC;AACzF,CAAC;AAED,SAAS,aAAa,CAAC,OAAiB,EAAE,gBAA0B,EAAE,CAAgB;IACpF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;YACvE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG;YAChC,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YACpE,aAAa,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7E,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,2BAA2B;AAC3B,SAAS,mBAAmB,CAAC,OAAiB,EAAE,gBAA0B,EAAE,CAAgB;IAC1F,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;YACvE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG;YAChC,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YAClE,aAAa,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3E,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,OAAiB,EAAE,gBAA0B,EAAE,CAAgB;IACpF,gDAAgD;IAChD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QACxD,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;QAC9D,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;QAC/D,IAAI,OAAO,GAAG,EAAE,CAAC;QACjB,IAAI,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3C,kCAAkC;YAClC,IAAI,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACzD,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC;gBAClB,WAAW,GAAG,CAAC,WAAW,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5C,OAAO,GAAG,OAAO,GAAG,WAAW,CAAC;QAClC,CAAC;QACD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACzC,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;YACvE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,GAAG;YAChC,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAiB,EAAE,gBAA0B,EAAE,CAAgB;IAC7F,IAAI,CAAC,CAAC,kBAAkB,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC;QAC5B,MAAM,SAAS,GAAG,CAAC,CAAC,kBAAkB,CAAC;QACvC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;QAC/D,gBAAgB,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;YACvE,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC;IAClD,CAAC;AACH,CAAC;AAED,eAAe;AACf,SAAS,wBAAwB,CAAC,aAAuB,EAAE,gBAA0B,EAAE,CAAgB;IACrG,MAAM,OAAO,GAAG,CAAC,CAAC,SAAS,CAAC;IAC5B,MAAM,SAAS,GAAG,CAAC,CAAC,gBAAgB,CAAC;IACrC,MAAM,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,SAAS,CAAC;IACrE,gBAAgB,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,mBAAmB,GAAG,OAAO,GAAG,GAAG;QACnE,CAAC,GAAG,GAAG,GAAG,SAAS,GAAG,GAAG,GAAG,UAAU,GAAG,IAAI,CAAC;AAClD,CAAC;AAED;;;;;;;;kEAQkE;AAClE,SAAS,0BAA0B,CACjC,UAAyB,EAAE,YAAgC,EAC3D,QAAkB,EAAE,WAAwB,EAC5C,WAAoB,EAAE,KAAwB;IAE9C,IAAI,SAAS,GAAG,CAAC,CAAC;IAClB,IAAI,SAAS,GAAG,CAAC,CAAC;IAElB,IAAI,YAAY,GAAW,CAAC,CAAC;IAC7B,IAAI,YAAY,GAAG,IAAI,CAAC;IACxB,IAAI,gBAAgB,GAAoB,IAAI,CAAC;IAC7C,IAAI,kBAAkB,GAAoB,IAAI,CAAC;IAC/C,sDAAsD;IACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QAC3C,MAAM,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,UAAU,CAAC,MAAM,KAAK,UAAU;YAAE,SAAS,CAAC,oCAAoC;QACpF,IAAI,UAAU,CAAC,MAAM,IAAI,GAAG;YAC1B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACxD,gBAAgB,GAAG,WAAW,CAAC,YAAY,EAAE,EAAC,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,CAAC,UAAU,CAAC,OAAO,CAAC,EAAC,CAAE,CAAC;QACnI,SAAS,IAAI,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC7C,SAAS,IAAI,gBAAgB,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QACrD,YAAY,EAAE,CAAC;QACf,yEAAyE;QACzE,iEAAiE;QACjE,IAAI,WAAW,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,kBAAkB,GAAG,gBAAgB,CAAC;IACxE,CAAC;IAED,iDAAiD;IACjD,IAAI,WAAW,8CAA8B,EAAE,CAAC;QAC9C,0DAA0D;QAC1D,SAAS,IAAI,CAAC,CAAC;QACf,2EAA2E;QAC3E,SAAS,IAAI,YAAY,CAAC;QAC1B,2FAA2F;QAC3F,yHAAyH;QACzH,wGAAwG;QACxG,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrB,IAAI,CAAC,gBAAgB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,gBAAgB,EAAE,cAAc,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,EAAE,CAAC;gBACtI,YAAY,GAAG,KAAK,CAAC;gBACrB,SAAS,IAAI,CAAC,CAAC,CAAC,0CAA0C;gBAC1D,SAAS,IAAI,CAAC,CAAC,CAAC,2CAA2C;YAC7D,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC,CAAC,iEAAiE;QACzF,KAAK,kBAAkB,CAAC,CAAC,mEAAmE;QAE5F,wEAAwE;QACxE,uEAAuE;QACvE,oEAAoE;QACpE,sEAAsE;QACtE,2CAA2C;QAC3C,SAAS,IAAI,YAAY,CAAC;QAE1B,iEAAiE;QACjE,4DAA4D;QAC5D,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAC3C,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,cAAc,CAAC,WAAW,CAAC;QACzD,IAAI,SAAS;YACX,YAAY,GAAG,KAAK,CAAC;;YAErB,SAAS,IAAI,CAAC,CAAC,CAAC,0DAA0D;IAC9E,CAAC;SAAM,CAAC,CAAC,oEAAoE;QAC3E,MAAM,KAAK,GAAG,CAAC,QAAQ,KAAK,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACzC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,WAAW,CAAE,CAAC,CAAC,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,MAAM,CAAE,CAAC;QACnF,MAAM,SAAS,GAAG,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,SAAS,CAAE,CAAC;QAE1D,oDAAoD;QACpD,SAAS,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAEhE,uCAAuC;QACvC,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAEtD,6CAA6C;QAC7C,SAAS,IAAI,CAAC,CAAC;QAEf,oCAAoC;QACpC,SAAS,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QAExE,gCAAgC;QAChC,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC;QAE9D,+EAA+E;QAC/E,SAAS,IAAI,CAAC,CAAC;QAEf,8EAA8E;QAC9E,SAAS,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,EAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAC,CAAC;AAC9C,CAAC;AAED,wEAAwE;AACxE,+EAA+E;AAC/E,oDAAoD;AACpD,8EAA8E;AAC9E,6EAA6E;AAC7E,gEAAgE;AAChE,+EAA+E;AAC/E,sEAAsE;AACtE,EAAE;AACF,0EAA0E;AAC1E,4EAA4E;AAC5E,4EAA4E;AAC5E,sEAAsE;AACtE,uEAAuE;AACvE,2EAA2E;AAC3E,2EAA2E;AAC3E,sCAAsC;AACtC,SAAS,kBAAkB,CACzB,UAAyB,EAAE,KAAuB,EAClD,YAAgC,EAChC,gBAA0B,EAAE,gBAA0B,EACtD,CAAgB,EAAE,EAAiB,EACnC,QAAoB,EAAE,gBAA0B,EAChD,QAA6B,EAAE,QAAsB;IAErD,KAAK,EAAE,CAAC,CAAC,+DAA+D;IACxE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC;QAC3C,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACzB,IAAI,EAAE,CAAC,MAAM,KAAK,UAAU;YAAE,SAAS;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,EAAE,GAAG,WAAW,CAAC,YAAY,EACjC,EAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,qBAAqB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAC,CAAE,CAAC;QAExE,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC;QAC3B,MAAM,MAAM,GAAG,CAAC,CAAC,SAAS,CAAC;QAC3B,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,6DAA6D;QACtE,IAAI,IAAI,KAAK,cAAc,CAAC,IAAI;YAC9B,uEAAuE;YACvE,wEAAwE;YACxE,0CAA0C;YAC1C,0BAA0B,CAAC,EAAE,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;;YAEtE,wEAAwE;YACxE,sEAAsE;YACtE,4DAA4D;YAC5D,4BAA4B,CAAC,EAAE,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC;QAE1E,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,EAAE,CAAC,CAAC,CAAC;QACtE,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAE5B,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzD,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAC,CAAC,CAAC;IACxF,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,CAAS;IACrC,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,gBAAgB,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,gBAAgB,CAAC;AACjE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"to-atomic-level.d.ts","sourceRoot":"","sources":["to-atomic-level.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAItC,OAAO,EAAC,QAAQ,EAAC,MAAM,6CAA6C,CAAC;AAGrE,OAAO,EAAC,QAAQ,EAAW,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAC,WAAW,EAAE,eAAe,EAAE,OAAO,EAAC,MAAM,0BAA0B,CAAC;AAG/E,OAAO,EAAQ,KAAK,EAA2C,QAAQ,EACpD,kBAAkB,EAAE,cAAc,EAAoC,MAAM,SAAS,CAAC;AACzG,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAGjE,OAAO,EAAW,WAAW,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AAMjE;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAC3C,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,GACpE,OAAO,CAAC,gBAAgB,CAAC,CA8E3B;AAoHD;;4EAE4E;AAC5E,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU,GAAG,WAAW,EAAE,EAAE,CAuB/G;AAGD;;;;;;;;;mFASmF;AACnF,wBAAgB,sBAAsB,CACpC,qBAAqB,EAAE,WAAW,EAAE,EAAE,EACtC,UAAU,EAAE,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC,EAAE,EAC5C,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAC5C,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,GACjD,kBAAkB,CAwDpB;AAyRD;;wDAEwD;AACxD,wBAAgB,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAgB7D;AAmGD;;;qCAGqC;AACrC,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,MAAM,CAMhF;AAED;;;sBAGsB;AACtB,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAkBpE;AAED;;;mCAGmC;AACnC,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CA8C3E;AAED;;;;8EAI8E;AAC9E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAGxE;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAyC9E;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAc9E;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAcnG;AA6nBD,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAmEtE;AAED,wBAAsB,2BAA2B,CAAC,eAAe,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CA8BlH;AAED;;iCAEiC;AACjC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAoB1D"}
1
+ {"version":3,"file":"to-atomic-level.d.ts","sourceRoot":"","sources":["to-atomic-level.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAItC,OAAO,EAAC,QAAQ,EAAC,MAAM,6CAA6C,CAAC;AAGrE,OAAO,EAAC,QAAQ,EAAW,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAC,WAAW,EAAE,eAAe,EAAE,OAAO,EAAC,MAAM,0BAA0B,CAAC;AAG/E,OAAO,EAAQ,KAAK,EAA2C,QAAQ,EACpD,kBAAkB,EAAE,cAAc,EAAoC,MAAM,SAAS,CAAC;AACzG,OAAO,EAAC,UAAU,EAAE,gBAAgB,EAAC,MAAM,qBAAqB,CAAC;AAGjE,OAAO,EAAW,WAAW,EAAE,WAAW,EAAC,MAAM,eAAe,CAAC;AAMjE;;;;GAIG;AACH,wBAAsB,cAAc,CAClC,EAAE,EAAE,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAC3C,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,GACpE,OAAO,CAAC,gBAAgB,CAAC,CA8E3B;AA0ID;;4EAE4E;AAC5E,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU,GAAG,WAAW,EAAE,EAAE,CAuB/G;AAGD;;;;;;;;;mFASmF;AACnF,wBAAgB,sBAAsB,CACpC,qBAAqB,EAAE,WAAW,EAAE,EAAE,EACtC,UAAU,EAAE,CAAC,cAAc,EAAE,GAAG,SAAS,CAAC,EAAE,EAC5C,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAC5C,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,QAAQ,GACjD,kBAAkB,CAwDpB;AAyRD;;wDAEwD;AACxD,wBAAgB,cAAc,CAAC,aAAa,EAAE,GAAG,EAAE,GAAG,MAAM,EAAE,CAgB7D;AAmGD;;;qCAGqC;AACrC,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,GAAG,MAAM,CAMhF;AAED;;;sBAGsB;AACtB,wBAAgB,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAkBpE;AAED;;;mCAGmC;AACnC,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,KAAK,CA8C3E;AAED;;;;8EAI8E;AAC9E,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAGxE;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAyC9E;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAc9E;AAED,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAcnG;AA6nBD,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CAmEtE;AAED,wBAAsB,2BAA2B,CAAC,eAAe,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC,CA8BlH;AAED;;iCAEiC;AACjC,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAoB1D"}
@@ -125,48 +125,65 @@ function pickRnaAlphabetFromHelm(seqCol, seqHelper) {
125
125
  for (let rowI = 0; rowI < seqCol.length; ++rowI) {
126
126
  const seqSS = sh.getSplitted(rowI);
127
127
  for (let i = 0; i < seqSS.length; ++i) {
128
- // Sugars sit at index i % 3 === 0 in the HELM RNA triples layout.
129
- if (i % 3 !== 0)
130
- continue;
131
- const sym = seqSS.getCanonical(i);
132
- if (sym === C.DEOXYRIBOSE.symbol)
128
+ // Any deoxyribose sugar anywhere in the column DNA. Don't rely on a
129
+ // fixed triple index (i % 3 === 0): a leading phosphate, repeated
130
+ // phosphates, or mid-chain linkers shift every monomer position, so the
131
+ // sugar is no longer guaranteed to sit at index 0 modulo 3.
132
+ if (seqSS.getCanonical(i) === C.DEOXYRIBOSE.symbol)
133
133
  return ALPHABET.DNA;
134
134
  }
135
135
  }
136
136
  return ALPHABET.RNA;
137
137
  }
138
- // Returns 'r1-only' if the lib monomer has a single R-group labeled R1
139
- // (i.e. a 3'-end terminal modifier like GalNAc), 'r2-only' if it has only
140
- // R2 (a 5'-end terminal modifier like Chol), and null otherwise.
138
+ // Classify a HELM RNA monomer by its library properties (monomer type +
139
+ // R-groups), NOT by its position in the sequence:
140
+ // - Branch monomers (A/C/G/U/T and modified bases) BASE. They carry a
141
+ // single R1 that attaches to the preceding sugar's R3 branch point.
142
+ // - Backbone monomers carrying a branch R-group (R3) → SUGAR (ribose,
143
+ // deoxyribose, and modified sugars such as fl2r / lna / m all expose
144
+ // R1/R2/R3).
145
+ // - Backbone monomers with two chain-extending R-groups and no branch →
146
+ // PHOSPHATE / linker (p, sp, Rsp, …). This is what makes a leading
147
+ // phosphate, several phosphates in a row, or a linker in the middle of
148
+ // the chain just work: each is recognised as a chain-extending unit,
149
+ // never mistaken for a sugar.
150
+ // - Single-R-group non-Branch monomers (Chol / GalNAc / Bio, which the
151
+ // library marks monomerType='Undefined') → 'terminal' chain-end
152
+ // modifiers. The caller decides 5' vs 3' from the boundary.
153
+ // - Unknown symbol (absent from lib) → null.
141
154
  //
142
- // IMPORTANT: nucleobases (A/C/G/U/T and their modified forms) are
143
- // monomerType='Branch' with a single R1, but they are NOT terminal
144
- // modifiers they're branch attachments to the sugar's R3. We exclude
145
- // Branch monomers explicitly so the splitter's i-th-base position keeps
146
- // its BASE role.
147
- function classifyTerminal(monomerLib, polymerType, symbol) {
155
+ // Returning roles from chemistry instead of index removes the rigid
156
+ // "[sugar, base, phosphate] repeated" assumption that produced NaN
157
+ // coordinates whenever a phosphate did not sit where the triple index
158
+ // expected it.
159
+ function classifyRnaRole(monomerLib, polymerType, symbol) {
148
160
  const m = monomerLib.getMonomer(polymerType, symbol);
149
- if (!m || !m.rgroups || m.rgroups.length !== 1)
161
+ if (!m)
150
162
  return null;
151
163
  if (m["monomerType" /* HELM_FIELDS.MONOMER_TYPE */] === "Branch" /* HELM_MONOMER_TYPE.BRANCH */)
152
- return null;
153
- const lbl = m.rgroups[0].label;
154
- if (lbl === 'R1')
155
- return 'r1-only';
156
- if (lbl === 'R2')
157
- return 'r2-only';
158
- return null;
164
+ return NucleotideRole.BASE;
165
+ const rgroups = m.rgroups ?? [];
166
+ // A chain-end modifier exposes exactly one attachment point.
167
+ if (rgroups.length <= 1)
168
+ return 'terminal';
169
+ // A sugar exposes a branch attachment (R3) for the nucleobase; a
170
+ // phosphate / linker only has chain-extending R-groups.
171
+ const hasBranchR = rgroups.some((rg) => rg.label === 'R3') || rgroups.length >= 3;
172
+ return hasBranchR ? NucleotideRole.SUGAR : NucleotideRole.PHOSPHATE;
159
173
  }
160
- // For HELM RNA rows, the splitter emits sugar/base/phosphate triples in
161
- // that fixed order (per `RNA_HELM_TRIPLET_MONOMER_REG`). Tag each entry
162
- // with its role from its index, then promote first / last entries to
163
- // TERMINAL_5P / TERMINAL_3P when the lib says they are single-R-group
164
- // terminal modifiers (Chol / GalNAc-style monomers).
174
+ // Assign a NucleotideRole to every monomer of every HELM RNA row by
175
+ // classifying each monomer from the library (see `classifyRnaRole`), then
176
+ // resolving single-R-group terminal modifiers to TERMINAL_5P / TERMINAL_3P
177
+ // based on the boundary they sit at.
178
+ //
179
+ // This is intentionally position-agnostic for the backbone: sugars, bases
180
+ // and phosphates are tagged by what they ARE, so an arbitrary number of
181
+ // phosphates / linkers may appear at the 5' end, between nucleotides, or
182
+ // anywhere else, and still be assembled as a connected chain.
165
183
  //
166
- // Validation: after stripping the terminal positions the remaining "core"
167
- // length must be 0, 3K, or 3K+2 (the no-trailing-P variant). Rows that
168
- // don't fit fall back to bases-only mode by returning undefined for that
169
- // row.
184
+ // A row falls back to bases-only mode (undefined) only when it cannot be
185
+ // laid out as a linear chain: an unknown monomer, or a single-R-group
186
+ // terminal modifier appearing mid-chain (it has nothing to extend to).
170
187
  function buildRolesForHelmRna(monomerSequencesArray, monomerLib, polymerType) {
171
188
  const out = new Array(monomerSequencesArray.length);
172
189
  for (let rowI = 0; rowI < monomerSequencesArray.length; ++rowI) {
@@ -175,38 +192,40 @@ function buildRolesForHelmRna(monomerSequencesArray, monomerLib, polymerType) {
175
192
  out[rowI] = undefined;
176
193
  continue;
177
194
  }
178
- // Detect terminals at row boundaries. Conventionally the start would
179
- // require r2-only (Chol-style) and the end would require r1-only
180
- // (GalNAc/Bio-style), but HELM authors sometimes put the "wrong" one
181
- // at either end. We accept ANY single-R-group non-Branch monomer at
182
- // each boundary; getMolGraph then swaps the rNodes so the real R
183
- // ends up where the role expects it.
184
- const startTerm = row.length >= 1 &&
185
- classifyTerminal(monomerLib, polymerType, row[0].symbol) !== null;
186
- // Don't double-count when row.length === 1 and the single monomer
187
- // already became a 5'-terminal: it doesn't ALSO get treated as a 3'.
188
- const endTerm = row.length >= 1 && !(startTerm && row.length === 1) &&
189
- classifyTerminal(monomerLib, polymerType, row[row.length - 1].symbol) !== null;
190
- const coreLen = row.length - (startTerm ? 1 : 0) - (endTerm ? 1 : 0);
191
- if (coreLen < 0 || !(coreLen % 3 === 0 || coreLen % 3 === 2)) {
195
+ const classes = new Array(row.length);
196
+ let classifiable = true;
197
+ for (let i = 0; i < row.length; ++i) {
198
+ classes[i] = classifyRnaRole(monomerLib, polymerType, row[i].symbol);
199
+ if (classes[i] === null) {
200
+ classifiable = false;
201
+ break;
202
+ }
203
+ }
204
+ if (!classifiable) {
192
205
  out[rowI] = undefined;
193
206
  continue;
194
207
  }
195
208
  const roles = new Array(row.length);
196
- let coreI = 0;
209
+ let fellBack = false;
197
210
  for (let i = 0; i < row.length; ++i) {
198
- if (i === 0 && startTerm) {
199
- roles[i] = NucleotideRole.TERMINAL_5P;
200
- continue;
201
- }
202
- if (i === row.length - 1 && endTerm) {
203
- roles[i] = NucleotideRole.TERMINAL_3P;
204
- continue;
211
+ if (classes[i] === 'terminal') {
212
+ // A single-R-group modifier can only cap a chain end. HELM authors
213
+ // sometimes put the "wrong" one at either boundary (e.g. GalNAc with
214
+ // only R1 at the 5' end); getMolGraph swaps the rNodes so the real
215
+ // R lands where the role expects it.
216
+ if (i === 0)
217
+ roles[i] = NucleotideRole.TERMINAL_5P;
218
+ else if (i === row.length - 1)
219
+ roles[i] = NucleotideRole.TERMINAL_3P;
220
+ else {
221
+ fellBack = true;
222
+ break;
223
+ }
205
224
  }
206
- roles[i] = (coreI % 3);
207
- coreI++;
225
+ else
226
+ roles[i] = classes[i];
208
227
  }
209
- out[rowI] = roles;
228
+ out[rowI] = fellBack ? undefined : roles;
210
229
  }
211
230
  return out;
212
231
  }
@@ -1 +1 @@
1
- {"version":3,"file":"to-atomic-level.js","sourceRoot":"","sources":["to-atomic-level.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"to-atomic-level.js","sourceRoot":"","sources":["to-atomic-level.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"cell-renderer-async-base.d.ts","sourceRoot":"","sources":["cell-renderer-async-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cell-renderer-async-base.d.ts","sourceRoot":"","sources":["cell-renderer-async-base.ts"],"names":[],"mappings":"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"}
@@ -256,6 +256,7 @@ export class CellRendererBackAsyncBase extends CellRendererBackBase {
256
256
  render(g, x, y, w, h, gridCell, cellStyle) {
257
257
  if (gridCell.tableRowIndex == null)
258
258
  return;
259
+ this.cleanColVersion = this.tableCol ? this.tableCol.version : -1;
259
260
  const service = this.getRenderService();
260
261
  if (!service)
261
262
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"cell-renderer-async-base.js","sourceRoot":"","sources":["cell-renderer-async-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cell-renderer-async-base.js","sourceRoot":"","sources":["cell-renderer-async-base.ts"],"names":[],"mappings":"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"}
@@ -26,6 +26,7 @@ export declare abstract class CellRendererBackBase<TValue> extends CellRendererB
26
26
  protected subs: Unsubscribable[];
27
27
  protected dirty: boolean;
28
28
  protected destroyed: boolean;
29
+ protected cleanColVersion: number;
29
30
  /** Overriding care to trigger {@link onRendered} event. */
30
31
  protected constructor(
31
32
  /** Not null if rendered on a grid */
@@ -1 +1 @@
1
- {"version":3,"file":"cell-renderer-back-base.d.ts","sourceRoot":"","sources":["cell-renderer-back-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cell-renderer-back-base.d.ts","sourceRoot":"","sources":["cell-renderer-back-base.ts"],"names":[],"mappings":"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"}
@@ -42,13 +42,18 @@ export class CellRendererBackBase extends CellRendererBackStub {
42
42
  this.subs = [];
43
43
  this.dirty = true;
44
44
  this.destroyed = false;
45
+ this.cleanColVersion = -1;
45
46
  this.viewerId = ++CellRendererBackBase.viewerCounter;
46
47
  // -- IRenderer --
47
48
  this.errors = [];
48
49
  this._onRendered = new Subject();
49
50
  if (this.tableCol && this.tableCol.dataFrame) {
51
+ this.cleanColVersion = this.tableCol.version;
50
52
  this.subs.push(this.tableCol.dataFrame.onDataChanged.subscribe(() => {
51
- this.dirty = true;
53
+ if (this.tableCol?.version !== this.cleanColVersion) {
54
+ this.cleanColVersion = this.tableCol?.version;
55
+ this.dirty = true;
56
+ }
52
57
  }));
53
58
  this.subs.push(this.tableCol.dataFrame.onColumnsRemoved.subscribe((_) => {
54
59
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"cell-renderer-back-base.js","sourceRoot":"","sources":["cell-renderer-back-base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cell-renderer-back-base.js","sourceRoot":"","sources":["cell-renderer-back-base.ts"],"names":[],"mappings":"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"}