only_ever_generator 4.0.3 → 4.0.5

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/src/index.ts CHANGED
@@ -12,1195 +12,1195 @@
12
12
  import { OnlyEverGenerator } from "./bootstrap/app";
13
13
  import { BaseParamType } from "./types/base_param_type";
14
14
 
15
- // export { OnlyEverGenerator };
15
+ export { OnlyEverGenerator };
16
16
 
17
- // // (async () => {
18
- // // const openAIKey =
19
- // // "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";
20
- // // const openAIHelper = new OpenAIHelper(
21
- // // openAIKey,
22
- // // "o4-mini",
23
- // // "pmpt_687a8872d1c8819088a9cdc97dcb688b0893663621695594",
24
- // // "13"
25
- // // );
26
- // // const content = `{
27
- // // "title":"C19orf47",
28
- // // "headings": [
29
- // // "Gene",
30
- // // "mRNA",
31
- // // "Protein",
32
- // // "Homology",
33
- // // "Clinical Significance",
34
- // // "References"
35
- // // ],
36
- // // "content": "content": [
37
- // // {
38
- // // "block_type": "paragraph",
39
- // // "content": "**[[Chromosome|Chromosome|0|wiki]] 19 open reading frame 47** is a [[Protein|protein|1|wiki]] that in humans is encoded by the C19orf47 [[Gene|gene|2|wiki]]. Aliases include Chromosome 19 Open Reading Frame 47, FLJ36888, DKZp686P05129, and LOCI26526."
40
- // // },
41
- // // {
42
- // // "block_type": "heading",
43
- // // "content": "Gene",
44
- // // "heading_level": 1,
45
- // // "children": [
46
- // // {
47
- // // "block_type": "paragraph",
48
- // // "content": "*Homo sapiens* C19orf47 is located in cytogenetic band 19q13.2. It covers 28.98 kilobases from 40,854,420 to 40,825,543 on the minus strand. The gene has 8 exons in the isoform 1 precursor, the last of which is the longest and comprises over half of the mRNA transcript."
49
- // // }
50
- // // ]
51
- // // },
52
- // // {
53
- // // "block_type": "heading",
54
- // // "content": "mRNA",
55
- // // "heading_level": 1,
56
- // // "children": [
57
- // // {
58
- // // "block_type": "image",
59
- // // "img_src": "https://wikipedia.org/wiki/Special:Redirect/file/Conceptual_translation_of_C19orf47.png",
60
- // // "img_caption": "Conceptual translation of C19orf47 using SIXFRAME. Exon-exon boundaries are in blue, start codon is in green, and stop codon is red. PolyA signal sequence is shown in dark orange, polyA sites are shown in orange. Base pair and amino acid numbering is shown. Conserved amino acids in close orthologs are shown bolded."
61
- // // },
62
- // // {
63
- // // "block_type": "paragraph",
64
- // // "content": "Transcription of *Homo sapiens* C19orf47 produces 13 different mRNAs, with 12 alternatively spliced variants and 1 unspliced form. Isoforms and the proteins encoded by them are shown in the table below. *Homo sapiens* C19orf47 has broad expression in heart, testes, and other tissues."
65
- // // },
66
- // // {
67
- // // "block_type": "paragraph",
68
- // // "content": "*Isoforms of C19orf47.*"
69
- // // },
70
- // // {
71
- // // "block_type": "table",
72
- // // "rows": [
73
- // // {
74
- // // "block_type": "row",
75
- // // "values": [
76
- // // "Isoform number",
77
- // // "Nucleotide Accession",
78
- // // "mRNA length (bp)",
79
- // // "Protein Accession",
80
- // // "Protein Length (aa)"
81
- // // ],
82
- // // "is_heading": true
83
- // // },
84
- // // {
85
- // // "block_type": "row",
86
- // // "values": [
87
- // // "NM1",
88
- // // "NM_001256440.1",
89
- // // "2104",
90
- // // "NP_001243369.1",
91
- // // "422"
92
- // // ],
93
- // // "is_heading": false
94
- // // },
95
- // // {
96
- // // "block_type": "row",
97
- // // "values": [
98
- // // "NM2",
99
- // // "NM_001256441.2",
100
- // // "3611",
101
- // // "NP_001243370.1",
102
- // // "385"
103
- // // ],
104
- // // "is_heading": false
105
- // // },
106
- // // {
107
- // // "block_type": "row",
108
- // // "values": [
109
- // // "X1",
110
- // // "XM_017026291.2",
111
- // // "3608",
112
- // // "XP_016881780.1",
113
- // // "384"
114
- // // ],
115
- // // "is_heading": false
116
- // // },
117
- // // {
118
- // // "block_type": "row",
119
- // // "values": [
120
- // // "X2",
121
- // // "XM_005258520.3",
122
- // // "3625",
123
- // // "XP_005258577.1",
124
- // // "421"
125
- // // ],
126
- // // "is_heading": false
127
- // // },
128
- // // {
129
- // // "block_type": "row",
130
- // // "values": [
131
- // // "X3",
132
- // // "XM_017026292.3",
133
- // // "1407",
134
- // // "XP_016881781.1",
135
- // // "366"
136
- // // ],
137
- // // "is_heading": false
138
- // // },
139
- // // {
140
- // // "block_type": "row",
141
- // // "values": [
142
- // // "X4",
143
- // // "XM_017026293.3",
144
- // // "1404",
145
- // // "XP_016881782.1",
146
- // // "365"
147
- // // ],
148
- // // "is_heading": false
149
- // // },
150
- // // {
151
- // // "block_type": "row",
152
- // // "values": [
153
- // // "X5",
154
- // // "XM_047438175.1",
155
- // // "1421",
156
- // // "XP_047294131.1",
157
- // // "402"
158
- // // ],
159
- // // "is_heading": false
160
- // // },
161
- // // {
162
- // // "block_type": "row",
163
- // // "values": [
164
- // // "X6",
165
- // // "XM_024451364.2",
166
- // // "3507",
167
- // // "XP_024307132.1",
168
- // // "344"
169
- // // ],
170
- // // "is_heading": false
171
- // // },
172
- // // {
173
- // // "block_type": "row",
174
- // // "values": [
175
- // // "X7",
176
- // // "XM_047438176.1",
177
- // // "3504",
178
- // // "XP_047294132.1",
179
- // // "343"
180
- // // ],
181
- // // "is_heading": false
182
- // // },
183
- // // {
184
- // // "block_type": "row",
185
- // // "values": [
186
- // // "X8",
187
- // // "XM_024451365.2",
188
- // // "4638",
189
- // // "XP_024307133.1",
190
- // // "385"
191
- // // ],
192
- // // "is_heading": false
193
- // // },
194
- // // {
195
- // // "block_type": "row",
196
- // // "values": [
197
- // // "X8",
198
- // // "XM_047438177.1",
199
- // // "4671",
200
- // // "XP_047294133.1",
201
- // // "385"
202
- // // ],
203
- // // "is_heading": false
204
- // // },
205
- // // {
206
- // // "block_type": "row",
207
- // // "values": [
208
- // // "X9",
209
- // // "XM_011526460.3",
210
- // // "3524",
211
- // // "XP_011524762.1",
212
- // // "381"
213
- // // ],
214
- // // "is_heading": false
215
- // // },
216
- // // {
217
- // // "block_type": "row",
218
- // // "values": [
219
- // // "X10",
220
- // // "XM_047438178.1",
221
- // // "3668",
222
- // // "XP_047294134.1",
223
- // // "355"
224
- // // ],
225
- // // "is_heading": false
226
- // // },
227
- // // {
228
- // // "block_type": "row",
229
- // // "values": [
230
- // // "X11",
231
- // // "XM_047438179.1",
232
- // // "3241",
233
- // // "XP_047294135.1",
234
- // // "281"
235
- // // ],
236
- // // "is_heading": false
237
- // // }
238
- // // ]
239
- // // }
240
- // // ]
241
- // // },
242
- // // {
243
- // // "block_type": "heading",
244
- // // "content": "Protein",
245
- // // "heading_level": 1,
246
- // // "children": [
247
- // // {
248
- // // "block_type": "image",
249
- // // "img_src": "https://wikipedia.org/wiki/Special:Redirect/file/Protein_cartoon_of_human_C19orf47.png",
250
- // // "img_caption": "SAM domain is shown in red and nuclear localization site shown in yellow. Amidation site shown with yellow circle, N-glycosylation site shown with blue circle, cAMP- and cGMP-dependent protein kinase phosphorylation sites shown with purple rhombus, Casein kinase II phosphorylation is shown with light blue triangles, N-myristoylation sites shown with green squares, and protein kinase C phosphorylation sites shown with light purple diamonds."
251
- // // },
252
- // // {
253
- // // "block_type": "image",
254
- // // "img_src": "https://wikipedia.org/wiki/Special:Redirect/file/C19orf47_tertiary_structure_from_iCn3D.png",
255
- // // "img_caption": "C19orf47 tertiary structure from iCn3D"
256
- // // },
257
- // // {
258
- // // "block_type": "paragraph",
259
- // // "content": "The C19orf47 gene isoform 1 precursor encodes for a 422 amino acid protein. The protein is located in the nucleoplasm and nucleus of the cell."
260
- // // },
261
- // // {
262
- // // "block_type": "heading",
263
- // // "content": "Interacting Proteins",
264
- // // "heading_level": 2,
265
- // // "children": [
266
- // // {
267
- // // "block_type": "paragraph",
268
- // // "content": "The following proteins have predicted interactions with C19orf47. ''Interacting proteins with C19orf47 in humans. Notes with important information are shown.''"
269
- // // },
270
- // // {
271
- // // "block_type": "table",
272
- // // "rows": [
273
- // // {
274
- // // "block_type": "row",
275
- // // "values": [
276
- // // "Abbreviated Name",
277
- // // "Full Name",
278
- // // "Additional Notes"
279
- // // ],
280
- // // "is_heading": true
281
- // // },
282
- // // {
283
- // // "block_type": "row",
284
- // // "values": [
285
- // // "PARK2",
286
- // // "Parkin RBR E3 Ubiquitin Protein Ligase",
287
- // // "Component of multiprotein E3 ubiquitin ligase complex. Mutations are known to cause Parkinson’s disease."
288
- // // ],
289
- // // "is_heading": false
290
- // // },
291
- // // {
292
- // // "block_type": "row",
293
- // // "values": [
294
- // // "NSP3",
295
- // // "Non-structural protein 3",
296
- // // "SARS-CoV-2 protein"
297
- // // ],
298
- // // "is_heading": false
299
- // // },
300
- // // {
301
- // // "block_type": "row",
302
- // // "values": [
303
- // // "ORF14",
304
- // // "Open reading frame 14",
305
- // // "SARS-CoV-2 protein"
306
- // // ],
307
- // // "is_heading": false
308
- // // },
309
- // // {
310
- // // "block_type": "row",
311
- // // "values": [
312
- // // "MYC",
313
- // // "V-Myc Avian Myelocytomatosis Viral Oncogene Homolog 2 3",
314
- // // "Proto-oncogene, forms a heterodimer with related transcription factor for MAX."
315
- // // ],
316
- // // "is_heading": false
317
- // // },
318
- // // {
319
- // // "block_type": "row",
320
- // // "values": [
321
- // // "DDX39B",
322
- // // "DExD-Box Helicase 39B",
323
- // // "RNA-dependent ATPase that mediates ATP hydrolysis during mRNA splicing."
324
- // // ],
325
- // // "is_heading": false
326
- // // },
327
- // // {
328
- // // "block_type": "row",
329
- // // "values": [
330
- // // "C17orf85",
331
- // // "Nuclear Cap-Binding Protein Subunit 3",
332
- // // "Associates with NCBP1/CBP80 to form an alternative cap-binding complex (CBC) which plays a key role in mRNA export."
333
- // // ],
334
- // // "is_heading": false
335
- // // },
336
- // // {
337
- // // "block_type": "row",
338
- // // "values": [
339
- // // "NXF1",
340
- // // "Nuclear RNA Export Factor 1",
341
- // // "Member of a family of nuclear RNA export factor genes."
342
- // // ],
343
- // // "is_heading": false
344
- // // },
345
- // // {
346
- // // "block_type": "row",
347
- // // "values": [
348
- // // "THOC2",
349
- // // "THO Complex 2",
350
- // // "Multiprotein complex binds specifically to spliced mRNAs to facilitate mRNA export."
351
- // // ],
352
- // // "is_heading": false
353
- // // },
354
- // // {
355
- // // "block_type": "row",
356
- // // "values": [
357
- // // "YWHAQ",
358
- // // "Tyrosine 3-Monooxygenase/Tryptophan 5-Monooxygenase Activation Protein, Theta Polypeptide",
359
- // // "Mediates signal transduction by binding to phosphoserine-containing proteins."
360
- // // ],
361
- // // "is_heading": false
362
- // // }
363
- // // ]
364
- // // }
365
- // // ]
366
- // // }
367
- // // ]
368
- // // },
369
- // // {
370
- // // "block_type": "heading",
371
- // // "content": "Homology",
372
- // // "heading_level": 1,
373
- // // "children": [
374
- // // {
375
- // // "block_type": "paragraph",
376
- // // "content": "C19orf47 is found in organisms including mammals, reptiles, amphibian, fish, insects, and plant."
377
- // // },
378
- // // {
379
- // // "block_type": "paragraph",
380
- // // "content": "''Current orthologs of human C19orf47. Sequence identity and similarity are shown.''"
381
- // // },
382
- // // {
383
- // // "block_type": "table",
384
- // // "rows": [
385
- // // {
386
- // // "block_type": "row",
387
- // // "values": [
388
- // // "col1",
389
- // // "col2",
390
- // // "col3",
391
- // // "col4",
392
- // // "col5",
393
- // // "col6",
394
- // // "col7",
395
- // // "col8",
396
- // // "col9"
397
- // // ],
398
- // // "is_heading": true
399
- // // },
400
- // // {
401
- // // "block_type": "row",
402
- // // "values": [
403
- // // "C19orf47",
404
- // // "Genus, Species",
405
- // // "Common Name",
406
- // // "Taxonomic Group",
407
- // // "Date of Divergence (MYA)",
408
- // // "Accession Number",
409
- // // "Sequence Length (aa)",
410
- // // "Identity",
411
- // // "Similarity"
412
- // // ],
413
- // // "is_heading": false
414
- // // },
415
- // // {
416
- // // "block_type": "row",
417
- // // "values": [
418
- // // "Mammalia",
419
- // // "Homo sapiens",
420
- // // "Human",
421
- // // "Primates",
422
- // // "0",
423
- // // "NP_001243369.1",
424
- // // "422",
425
- // // "100.0%",
426
- // // "100.0%"
427
- // // ],
428
- // // "is_heading": false
429
- // // },
430
- // // {
431
- // // "block_type": "row",
432
- // // "values": [
433
- // // "Mammalia",
434
- // // "Mus musculus",
435
- // // "Mouse",
436
- // // "Rodentia",
437
- // // "87",
438
- // // "XP_036009244.1",
439
- // // "397",
440
- // // "75.5%",
441
- // // "80.2%"
442
- // // ],
443
- // // "is_heading": false
444
- // // },
445
- // // {
446
- // // "block_type": "row",
447
- // // "values": [
448
- // // "Mammalia",
449
- // // "Castor canadensis",
450
- // // "American Beaver",
451
- // // "Rodentia",
452
- // // "87",
453
- // // "XP_020022531.1",
454
- // // "382",
455
- // // "71.3%",
456
- // // "74.7%"
457
- // // ],
458
- // // "is_heading": false
459
- // // },
460
- // // {
461
- // // "block_type": "row",
462
- // // "values": [
463
- // // "Reptilia",
464
- // // "Gopherus flavomarginatus",
465
- // // "Bolson Tortoise",
466
- // // "Testudines",
467
- // // "319",
468
- // // "XP_050784538.1",
469
- // // "386",
470
- // // "63.3%",
471
- // // "72.9%"
472
- // // ],
473
- // // "is_heading": false
474
- // // },
475
- // // {
476
- // // "block_type": "row",
477
- // // "values": [
478
- // // "Reptilia",
479
- // // "Dermochelys coriacea",
480
- // // "Leatherback Sea Turtle",
481
- // // "Testudines",
482
- // // "319",
483
- // // "XP_038238045.2",
484
- // // "449",
485
- // // "62.3%",
486
- // // "72.0%"
487
- // // ],
488
- // // "is_heading": false
489
- // // },
490
- // // {
491
- // // "block_type": "row",
492
- // // "values": [
493
- // // "Reptilia",
494
- // // "Varanus komodoensis",
495
- // // "Komodo Dragon",
496
- // // "Squamata",
497
- // // "319",
498
- // // "XP_044281356.1",
499
- // // "395",
500
- // // "60.2%",
501
- // // "69.2%"
502
- // // ],
503
- // // "is_heading": false
504
- // // },
505
- // // {
506
- // // "block_type": "row",
507
- // // "values": [
508
- // // "Reptilia",
509
- // // "Alligator sinensis",
510
- // // "Chinese Alligator",
511
- // // "Crocodylia",
512
- // // "319",
513
- // // "XP_025068843.1",
514
- // // "388",
515
- // // "54.7%",
516
- // // "63.3%"
517
- // // ],
518
- // // "is_heading": false
519
- // // },
520
- // // {
521
- // // "block_type": "row",
522
- // // "values": [
523
- // // "Aves",
524
- // // "Haliaeetus leucocephalus",
525
- // // "Bald Eagle",
526
- // // "Falconiformes",
527
- // // "319",
528
- // // "XP_010564700.1",
529
- // // "380",
530
- // // "60.2%",
531
- // // "69.1%"
532
- // // ],
533
- // // "is_heading": false
534
- // // },
535
- // // {
536
- // // "block_type": "row",
537
- // // "values": [
538
- // // "Aves",
539
- // // "Phalacrocorax carbo",
540
- // // "Great Cormorant",
541
- // // "Suliformes",
542
- // // "319",
543
- // // "XP_009501755.1",
544
- // // "381",
545
- // // "58.5%",
546
- // // "67.3%"
547
- // // ],
548
- // // "is_heading": false
549
- // // },
550
- // // {
551
- // // "block_type": "row",
552
- // // "values": [
553
- // // "Aves",
554
- // // "Gallus gallus",
555
- // // "Chicken",
556
- // // "Galliformes",
557
- // // "319",
558
- // // "XP_015129410.4",
559
- // // "374",
560
- // // "36.6%",
561
- // // "45.5%"
562
- // // ],
563
- // // "is_heading": false
564
- // // },
565
- // // {
566
- // // "block_type": "row",
567
- // // "values": [
568
- // // "Amphibia",
569
- // // "Xenopus tropicalis",
570
- // // "Frog",
571
- // // "Anura",
572
- // // "352",
573
- // // "NP_001005016.1",
574
- // // "398",
575
- // // "54.2%",
576
- // // "64.5%"
577
- // // ],
578
- // // "is_heading": false
579
- // // },
580
- // // {
581
- // // "block_type": "row",
582
- // // "values": [
583
- // // "Fish",
584
- // // "Protopterus annectens",
585
- // // "West African Lungfish",
586
- // // "Lepidosireniformes",
587
- // // "408",
588
- // // "XP_043937251.1",
589
- // // "393",
590
- // // "46.4%",
591
- // // "57.0%"
592
- // // ],
593
- // // "is_heading": false
594
- // // },
595
- // // {
596
- // // "block_type": "row",
597
- // // "values": [
598
- // // "Fish",
599
- // // "Latimeria chalumnae",
600
- // // "West Indian Ocean Coelacanth",
601
- // // "Coelacanthiformes",
602
- // // "415",
603
- // // "XP_014348608.1",
604
- // // "381",
605
- // // "58.2%",
606
- // // "69.7%"
607
- // // ],
608
- // // "is_heading": false
609
- // // },
610
- // // {
611
- // // "block_type": "row",
612
- // // "values": [
613
- // // "Fish",
614
- // // "Danio rerio",
615
- // // "Zebrafish",
616
- // // "Cypriniformes",
617
- // // "429",
618
- // // "NP_001038706.1",
619
- // // "392",
620
- // // "48.6%",
621
- // // "59.5%"
622
- // // ],
623
- // // "is_heading": false
624
- // // },
625
- // // {
626
- // // "block_type": "row",
627
- // // "values": [
628
- // // "Fish",
629
- // // "Leucoraja erinacea",
630
- // // "Little Skate",
631
- // // "Rajiformes",
632
- // // "462",
633
- // // "XP_055519598.1",
634
- // // "395",
635
- // // "53.0%",
636
- // // "64.2%"
637
- // // ],
638
- // // "is_heading": false
639
- // // },
640
- // // {
641
- // // "block_type": "row",
642
- // // "values": [
643
- // // "Fish",
644
- // // "Petromyzon marinus",
645
- // // "Sea Lamprey",
646
- // // "Petromyzontiformes",
647
- // // "563",
648
- // // "XP_032803651.1",
649
- // // "452",
650
- // // "41.6%",
651
- // // "52.4%"
652
- // // ],
653
- // // "is_heading": false
654
- // // },
655
- // // {
656
- // // "block_type": "row",
657
- // // "values": [
658
- // // "Arthropods",
659
- // // "Rhipicephalus sanguineus",
660
- // // "Brown Dog Tick",
661
- // // "Ixodida",
662
- // // "686",
663
- // // "XP_037499932.1",
664
- // // "428",
665
- // // "29.3%",
666
- // // "39.9%"
667
- // // ],
668
- // // "is_heading": false
669
- // // },
670
- // // {
671
- // // "block_type": "row",
672
- // // "values": [
673
- // // "Arthropods",
674
- // // "Biomphalaria glabrata",
675
- // // "Bloodfluke Planorb",
676
- // // "Planorbidae",
677
- // // "686",
678
- // // "XP_055879100.1",
679
- // // "370",
680
- // // "26.6%",
681
- // // "36.0%"
682
- // // ],
683
- // // "is_heading": false
684
- // // },
685
- // // {
686
- // // "block_type": "row",
687
- // // "values": [
688
- // // "Arthropods",
689
- // // "Polistes fuscatus",
690
- // // "Northern Paper Wasp",
691
- // // "Hymenoptera",
692
- // // "686",
693
- // // "XP_043494673.1",
694
- // // "409",
695
- // // "24.1%",
696
- // // "39.3%"
697
- // // ],
698
- // // "is_heading": false
699
- // // },
700
- // // {
701
- // // "block_type": "row",
702
- // // "values": [
703
- // // "Plants",
704
- // // "Gossypium anomalum",
705
- // // "Wild Cotton",
706
- // // "Malvales",
707
- // // "1530",
708
- // // "KAG8495680.1",
709
- // // "266",
710
- // // "11.5%",
711
- // // "20.6%"
712
- // // ],
713
- // // "is_heading": false
714
- // // }
715
- // // ]
716
- // // }
717
- // // ]
718
- // // },
719
- // // {
720
- // // "block_type": "heading",
721
- // // "content": "Clinical Significance",
722
- // // "heading_level": 1,
723
- // // "children": [
724
- // // {
725
- // // "block_type": "paragraph",
726
- // // "content": "One study discusses the identification of four novel mutations in the TUBB4A gene associated with [[Laryngeal_dystonia|laryngeal|3|wiki]] and [[Cervical_dystonia|cervical dystonia|4|wiki]], a rare neurological disorder. These mutations were found in several affected families, and the study highlights the complexity of this genetic condition, with evidence of [[Incomplete_penetrance|incomplete penetrance|5|wiki]] in some cases. [[Laryngeal_dystonia|Laryngeal dystonia|6|wiki]], often the initial symptom, is a prominent feature of the disease. Of note, there was presence of a variant in the C19orf47 gene in one family. It was shown that the variant in the gene TUBB4A was more likely to be the source of the phenotype, as C19orf47 has low expression in the brain."
727
- // // }
728
- // // ]
729
- // // },
730
- // // {
731
- // // "block_type": "heading",
732
- // // "content": "References",
733
- // // "heading_level": 1,
734
- // // "children": []
735
- // // }
736
- // // ],
17
+ // // // (async () => {
18
+ // // // const openAIKey =
19
+ // // // "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";
20
+ // // // const openAIHelper = new OpenAIHelper(
21
+ // // // openAIKey,
22
+ // // // "o4-mini",
23
+ // // // "pmpt_687a8872d1c8819088a9cdc97dcb688b0893663621695594",
24
+ // // // "13"
25
+ // // // );
26
+ // // // const content = `{
27
+ // // // "title":"C19orf47",
28
+ // // // "headings": [
29
+ // // // "Gene",
30
+ // // // "mRNA",
31
+ // // // "Protein",
32
+ // // // "Homology",
33
+ // // // "Clinical Significance",
34
+ // // // "References"
35
+ // // // ],
36
+ // // // "content": "content": [
37
+ // // // {
38
+ // // // "block_type": "paragraph",
39
+ // // // "content": "**[[Chromosome|Chromosome|0|wiki]] 19 open reading frame 47** is a [[Protein|protein|1|wiki]] that in humans is encoded by the C19orf47 [[Gene|gene|2|wiki]]. Aliases include Chromosome 19 Open Reading Frame 47, FLJ36888, DKZp686P05129, and LOCI26526."
40
+ // // // },
41
+ // // // {
42
+ // // // "block_type": "heading",
43
+ // // // "content": "Gene",
44
+ // // // "heading_level": 1,
45
+ // // // "children": [
46
+ // // // {
47
+ // // // "block_type": "paragraph",
48
+ // // // "content": "*Homo sapiens* C19orf47 is located in cytogenetic band 19q13.2. It covers 28.98 kilobases from 40,854,420 to 40,825,543 on the minus strand. The gene has 8 exons in the isoform 1 precursor, the last of which is the longest and comprises over half of the mRNA transcript."
49
+ // // // }
50
+ // // // ]
51
+ // // // },
52
+ // // // {
53
+ // // // "block_type": "heading",
54
+ // // // "content": "mRNA",
55
+ // // // "heading_level": 1,
56
+ // // // "children": [
57
+ // // // {
58
+ // // // "block_type": "image",
59
+ // // // "img_src": "https://wikipedia.org/wiki/Special:Redirect/file/Conceptual_translation_of_C19orf47.png",
60
+ // // // "img_caption": "Conceptual translation of C19orf47 using SIXFRAME. Exon-exon boundaries are in blue, start codon is in green, and stop codon is red. PolyA signal sequence is shown in dark orange, polyA sites are shown in orange. Base pair and amino acid numbering is shown. Conserved amino acids in close orthologs are shown bolded."
61
+ // // // },
62
+ // // // {
63
+ // // // "block_type": "paragraph",
64
+ // // // "content": "Transcription of *Homo sapiens* C19orf47 produces 13 different mRNAs, with 12 alternatively spliced variants and 1 unspliced form. Isoforms and the proteins encoded by them are shown in the table below. *Homo sapiens* C19orf47 has broad expression in heart, testes, and other tissues."
65
+ // // // },
66
+ // // // {
67
+ // // // "block_type": "paragraph",
68
+ // // // "content": "*Isoforms of C19orf47.*"
69
+ // // // },
70
+ // // // {
71
+ // // // "block_type": "table",
72
+ // // // "rows": [
73
+ // // // {
74
+ // // // "block_type": "row",
75
+ // // // "values": [
76
+ // // // "Isoform number",
77
+ // // // "Nucleotide Accession",
78
+ // // // "mRNA length (bp)",
79
+ // // // "Protein Accession",
80
+ // // // "Protein Length (aa)"
81
+ // // // ],
82
+ // // // "is_heading": true
83
+ // // // },
84
+ // // // {
85
+ // // // "block_type": "row",
86
+ // // // "values": [
87
+ // // // "NM1",
88
+ // // // "NM_001256440.1",
89
+ // // // "2104",
90
+ // // // "NP_001243369.1",
91
+ // // // "422"
92
+ // // // ],
93
+ // // // "is_heading": false
94
+ // // // },
95
+ // // // {
96
+ // // // "block_type": "row",
97
+ // // // "values": [
98
+ // // // "NM2",
99
+ // // // "NM_001256441.2",
100
+ // // // "3611",
101
+ // // // "NP_001243370.1",
102
+ // // // "385"
103
+ // // // ],
104
+ // // // "is_heading": false
105
+ // // // },
106
+ // // // {
107
+ // // // "block_type": "row",
108
+ // // // "values": [
109
+ // // // "X1",
110
+ // // // "XM_017026291.2",
111
+ // // // "3608",
112
+ // // // "XP_016881780.1",
113
+ // // // "384"
114
+ // // // ],
115
+ // // // "is_heading": false
116
+ // // // },
117
+ // // // {
118
+ // // // "block_type": "row",
119
+ // // // "values": [
120
+ // // // "X2",
121
+ // // // "XM_005258520.3",
122
+ // // // "3625",
123
+ // // // "XP_005258577.1",
124
+ // // // "421"
125
+ // // // ],
126
+ // // // "is_heading": false
127
+ // // // },
128
+ // // // {
129
+ // // // "block_type": "row",
130
+ // // // "values": [
131
+ // // // "X3",
132
+ // // // "XM_017026292.3",
133
+ // // // "1407",
134
+ // // // "XP_016881781.1",
135
+ // // // "366"
136
+ // // // ],
137
+ // // // "is_heading": false
138
+ // // // },
139
+ // // // {
140
+ // // // "block_type": "row",
141
+ // // // "values": [
142
+ // // // "X4",
143
+ // // // "XM_017026293.3",
144
+ // // // "1404",
145
+ // // // "XP_016881782.1",
146
+ // // // "365"
147
+ // // // ],
148
+ // // // "is_heading": false
149
+ // // // },
150
+ // // // {
151
+ // // // "block_type": "row",
152
+ // // // "values": [
153
+ // // // "X5",
154
+ // // // "XM_047438175.1",
155
+ // // // "1421",
156
+ // // // "XP_047294131.1",
157
+ // // // "402"
158
+ // // // ],
159
+ // // // "is_heading": false
160
+ // // // },
161
+ // // // {
162
+ // // // "block_type": "row",
163
+ // // // "values": [
164
+ // // // "X6",
165
+ // // // "XM_024451364.2",
166
+ // // // "3507",
167
+ // // // "XP_024307132.1",
168
+ // // // "344"
169
+ // // // ],
170
+ // // // "is_heading": false
171
+ // // // },
172
+ // // // {
173
+ // // // "block_type": "row",
174
+ // // // "values": [
175
+ // // // "X7",
176
+ // // // "XM_047438176.1",
177
+ // // // "3504",
178
+ // // // "XP_047294132.1",
179
+ // // // "343"
180
+ // // // ],
181
+ // // // "is_heading": false
182
+ // // // },
183
+ // // // {
184
+ // // // "block_type": "row",
185
+ // // // "values": [
186
+ // // // "X8",
187
+ // // // "XM_024451365.2",
188
+ // // // "4638",
189
+ // // // "XP_024307133.1",
190
+ // // // "385"
191
+ // // // ],
192
+ // // // "is_heading": false
193
+ // // // },
194
+ // // // {
195
+ // // // "block_type": "row",
196
+ // // // "values": [
197
+ // // // "X8",
198
+ // // // "XM_047438177.1",
199
+ // // // "4671",
200
+ // // // "XP_047294133.1",
201
+ // // // "385"
202
+ // // // ],
203
+ // // // "is_heading": false
204
+ // // // },
205
+ // // // {
206
+ // // // "block_type": "row",
207
+ // // // "values": [
208
+ // // // "X9",
209
+ // // // "XM_011526460.3",
210
+ // // // "3524",
211
+ // // // "XP_011524762.1",
212
+ // // // "381"
213
+ // // // ],
214
+ // // // "is_heading": false
215
+ // // // },
216
+ // // // {
217
+ // // // "block_type": "row",
218
+ // // // "values": [
219
+ // // // "X10",
220
+ // // // "XM_047438178.1",
221
+ // // // "3668",
222
+ // // // "XP_047294134.1",
223
+ // // // "355"
224
+ // // // ],
225
+ // // // "is_heading": false
226
+ // // // },
227
+ // // // {
228
+ // // // "block_type": "row",
229
+ // // // "values": [
230
+ // // // "X11",
231
+ // // // "XM_047438179.1",
232
+ // // // "3241",
233
+ // // // "XP_047294135.1",
234
+ // // // "281"
235
+ // // // ],
236
+ // // // "is_heading": false
237
+ // // // }
238
+ // // // ]
239
+ // // // }
240
+ // // // ]
241
+ // // // },
242
+ // // // {
243
+ // // // "block_type": "heading",
244
+ // // // "content": "Protein",
245
+ // // // "heading_level": 1,
246
+ // // // "children": [
247
+ // // // {
248
+ // // // "block_type": "image",
249
+ // // // "img_src": "https://wikipedia.org/wiki/Special:Redirect/file/Protein_cartoon_of_human_C19orf47.png",
250
+ // // // "img_caption": "SAM domain is shown in red and nuclear localization site shown in yellow. Amidation site shown with yellow circle, N-glycosylation site shown with blue circle, cAMP- and cGMP-dependent protein kinase phosphorylation sites shown with purple rhombus, Casein kinase II phosphorylation is shown with light blue triangles, N-myristoylation sites shown with green squares, and protein kinase C phosphorylation sites shown with light purple diamonds."
251
+ // // // },
252
+ // // // {
253
+ // // // "block_type": "image",
254
+ // // // "img_src": "https://wikipedia.org/wiki/Special:Redirect/file/C19orf47_tertiary_structure_from_iCn3D.png",
255
+ // // // "img_caption": "C19orf47 tertiary structure from iCn3D"
256
+ // // // },
257
+ // // // {
258
+ // // // "block_type": "paragraph",
259
+ // // // "content": "The C19orf47 gene isoform 1 precursor encodes for a 422 amino acid protein. The protein is located in the nucleoplasm and nucleus of the cell."
260
+ // // // },
261
+ // // // {
262
+ // // // "block_type": "heading",
263
+ // // // "content": "Interacting Proteins",
264
+ // // // "heading_level": 2,
265
+ // // // "children": [
266
+ // // // {
267
+ // // // "block_type": "paragraph",
268
+ // // // "content": "The following proteins have predicted interactions with C19orf47. ''Interacting proteins with C19orf47 in humans. Notes with important information are shown.''"
269
+ // // // },
270
+ // // // {
271
+ // // // "block_type": "table",
272
+ // // // "rows": [
273
+ // // // {
274
+ // // // "block_type": "row",
275
+ // // // "values": [
276
+ // // // "Abbreviated Name",
277
+ // // // "Full Name",
278
+ // // // "Additional Notes"
279
+ // // // ],
280
+ // // // "is_heading": true
281
+ // // // },
282
+ // // // {
283
+ // // // "block_type": "row",
284
+ // // // "values": [
285
+ // // // "PARK2",
286
+ // // // "Parkin RBR E3 Ubiquitin Protein Ligase",
287
+ // // // "Component of multiprotein E3 ubiquitin ligase complex. Mutations are known to cause Parkinson’s disease."
288
+ // // // ],
289
+ // // // "is_heading": false
290
+ // // // },
291
+ // // // {
292
+ // // // "block_type": "row",
293
+ // // // "values": [
294
+ // // // "NSP3",
295
+ // // // "Non-structural protein 3",
296
+ // // // "SARS-CoV-2 protein"
297
+ // // // ],
298
+ // // // "is_heading": false
299
+ // // // },
300
+ // // // {
301
+ // // // "block_type": "row",
302
+ // // // "values": [
303
+ // // // "ORF14",
304
+ // // // "Open reading frame 14",
305
+ // // // "SARS-CoV-2 protein"
306
+ // // // ],
307
+ // // // "is_heading": false
308
+ // // // },
309
+ // // // {
310
+ // // // "block_type": "row",
311
+ // // // "values": [
312
+ // // // "MYC",
313
+ // // // "V-Myc Avian Myelocytomatosis Viral Oncogene Homolog 2 3",
314
+ // // // "Proto-oncogene, forms a heterodimer with related transcription factor for MAX."
315
+ // // // ],
316
+ // // // "is_heading": false
317
+ // // // },
318
+ // // // {
319
+ // // // "block_type": "row",
320
+ // // // "values": [
321
+ // // // "DDX39B",
322
+ // // // "DExD-Box Helicase 39B",
323
+ // // // "RNA-dependent ATPase that mediates ATP hydrolysis during mRNA splicing."
324
+ // // // ],
325
+ // // // "is_heading": false
326
+ // // // },
327
+ // // // {
328
+ // // // "block_type": "row",
329
+ // // // "values": [
330
+ // // // "C17orf85",
331
+ // // // "Nuclear Cap-Binding Protein Subunit 3",
332
+ // // // "Associates with NCBP1/CBP80 to form an alternative cap-binding complex (CBC) which plays a key role in mRNA export."
333
+ // // // ],
334
+ // // // "is_heading": false
335
+ // // // },
336
+ // // // {
337
+ // // // "block_type": "row",
338
+ // // // "values": [
339
+ // // // "NXF1",
340
+ // // // "Nuclear RNA Export Factor 1",
341
+ // // // "Member of a family of nuclear RNA export factor genes."
342
+ // // // ],
343
+ // // // "is_heading": false
344
+ // // // },
345
+ // // // {
346
+ // // // "block_type": "row",
347
+ // // // "values": [
348
+ // // // "THOC2",
349
+ // // // "THO Complex 2",
350
+ // // // "Multiprotein complex binds specifically to spliced mRNAs to facilitate mRNA export."
351
+ // // // ],
352
+ // // // "is_heading": false
353
+ // // // },
354
+ // // // {
355
+ // // // "block_type": "row",
356
+ // // // "values": [
357
+ // // // "YWHAQ",
358
+ // // // "Tyrosine 3-Monooxygenase/Tryptophan 5-Monooxygenase Activation Protein, Theta Polypeptide",
359
+ // // // "Mediates signal transduction by binding to phosphoserine-containing proteins."
360
+ // // // ],
361
+ // // // "is_heading": false
362
+ // // // }
363
+ // // // ]
364
+ // // // }
365
+ // // // ]
366
+ // // // }
367
+ // // // ]
368
+ // // // },
369
+ // // // {
370
+ // // // "block_type": "heading",
371
+ // // // "content": "Homology",
372
+ // // // "heading_level": 1,
373
+ // // // "children": [
374
+ // // // {
375
+ // // // "block_type": "paragraph",
376
+ // // // "content": "C19orf47 is found in organisms including mammals, reptiles, amphibian, fish, insects, and plant."
377
+ // // // },
378
+ // // // {
379
+ // // // "block_type": "paragraph",
380
+ // // // "content": "''Current orthologs of human C19orf47. Sequence identity and similarity are shown.''"
381
+ // // // },
382
+ // // // {
383
+ // // // "block_type": "table",
384
+ // // // "rows": [
385
+ // // // {
386
+ // // // "block_type": "row",
387
+ // // // "values": [
388
+ // // // "col1",
389
+ // // // "col2",
390
+ // // // "col3",
391
+ // // // "col4",
392
+ // // // "col5",
393
+ // // // "col6",
394
+ // // // "col7",
395
+ // // // "col8",
396
+ // // // "col9"
397
+ // // // ],
398
+ // // // "is_heading": true
399
+ // // // },
400
+ // // // {
401
+ // // // "block_type": "row",
402
+ // // // "values": [
403
+ // // // "C19orf47",
404
+ // // // "Genus, Species",
405
+ // // // "Common Name",
406
+ // // // "Taxonomic Group",
407
+ // // // "Date of Divergence (MYA)",
408
+ // // // "Accession Number",
409
+ // // // "Sequence Length (aa)",
410
+ // // // "Identity",
411
+ // // // "Similarity"
412
+ // // // ],
413
+ // // // "is_heading": false
414
+ // // // },
415
+ // // // {
416
+ // // // "block_type": "row",
417
+ // // // "values": [
418
+ // // // "Mammalia",
419
+ // // // "Homo sapiens",
420
+ // // // "Human",
421
+ // // // "Primates",
422
+ // // // "0",
423
+ // // // "NP_001243369.1",
424
+ // // // "422",
425
+ // // // "100.0%",
426
+ // // // "100.0%"
427
+ // // // ],
428
+ // // // "is_heading": false
429
+ // // // },
430
+ // // // {
431
+ // // // "block_type": "row",
432
+ // // // "values": [
433
+ // // // "Mammalia",
434
+ // // // "Mus musculus",
435
+ // // // "Mouse",
436
+ // // // "Rodentia",
437
+ // // // "87",
438
+ // // // "XP_036009244.1",
439
+ // // // "397",
440
+ // // // "75.5%",
441
+ // // // "80.2%"
442
+ // // // ],
443
+ // // // "is_heading": false
444
+ // // // },
445
+ // // // {
446
+ // // // "block_type": "row",
447
+ // // // "values": [
448
+ // // // "Mammalia",
449
+ // // // "Castor canadensis",
450
+ // // // "American Beaver",
451
+ // // // "Rodentia",
452
+ // // // "87",
453
+ // // // "XP_020022531.1",
454
+ // // // "382",
455
+ // // // "71.3%",
456
+ // // // "74.7%"
457
+ // // // ],
458
+ // // // "is_heading": false
459
+ // // // },
460
+ // // // {
461
+ // // // "block_type": "row",
462
+ // // // "values": [
463
+ // // // "Reptilia",
464
+ // // // "Gopherus flavomarginatus",
465
+ // // // "Bolson Tortoise",
466
+ // // // "Testudines",
467
+ // // // "319",
468
+ // // // "XP_050784538.1",
469
+ // // // "386",
470
+ // // // "63.3%",
471
+ // // // "72.9%"
472
+ // // // ],
473
+ // // // "is_heading": false
474
+ // // // },
475
+ // // // {
476
+ // // // "block_type": "row",
477
+ // // // "values": [
478
+ // // // "Reptilia",
479
+ // // // "Dermochelys coriacea",
480
+ // // // "Leatherback Sea Turtle",
481
+ // // // "Testudines",
482
+ // // // "319",
483
+ // // // "XP_038238045.2",
484
+ // // // "449",
485
+ // // // "62.3%",
486
+ // // // "72.0%"
487
+ // // // ],
488
+ // // // "is_heading": false
489
+ // // // },
490
+ // // // {
491
+ // // // "block_type": "row",
492
+ // // // "values": [
493
+ // // // "Reptilia",
494
+ // // // "Varanus komodoensis",
495
+ // // // "Komodo Dragon",
496
+ // // // "Squamata",
497
+ // // // "319",
498
+ // // // "XP_044281356.1",
499
+ // // // "395",
500
+ // // // "60.2%",
501
+ // // // "69.2%"
502
+ // // // ],
503
+ // // // "is_heading": false
504
+ // // // },
505
+ // // // {
506
+ // // // "block_type": "row",
507
+ // // // "values": [
508
+ // // // "Reptilia",
509
+ // // // "Alligator sinensis",
510
+ // // // "Chinese Alligator",
511
+ // // // "Crocodylia",
512
+ // // // "319",
513
+ // // // "XP_025068843.1",
514
+ // // // "388",
515
+ // // // "54.7%",
516
+ // // // "63.3%"
517
+ // // // ],
518
+ // // // "is_heading": false
519
+ // // // },
520
+ // // // {
521
+ // // // "block_type": "row",
522
+ // // // "values": [
523
+ // // // "Aves",
524
+ // // // "Haliaeetus leucocephalus",
525
+ // // // "Bald Eagle",
526
+ // // // "Falconiformes",
527
+ // // // "319",
528
+ // // // "XP_010564700.1",
529
+ // // // "380",
530
+ // // // "60.2%",
531
+ // // // "69.1%"
532
+ // // // ],
533
+ // // // "is_heading": false
534
+ // // // },
535
+ // // // {
536
+ // // // "block_type": "row",
537
+ // // // "values": [
538
+ // // // "Aves",
539
+ // // // "Phalacrocorax carbo",
540
+ // // // "Great Cormorant",
541
+ // // // "Suliformes",
542
+ // // // "319",
543
+ // // // "XP_009501755.1",
544
+ // // // "381",
545
+ // // // "58.5%",
546
+ // // // "67.3%"
547
+ // // // ],
548
+ // // // "is_heading": false
549
+ // // // },
550
+ // // // {
551
+ // // // "block_type": "row",
552
+ // // // "values": [
553
+ // // // "Aves",
554
+ // // // "Gallus gallus",
555
+ // // // "Chicken",
556
+ // // // "Galliformes",
557
+ // // // "319",
558
+ // // // "XP_015129410.4",
559
+ // // // "374",
560
+ // // // "36.6%",
561
+ // // // "45.5%"
562
+ // // // ],
563
+ // // // "is_heading": false
564
+ // // // },
565
+ // // // {
566
+ // // // "block_type": "row",
567
+ // // // "values": [
568
+ // // // "Amphibia",
569
+ // // // "Xenopus tropicalis",
570
+ // // // "Frog",
571
+ // // // "Anura",
572
+ // // // "352",
573
+ // // // "NP_001005016.1",
574
+ // // // "398",
575
+ // // // "54.2%",
576
+ // // // "64.5%"
577
+ // // // ],
578
+ // // // "is_heading": false
579
+ // // // },
580
+ // // // {
581
+ // // // "block_type": "row",
582
+ // // // "values": [
583
+ // // // "Fish",
584
+ // // // "Protopterus annectens",
585
+ // // // "West African Lungfish",
586
+ // // // "Lepidosireniformes",
587
+ // // // "408",
588
+ // // // "XP_043937251.1",
589
+ // // // "393",
590
+ // // // "46.4%",
591
+ // // // "57.0%"
592
+ // // // ],
593
+ // // // "is_heading": false
594
+ // // // },
595
+ // // // {
596
+ // // // "block_type": "row",
597
+ // // // "values": [
598
+ // // // "Fish",
599
+ // // // "Latimeria chalumnae",
600
+ // // // "West Indian Ocean Coelacanth",
601
+ // // // "Coelacanthiformes",
602
+ // // // "415",
603
+ // // // "XP_014348608.1",
604
+ // // // "381",
605
+ // // // "58.2%",
606
+ // // // "69.7%"
607
+ // // // ],
608
+ // // // "is_heading": false
609
+ // // // },
610
+ // // // {
611
+ // // // "block_type": "row",
612
+ // // // "values": [
613
+ // // // "Fish",
614
+ // // // "Danio rerio",
615
+ // // // "Zebrafish",
616
+ // // // "Cypriniformes",
617
+ // // // "429",
618
+ // // // "NP_001038706.1",
619
+ // // // "392",
620
+ // // // "48.6%",
621
+ // // // "59.5%"
622
+ // // // ],
623
+ // // // "is_heading": false
624
+ // // // },
625
+ // // // {
626
+ // // // "block_type": "row",
627
+ // // // "values": [
628
+ // // // "Fish",
629
+ // // // "Leucoraja erinacea",
630
+ // // // "Little Skate",
631
+ // // // "Rajiformes",
632
+ // // // "462",
633
+ // // // "XP_055519598.1",
634
+ // // // "395",
635
+ // // // "53.0%",
636
+ // // // "64.2%"
637
+ // // // ],
638
+ // // // "is_heading": false
639
+ // // // },
640
+ // // // {
641
+ // // // "block_type": "row",
642
+ // // // "values": [
643
+ // // // "Fish",
644
+ // // // "Petromyzon marinus",
645
+ // // // "Sea Lamprey",
646
+ // // // "Petromyzontiformes",
647
+ // // // "563",
648
+ // // // "XP_032803651.1",
649
+ // // // "452",
650
+ // // // "41.6%",
651
+ // // // "52.4%"
652
+ // // // ],
653
+ // // // "is_heading": false
654
+ // // // },
655
+ // // // {
656
+ // // // "block_type": "row",
657
+ // // // "values": [
658
+ // // // "Arthropods",
659
+ // // // "Rhipicephalus sanguineus",
660
+ // // // "Brown Dog Tick",
661
+ // // // "Ixodida",
662
+ // // // "686",
663
+ // // // "XP_037499932.1",
664
+ // // // "428",
665
+ // // // "29.3%",
666
+ // // // "39.9%"
667
+ // // // ],
668
+ // // // "is_heading": false
669
+ // // // },
670
+ // // // {
671
+ // // // "block_type": "row",
672
+ // // // "values": [
673
+ // // // "Arthropods",
674
+ // // // "Biomphalaria glabrata",
675
+ // // // "Bloodfluke Planorb",
676
+ // // // "Planorbidae",
677
+ // // // "686",
678
+ // // // "XP_055879100.1",
679
+ // // // "370",
680
+ // // // "26.6%",
681
+ // // // "36.0%"
682
+ // // // ],
683
+ // // // "is_heading": false
684
+ // // // },
685
+ // // // {
686
+ // // // "block_type": "row",
687
+ // // // "values": [
688
+ // // // "Arthropods",
689
+ // // // "Polistes fuscatus",
690
+ // // // "Northern Paper Wasp",
691
+ // // // "Hymenoptera",
692
+ // // // "686",
693
+ // // // "XP_043494673.1",
694
+ // // // "409",
695
+ // // // "24.1%",
696
+ // // // "39.3%"
697
+ // // // ],
698
+ // // // "is_heading": false
699
+ // // // },
700
+ // // // {
701
+ // // // "block_type": "row",
702
+ // // // "values": [
703
+ // // // "Plants",
704
+ // // // "Gossypium anomalum",
705
+ // // // "Wild Cotton",
706
+ // // // "Malvales",
707
+ // // // "1530",
708
+ // // // "KAG8495680.1",
709
+ // // // "266",
710
+ // // // "11.5%",
711
+ // // // "20.6%"
712
+ // // // ],
713
+ // // // "is_heading": false
714
+ // // // }
715
+ // // // ]
716
+ // // // }
717
+ // // // ]
718
+ // // // },
719
+ // // // {
720
+ // // // "block_type": "heading",
721
+ // // // "content": "Clinical Significance",
722
+ // // // "heading_level": 1,
723
+ // // // "children": [
724
+ // // // {
725
+ // // // "block_type": "paragraph",
726
+ // // // "content": "One study discusses the identification of four novel mutations in the TUBB4A gene associated with [[Laryngeal_dystonia|laryngeal|3|wiki]] and [[Cervical_dystonia|cervical dystonia|4|wiki]], a rare neurological disorder. These mutations were found in several affected families, and the study highlights the complexity of this genetic condition, with evidence of [[Incomplete_penetrance|incomplete penetrance|5|wiki]] in some cases. [[Laryngeal_dystonia|Laryngeal dystonia|6|wiki]], often the initial symptom, is a prominent feature of the disease. Of note, there was presence of a variant in the C19orf47 gene in one family. It was shown that the variant in the gene TUBB4A was more likely to be the source of the phenotype, as C19orf47 has low expression in the brain."
727
+ // // // }
728
+ // // // ]
729
+ // // // },
730
+ // // // {
731
+ // // // "block_type": "heading",
732
+ // // // "content": "References",
733
+ // // // "heading_level": 1,
734
+ // // // "children": []
735
+ // // // }
736
+ // // // ],
737
737
 
738
- // // }`;
739
- // const fields = [
740
- // "Sciences",
741
- // "Technology & Engineering",
742
- // "Humanities & Cultural Studies",
743
- // "Social Sciences & Global Studies",
744
- // "Business & Management",
745
- // "Health & Medicine",
746
- // "Environmental Studies & Earth Sciences",
747
- // "Education, Learning & Personal Development",
748
- // "Creative & Performing Arts",
749
- // "Law, Governance & Ethics",
750
- // "Recreation, Lifestyle & Practical Skills",
751
- // "Technology & Media Literacy",
752
- // "Philosophy & Critical Thinking",
753
- // "Space & Astronomical Sciences",
754
- // "Agriculture & Food Sciences",
755
- // "Trades & Craftsmanship",
756
- // "Reference & Indexing",
757
- // "Other",
758
- // ];
759
- // const generateTypology = new GenerateConceptFacts(
760
- // new OpenAiService(openAIKey, "o4-mini"),
761
- // content
762
- // );
763
- // console.log(await generateTypology.generate());
764
- // })();
765
- (async () => {
766
- const content = {
767
- source_id: "123",
768
- title: "C19orf47",
769
- type: "wiki",
770
- headings: [
771
- "Gene",
772
- "mRNA",
773
- "Protein",
774
- "Homology",
775
- "Clinical Significance",
776
- "References",
777
- ],
778
- content: [
779
- {
780
- block_type: "paragraph",
781
- content:
782
- "**Siv Gun Elisabeth Andersson** (born 1959) is a Swedish [[Evolutionary_biologist|evolutionary biologist|0|wiki]], professor of [[Molecular_evolution|molecular evolution|1|wiki]] at [[Uppsala_University|Uppsala University|2|wiki]]. She is member of both the [[Royal_Swedish_Academy_of_Sciences|Royal Swedish Academy of Sciences|3|wiki]] and of [[Royal_Swedish_Academy_of_Engineering_Sciences|Engineering|4|wiki]]. She is also Head of basic research at the [[Knut_and_Alice_Wallenberg_Foundation|Knut and Alice Wallenberg Foundation|5|wiki]] and has been co-director of the Swedish national center for large-scale research [[Science_for_Life_Laboratory|Science for Life Laboratory|6|wiki]] between 2017 and 2021. Her research focuses on the evolution of [[Bacteria|bacteria|7|wiki]], mainly on intracellular parasites.",
783
- },
784
- {
785
- block_type: "heading",
786
- content: "Education and career",
787
- heading_level: 1,
788
- children: [
789
- {
790
- block_type: "paragraph",
791
- content:
792
- "Andersson grew up in [[Horndal|Horndal|8|wiki]], [[Dalarna|Dalarna|9|wiki]]. Her mother was home care assistant and her father was employed in the wood industry. She studied Biology at [[Uppsala_University|Uppsala University|10|wiki]], since the programme was the only one that had a course about [[DNA|DNA|11|wiki]]. She defended her PhD in molecular biology in 1990, under the supervision of [[Charles_Kurland|Charles Kurland|12|wiki]]. She applied for a postdoctoral stipend from [[European_Molecular_Biology_Organization|EMBO|13|wiki]] to continue her research in the United States, but ended up obtaining a research position at the MRC Laboratory of Molecular Biology in [[Cambridge|Cambridge|14|wiki]]. She became professor of molecular evolution in 2000, at the Uppsala University's Evolutionary Biology Center. She was elected at the [[Royal_Swedish_Academy_of_Sciences|Royal Swedish Academy of Sciences|15|wiki]] in 2005.",
793
- },
794
- {
795
- block_type: "paragraph",
796
- content:
797
- "Andersson has been very active in developing the Swedish national center for large-scale research [[Science_for_Life_Laboratory|Science for Life Laboratory|16|wiki]], especially its [[DNA_sequencing|DNA sequencing|17|wiki]] and [[Bioinformatics|bioinformatics|18|wiki]] platforms. She served as Co-director for the center between 2017 and 2021.",
798
- },
799
- {
800
- block_type: "paragraph",
801
- content:
802
- "During the 2020 [[COVID-19_pandemic|COVID-19 pandemic|19|wiki]], she contributed, together with Lars Engstrand and with the financial support of the [[Knut_and_Alice_Wallenberg_Foundation|Knut and Alice Wallenberg Foundation|20|wiki]], to establish the first large-scale testing facility in Sweden",
803
- },
804
- ],
805
- },
806
- {
807
- block_type: "heading",
808
- content: "Research",
809
- heading_level: 1,
810
- children: [
811
- {
812
- block_type: "paragraph",
813
- content:
814
- "Andersson's research first focused around the role of codon usage in shaping bacterial genomes. After her postdoctoral fellowship, she contributed to sequence one of the first genome of an obligate intracellular parasite, *[[Rickettsia_prowazekii|Rickettsia prowazekii|21|wiki]]*, the causative agent of epidemic typhus.",
815
- },
816
- {
817
- block_type: "paragraph",
818
- content:
819
- "In her later career, her research continued to explore bacteria and their relationships with their different hosts. In particular, she is interested in the genomic consequences of long-term associations of intracellular bacteria. She explored the evolution of *[[Bartonella|Bartonella|22|wiki]]*, *[[Wolbachia|Wolbachia|23|wiki]]*, and [[Planctomycetota|Planctomycetota|24|wiki]], among others.",
820
- },
821
- {
822
- block_type: "paragraph",
823
- content:
824
- "Andersson has published over 200 peer-reviewed articles, and has an [[H-index|h-index|25|wiki]] of 61, as of 2022.",
825
- },
826
- ],
827
- },
828
- {
829
- block_type: "heading",
830
- content: "Notable awards and honors",
831
- heading_level: 1,
832
- children: [
833
- {
834
- block_type: "paragraph",
835
- content: "",
836
- },
837
- {
838
- block_type: "list",
839
- content: [
840
- {
841
- block_type: "list_item",
842
- list_type: "ordered",
843
- marker: "1.",
844
- content:
845
- "2000 - Member of the [[Royal_Swedish_Academy_of_Engineering_Sciences|Royal Swedish Academy of Engineering Sciences|26|wiki]].",
846
- },
847
- {
848
- block_type: "list_item",
849
- list_type: "ordered",
850
- marker: "2.",
851
- content:
852
- '2002 - Letterstedtska prize for very significant investigation, among others for "an article in Nature (1998), which reports the whole genome sequence of the intracellular parasite Rickettsia prowazekii".',
853
- },
854
- {
855
- block_type: "list_item",
856
- list_type: "ordered",
857
- marker: "3.",
858
- content:
859
- "2004 - Member of [[European_Molecular_Biology_Organization|EMBO|27|wiki]].",
860
- },
861
- {
862
- block_type: "list_item",
863
- list_type: "ordered",
864
- marker: "4.",
865
- content:
866
- "2005 - Member of the [[Royal_Swedish_Academy_of_Sciences|Royal Swedish Academy of Sciences|28|wiki]], number 1514, in the class Biological Sciences.",
867
- },
868
- {
869
- block_type: "list_item",
870
- list_type: "ordered",
871
- marker: "5.",
872
- content:
873
- "2005 - [[Göran_Gustafsson_Prize|Göran Gustafsson Prize|29|wiki]] in molecular biology.",
874
- },
875
- {
876
- block_type: "list_item",
877
- list_type: "ordered",
878
- marker: "6.",
879
- content:
880
- '2005 - Grant for "excellent research" from the [[Swedish_Research_Council|Swedish Research Council|30|wiki]] of SEK 44 millions (together with Hans Ellegren).',
881
- },
882
- {
883
- block_type: "list_item",
884
- list_type: "ordered",
885
- marker: "7.",
886
- content:
887
- "2009 - President of the [[European_Society_for_Evolutionary_Biology|European Society for Evolutionary Biology|31|wiki]] (2009-2011).",
888
- },
889
- {
890
- block_type: "list_item",
891
- list_type: "ordered",
892
- marker: "8.",
893
- content:
894
- "2011 - [[Knut_and_Alice_Wallenberg_Foundation|Wallenberg Scholar|32|wiki]].",
895
- },
896
- {
897
- block_type: "list_item",
898
- list_type: "ordered",
899
- marker: "9.",
900
- content:
901
- "2017 - Extension of [[Knut_and_Alice_Wallenberg_Foundation|Knut and Alice Wallenberg Foundation|33|wiki]] of SEK 75 millions (together with [[Gunnar_von_Heijne|Gunnar von Heijne|34|wiki]]).",
902
- },
903
- ],
904
- },
905
- ],
906
- },
907
- {
908
- block_type: "heading",
909
- content: "References",
910
- heading_level: 1,
911
- children: [],
912
- },
913
- ],
914
- };
738
+ // // // }`;
739
+ // // const fields = [
740
+ // // "Sciences",
741
+ // // "Technology & Engineering",
742
+ // // "Humanities & Cultural Studies",
743
+ // // "Social Sciences & Global Studies",
744
+ // // "Business & Management",
745
+ // // "Health & Medicine",
746
+ // // "Environmental Studies & Earth Sciences",
747
+ // // "Education, Learning & Personal Development",
748
+ // // "Creative & Performing Arts",
749
+ // // "Law, Governance & Ethics",
750
+ // // "Recreation, Lifestyle & Practical Skills",
751
+ // // "Technology & Media Literacy",
752
+ // // "Philosophy & Critical Thinking",
753
+ // // "Space & Astronomical Sciences",
754
+ // // "Agriculture & Food Sciences",
755
+ // // "Trades & Craftsmanship",
756
+ // // "Reference & Indexing",
757
+ // // "Other",
758
+ // // ];
759
+ // // const generateTypology = new GenerateConceptFacts(
760
+ // // new OpenAiService(openAIKey, "o4-mini"),
761
+ // // content
762
+ // // );
763
+ // // console.log(await generateTypology.generate());
764
+ // // })();
765
+ // (async () => {
766
+ // const content = {
767
+ // source_id: "123",
768
+ // title: "C19orf47",
769
+ // type: "wiki",
770
+ // headings: [
771
+ // "Gene",
772
+ // "mRNA",
773
+ // "Protein",
774
+ // "Homology",
775
+ // "Clinical Significance",
776
+ // "References",
777
+ // ],
778
+ // content: [
779
+ // {
780
+ // block_type: "paragraph",
781
+ // content:
782
+ // "**Siv Gun Elisabeth Andersson** (born 1959) is a Swedish [[Evolutionary_biologist|evolutionary biologist|0|wiki]], professor of [[Molecular_evolution|molecular evolution|1|wiki]] at [[Uppsala_University|Uppsala University|2|wiki]]. She is member of both the [[Royal_Swedish_Academy_of_Sciences|Royal Swedish Academy of Sciences|3|wiki]] and of [[Royal_Swedish_Academy_of_Engineering_Sciences|Engineering|4|wiki]]. She is also Head of basic research at the [[Knut_and_Alice_Wallenberg_Foundation|Knut and Alice Wallenberg Foundation|5|wiki]] and has been co-director of the Swedish national center for large-scale research [[Science_for_Life_Laboratory|Science for Life Laboratory|6|wiki]] between 2017 and 2021. Her research focuses on the evolution of [[Bacteria|bacteria|7|wiki]], mainly on intracellular parasites.",
783
+ // },
784
+ // {
785
+ // block_type: "heading",
786
+ // content: "Education and career",
787
+ // heading_level: 1,
788
+ // children: [
789
+ // {
790
+ // block_type: "paragraph",
791
+ // content:
792
+ // "Andersson grew up in [[Horndal|Horndal|8|wiki]], [[Dalarna|Dalarna|9|wiki]]. Her mother was home care assistant and her father was employed in the wood industry. She studied Biology at [[Uppsala_University|Uppsala University|10|wiki]], since the programme was the only one that had a course about [[DNA|DNA|11|wiki]]. She defended her PhD in molecular biology in 1990, under the supervision of [[Charles_Kurland|Charles Kurland|12|wiki]]. She applied for a postdoctoral stipend from [[European_Molecular_Biology_Organization|EMBO|13|wiki]] to continue her research in the United States, but ended up obtaining a research position at the MRC Laboratory of Molecular Biology in [[Cambridge|Cambridge|14|wiki]]. She became professor of molecular evolution in 2000, at the Uppsala University's Evolutionary Biology Center. She was elected at the [[Royal_Swedish_Academy_of_Sciences|Royal Swedish Academy of Sciences|15|wiki]] in 2005.",
793
+ // },
794
+ // {
795
+ // block_type: "paragraph",
796
+ // content:
797
+ // "Andersson has been very active in developing the Swedish national center for large-scale research [[Science_for_Life_Laboratory|Science for Life Laboratory|16|wiki]], especially its [[DNA_sequencing|DNA sequencing|17|wiki]] and [[Bioinformatics|bioinformatics|18|wiki]] platforms. She served as Co-director for the center between 2017 and 2021.",
798
+ // },
799
+ // {
800
+ // block_type: "paragraph",
801
+ // content:
802
+ // "During the 2020 [[COVID-19_pandemic|COVID-19 pandemic|19|wiki]], she contributed, together with Lars Engstrand and with the financial support of the [[Knut_and_Alice_Wallenberg_Foundation|Knut and Alice Wallenberg Foundation|20|wiki]], to establish the first large-scale testing facility in Sweden",
803
+ // },
804
+ // ],
805
+ // },
806
+ // {
807
+ // block_type: "heading",
808
+ // content: "Research",
809
+ // heading_level: 1,
810
+ // children: [
811
+ // {
812
+ // block_type: "paragraph",
813
+ // content:
814
+ // "Andersson's research first focused around the role of codon usage in shaping bacterial genomes. After her postdoctoral fellowship, she contributed to sequence one of the first genome of an obligate intracellular parasite, *[[Rickettsia_prowazekii|Rickettsia prowazekii|21|wiki]]*, the causative agent of epidemic typhus.",
815
+ // },
816
+ // {
817
+ // block_type: "paragraph",
818
+ // content:
819
+ // "In her later career, her research continued to explore bacteria and their relationships with their different hosts. In particular, she is interested in the genomic consequences of long-term associations of intracellular bacteria. She explored the evolution of *[[Bartonella|Bartonella|22|wiki]]*, *[[Wolbachia|Wolbachia|23|wiki]]*, and [[Planctomycetota|Planctomycetota|24|wiki]], among others.",
820
+ // },
821
+ // {
822
+ // block_type: "paragraph",
823
+ // content:
824
+ // "Andersson has published over 200 peer-reviewed articles, and has an [[H-index|h-index|25|wiki]] of 61, as of 2022.",
825
+ // },
826
+ // ],
827
+ // },
828
+ // {
829
+ // block_type: "heading",
830
+ // content: "Notable awards and honors",
831
+ // heading_level: 1,
832
+ // children: [
833
+ // {
834
+ // block_type: "paragraph",
835
+ // content: "",
836
+ // },
837
+ // {
838
+ // block_type: "list",
839
+ // content: [
840
+ // {
841
+ // block_type: "list_item",
842
+ // list_type: "ordered",
843
+ // marker: "1.",
844
+ // content:
845
+ // "2000 - Member of the [[Royal_Swedish_Academy_of_Engineering_Sciences|Royal Swedish Academy of Engineering Sciences|26|wiki]].",
846
+ // },
847
+ // {
848
+ // block_type: "list_item",
849
+ // list_type: "ordered",
850
+ // marker: "2.",
851
+ // content:
852
+ // '2002 - Letterstedtska prize for very significant investigation, among others for "an article in Nature (1998), which reports the whole genome sequence of the intracellular parasite Rickettsia prowazekii".',
853
+ // },
854
+ // {
855
+ // block_type: "list_item",
856
+ // list_type: "ordered",
857
+ // marker: "3.",
858
+ // content:
859
+ // "2004 - Member of [[European_Molecular_Biology_Organization|EMBO|27|wiki]].",
860
+ // },
861
+ // {
862
+ // block_type: "list_item",
863
+ // list_type: "ordered",
864
+ // marker: "4.",
865
+ // content:
866
+ // "2005 - Member of the [[Royal_Swedish_Academy_of_Sciences|Royal Swedish Academy of Sciences|28|wiki]], number 1514, in the class Biological Sciences.",
867
+ // },
868
+ // {
869
+ // block_type: "list_item",
870
+ // list_type: "ordered",
871
+ // marker: "5.",
872
+ // content:
873
+ // "2005 - [[Göran_Gustafsson_Prize|Göran Gustafsson Prize|29|wiki]] in molecular biology.",
874
+ // },
875
+ // {
876
+ // block_type: "list_item",
877
+ // list_type: "ordered",
878
+ // marker: "6.",
879
+ // content:
880
+ // '2005 - Grant for "excellent research" from the [[Swedish_Research_Council|Swedish Research Council|30|wiki]] of SEK 44 millions (together with Hans Ellegren).',
881
+ // },
882
+ // {
883
+ // block_type: "list_item",
884
+ // list_type: "ordered",
885
+ // marker: "7.",
886
+ // content:
887
+ // "2009 - President of the [[European_Society_for_Evolutionary_Biology|European Society for Evolutionary Biology|31|wiki]] (2009-2011).",
888
+ // },
889
+ // {
890
+ // block_type: "list_item",
891
+ // list_type: "ordered",
892
+ // marker: "8.",
893
+ // content:
894
+ // "2011 - [[Knut_and_Alice_Wallenberg_Foundation|Wallenberg Scholar|32|wiki]].",
895
+ // },
896
+ // {
897
+ // block_type: "list_item",
898
+ // list_type: "ordered",
899
+ // marker: "9.",
900
+ // content:
901
+ // "2017 - Extension of [[Knut_and_Alice_Wallenberg_Foundation|Knut and Alice Wallenberg Foundation|33|wiki]] of SEK 75 millions (together with [[Gunnar_von_Heijne|Gunnar von Heijne|34|wiki]]).",
902
+ // },
903
+ // ],
904
+ // },
905
+ // ],
906
+ // },
907
+ // {
908
+ // block_type: "heading",
909
+ // content: "References",
910
+ // heading_level: 1,
911
+ // children: [],
912
+ // },
913
+ // ],
914
+ // };
915
915
 
916
- const openAIKey =
917
- "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";
918
- const promptForSummary = {
919
- promptId: "pmpt_687a8872d1c8819088a9cdc97dcb688b0893663621695594",
920
- version: "13",
921
- };
922
- const promptForConceptFacts = {
923
- promptId: "pmpt_687aa547f99c8193b99467ca53630c2607f5a8caf451e7e8",
924
- version: "6",
925
- };
916
+ // const openAIKey =
917
+ // "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";
918
+ // const promptForSummary = {
919
+ // promptId: "pmpt_687a8872d1c8819088a9cdc97dcb688b0893663621695594",
920
+ // version: "13",
921
+ // };
922
+ // const promptForConceptFacts = {
923
+ // promptId: "pmpt_687aa547f99c8193b99467ca53630c2607f5a8caf451e7e8",
924
+ // version: "6",
925
+ // };
926
926
 
927
- const generationContent: BaseParamType = {
928
- prompt: {
929
- typology: "", // This will be set in the constructor
930
- card_generation: "", // This will be set in the constructor
931
- },
932
- content: {
933
- source_id: "6753b14f7bb31d8ccf48ba0a",
934
- title: "Siv G. E. Andersson",
935
- type: "text",
936
- headings: [
937
- "Education and career",
938
- "Research",
939
- "Notable awards and honors",
940
- "References",
941
- ],
942
- // taxonomy: {
943
- // concepts_facts: [
944
- // {
945
- // text: "C19orf47 gene encodes Chromosome 19 open reading frame 47 protein",
946
- // type: "concept",
947
- // reference: "",
948
- // },
949
- // {
950
- // text: "Gene locus described by cytogenetic band and genomic coordinates",
951
- // type: "concept",
952
- // reference: "Gene",
953
- // },
954
- // {
955
- // text: "Alternative splicing generates multiple mRNA isoforms from one gene",
956
- // type: "concept",
957
- // reference: "mRNA",
958
- // },
959
- // {
960
- // text: "Protein domains and post-translational modifications regulate function",
961
- // type: "concept",
962
- // reference: "Protein",
963
- // },
964
- // {
965
- // text: "Subcellular localization directs protein activity in nucleoplasm and nucleus",
966
- // type: "concept",
967
- // reference: "Protein",
968
- // },
969
- // {
970
- // text: "Orthologous genes across diverse taxa indicate evolutionary conservation",
971
- // type: "concept",
972
- // reference: "Homology",
973
- // },
974
- // {
975
- // text: "Low tissue-specific expression can influence phenotypic impact of variants",
976
- // type: "concept",
977
- // reference: "Clinical Significance",
978
- // },
979
- // {
980
- // text: "Isoform 1 precursor transcript of C19orf47 contains 8 exons",
981
- // type: "fact",
982
- // reference: "Gene",
983
- // },
984
- // {
985
- // text: "Orthologs of C19orf47 exist in mammals, reptiles, amphibians, fish, insects, and plants",
986
- // type: "fact",
987
- // reference: "Homology",
988
- // },
989
- // {
990
- // text: "A C19orf47 variant was noted in one family with dystonia but TUBB4A mutation was causative",
991
- // type: "fact",
992
- // reference: "Clinical Significance",
993
- // },
994
- // ],
927
+ // const generationContent: BaseParamType = {
928
+ // prompt: {
929
+ // typology: "", // This will be set in the constructor
930
+ // card_generation: "", // This will be set in the constructor
931
+ // },
932
+ // content: {
933
+ // source_id: "6753b14f7bb31d8ccf48ba0a",
934
+ // title: "Siv G. E. Andersson",
935
+ // type: "text",
936
+ // headings: [
937
+ // "Education and career",
938
+ // "Research",
939
+ // "Notable awards and honors",
940
+ // "References",
941
+ // ],
942
+ // // taxonomy: {
943
+ // // concepts_facts: [
944
+ // // {
945
+ // // text: "C19orf47 gene encodes Chromosome 19 open reading frame 47 protein",
946
+ // // type: "concept",
947
+ // // reference: "",
948
+ // // },
949
+ // // {
950
+ // // text: "Gene locus described by cytogenetic band and genomic coordinates",
951
+ // // type: "concept",
952
+ // // reference: "Gene",
953
+ // // },
954
+ // // {
955
+ // // text: "Alternative splicing generates multiple mRNA isoforms from one gene",
956
+ // // type: "concept",
957
+ // // reference: "mRNA",
958
+ // // },
959
+ // // {
960
+ // // text: "Protein domains and post-translational modifications regulate function",
961
+ // // type: "concept",
962
+ // // reference: "Protein",
963
+ // // },
964
+ // // {
965
+ // // text: "Subcellular localization directs protein activity in nucleoplasm and nucleus",
966
+ // // type: "concept",
967
+ // // reference: "Protein",
968
+ // // },
969
+ // // {
970
+ // // text: "Orthologous genes across diverse taxa indicate evolutionary conservation",
971
+ // // type: "concept",
972
+ // // reference: "Homology",
973
+ // // },
974
+ // // {
975
+ // // text: "Low tissue-specific expression can influence phenotypic impact of variants",
976
+ // // type: "concept",
977
+ // // reference: "Clinical Significance",
978
+ // // },
979
+ // // {
980
+ // // text: "Isoform 1 precursor transcript of C19orf47 contains 8 exons",
981
+ // // type: "fact",
982
+ // // reference: "Gene",
983
+ // // },
984
+ // // {
985
+ // // text: "Orthologs of C19orf47 exist in mammals, reptiles, amphibians, fish, insects, and plants",
986
+ // // type: "fact",
987
+ // // reference: "Homology",
988
+ // // },
989
+ // // {
990
+ // // text: "A C19orf47 variant was noted in one family with dystonia but TUBB4A mutation was causative",
991
+ // // type: "fact",
992
+ // // reference: "Clinical Significance",
993
+ // // },
994
+ // // ],
995
995
 
996
- // fields: ["Sciences", "Health & Medicine"],
996
+ // // fields: ["Sciences", "Health & Medicine"],
997
997
 
998
- // generate_cards: {
999
- // state: true,
1000
- // reason: "",
1001
- // },
1002
- // },
998
+ // // generate_cards: {
999
+ // // state: true,
1000
+ // // reason: "",
1001
+ // // },
1002
+ // // },
1003
1003
 
1004
- content: content.content,
1005
- fields: [
1006
- "Sciences",
1007
- "Technology & Engineering",
1008
- "Humanities & Cultural Studies",
1009
- "Social Sciences & Global Studies",
1010
- "Business & Management",
1011
- ],
1012
- },
1013
- };
1004
+ // content: content.content,
1005
+ // fields: [
1006
+ // "Sciences",
1007
+ // "Technology & Engineering",
1008
+ // "Humanities & Cultural Studies",
1009
+ // "Social Sciences & Global Studies",
1010
+ // "Business & Management",
1011
+ // ],
1012
+ // },
1013
+ // };
1014
1014
 
1015
- // const bloomInstructions = `
1016
- // ## Guidance for creating Bloom Level 1 questions
1015
+ // // const bloomInstructions = `
1016
+ // // ## Guidance for creating Bloom Level 1 questions
1017
1017
 
1018
- // Bloom Level 1 questions focus on recall and recognition of specific facts, terms, definitions, or concepts as they were originally presented. These questions do not ask learners to explain, interpret, or apply ideas—just to retrieve them.
1018
+ // // Bloom Level 1 questions focus on recall and recognition of specific facts, terms, definitions, or concepts as they were originally presented. These questions do not ask learners to explain, interpret, or apply ideas—just to retrieve them.
1019
1019
 
1020
- // Note that these are **structured test cards**, not open-ended tasks.
1020
+ // // Note that these are **structured test cards**, not open-ended tasks.
1021
1021
 
1022
- // ### What to Do
1022
+ // // ### What to Do
1023
1023
 
1024
- // - Write questions that target a single fact or concept (or two closely linked ones).
1025
- // - Use phrasing that closely mirrors the original presentation.
1026
- // - Prioritize coverage across the set rather than going deep into any one idea.
1027
- // - Avoid asking learners to explain, compare, or infer.
1024
+ // // - Write questions that target a single fact or concept (or two closely linked ones).
1025
+ // // - Use phrasing that closely mirrors the original presentation.
1026
+ // // - Prioritize coverage across the set rather than going deep into any one idea.
1027
+ // // - Avoid asking learners to explain, compare, or infer.
1028
1028
 
1029
- // ### Common Task Types
1029
+ // // ### Common Task Types
1030
1030
 
1031
- // - Recall specific terms, dates, names, steps, or definitions
1032
- // - Match terms to their descriptions
1033
- // - Identify correct options in multiple-choice format
1034
- // - Recognize correct labels or locations in a list or image
1031
+ // // - Recall specific terms, dates, names, steps, or definitions
1032
+ // // - Match terms to their descriptions
1033
+ // // - Identify correct options in multiple-choice format
1034
+ // // - Recognize correct labels or locations in a list or image
1035
1035
 
1036
- // ## Success Criteria
1036
+ // // ## Success Criteria
1037
1037
 
1038
- // Create cards **until you have referenced ALL distinct concepts and facts** provided to you.
1039
- // `;
1038
+ // // Create cards **until you have referenced ALL distinct concepts and facts** provided to you.
1039
+ // // `;
1040
1040
 
1041
- // const cardInstructions = `
1042
- // # Multiple Choice Questions (MCQ) Cards
1041
+ // // const cardInstructions = `
1042
+ // // # Multiple Choice Questions (MCQ) Cards
1043
1043
 
1044
- // Provide multiple choices to pick from. One or more should be correct.
1044
+ // // Provide multiple choices to pick from. One or more should be correct.
1045
1045
 
1046
- // ## Content Guidelines For mcq cards**
1046
+ // // ## Content Guidelines For mcq cards**
1047
1047
 
1048
- // **Only plain text is allowed** for mcq cards.
1048
+ // // **Only plain text is allowed** for mcq cards.
1049
1049
 
1050
- // // ## Schema
1050
+ // // // ## Schema
1051
1051
 
1052
- // Use the schema below to create new MCQ cards.
1053
- // json
1054
- // {
1055
- // "type": "mcq",
1056
- // "card_content": {
1057
- // "prompt": "<question text>",
1058
- // "choices": [
1059
- // {"choice": "choice content", "is_correct": true or false},
1060
- // {"choice": "choice content", "is_correct": true or false},
1061
- // "... up to 8 choices"
1062
- // ],
1063
- // "explanation": "Clarify the concepts and facts in this card to the help the user understand the answer(s). Avoid meta-comments (e.g., “this card checks recall”). Keep it conversational, clear and concise. Don't repeat the answers verbatim. Stay within 320 characters. Include only if it adds real value or context."
1064
- // },
1065
- // "concepts": ["concept1", "concept2", "..."],
1066
- // "facts": ["fact1", "fact2", "..."],
1067
- // "bloom_alignment": "Explain why this card fits the bloom level you were asked to create (max. 240 chars)"
1068
- // }
1052
+ // // Use the schema below to create new MCQ cards.
1053
+ // // json
1054
+ // // {
1055
+ // // "type": "mcq",
1056
+ // // "card_content": {
1057
+ // // "prompt": "<question text>",
1058
+ // // "choices": [
1059
+ // // {"choice": "choice content", "is_correct": true or false},
1060
+ // // {"choice": "choice content", "is_correct": true or false},
1061
+ // // "... up to 8 choices"
1062
+ // // ],
1063
+ // // "explanation": "Clarify the concepts and facts in this card to the help the user understand the answer(s). Avoid meta-comments (e.g., “this card checks recall”). Keep it conversational, clear and concise. Don't repeat the answers verbatim. Stay within 320 characters. Include only if it adds real value or context."
1064
+ // // },
1065
+ // // "concepts": ["concept1", "concept2", "..."],
1066
+ // // "facts": ["fact1", "fact2", "..."],
1067
+ // // "bloom_alignment": "Explain why this card fits the bloom level you were asked to create (max. 240 chars)"
1068
+ // // }
1069
1069
 
1070
- // ## Requirements
1070
+ // // ## Requirements
1071
1071
 
1072
- // - When appropriate, include a brief explanation (320 characters max). An explanation is optional and should only be included if it can help the learner understand the concept(s) or fact(s) being tested. It SHOULD NOT be used to explain anything other than the concepts and facts being tested. Feel free to use your personal knowledge where appropriate when crafting it.
1073
- // - Minimum choices required: 2
1074
- // - Maximum choices allowed (correct + incorrect): 8
1075
- // - Minimum correct choices required: 1
1076
- // - Maximum correct choices: 4
1077
- // - Maximum character length for the prompt: 320
1078
- // - Maximum character length for each choice: 42
1079
- // - DO NOT add numbering to the choice content since these will be randomly sorted when displaying to the user
1080
- // `;
1081
- // const cardExamples = `
1082
- // ## Examples of Level 1 MCQ cards
1072
+ // // - When appropriate, include a brief explanation (320 characters max). An explanation is optional and should only be included if it can help the learner understand the concept(s) or fact(s) being tested. It SHOULD NOT be used to explain anything other than the concepts and facts being tested. Feel free to use your personal knowledge where appropriate when crafting it.
1073
+ // // - Minimum choices required: 2
1074
+ // // - Maximum choices allowed (correct + incorrect): 8
1075
+ // // - Minimum correct choices required: 1
1076
+ // // - Maximum correct choices: 4
1077
+ // // - Maximum character length for the prompt: 320
1078
+ // // - Maximum character length for each choice: 42
1079
+ // // - DO NOT add numbering to the choice content since these will be randomly sorted when displaying to the user
1080
+ // // `;
1081
+ // // const cardExamples = `
1082
+ // // ## Examples of Level 1 MCQ cards
1083
1083
 
1084
- // json
1085
- // [
1086
- // {
1087
- // "type": "mcq",
1088
- // "card_content": {
1089
- // "prompt": "Which Paleo-Indian culture succeeded the Clovis culture?",
1090
- // "choices": [
1091
- // { "choice": "Folsom", "is_correct": true },
1092
- // { "choice": "Clovis", "is_correct": false },
1093
- // { "choice": "Dalton", "is_correct": false },
1094
- // { "choice": "Plano", "is_correct": false }
1095
- // ],
1096
- // "explanation": "Folsom culture comes after Clovis and is identified by refined fluted points distinct from earlier Clovis tools."
1097
- // },
1098
- // "concepts": [
1099
- // "Folsom culture succeeded Clovis and is distinguished by its fluted projectile points"
1100
- // ],
1101
- // "facts": [
1102
- // "Folsom points are smaller and more refined than Clovis points"
1103
- // ],
1104
- // "bloom_alignment": "Level 1—learners merely recall the name of the culture; no higher-order thinking is required."
1105
- // },
1106
- // {
1107
- // "type": "mcq",
1108
- // "card_content": {
1109
- // "prompt": "Who published an 1831 critique describing the Book of Mormon as an attempt to resolve Protestant debates?",
1110
- // "choices": [
1111
- // { "choice": "Alexander Campbell", "is_correct": true },
1112
- // { "choice": "Joseph Smith", "is_correct": false },
1113
- // { "choice": "E. D. Howe", "is_correct": false },
1114
- // { "choice": "Charles Finney", "is_correct": false }
1115
- // ],
1116
- // "explanation": "Alexander Campbell’s 1831 pamphlet was one of the earliest printed critiques of the Book of Mormon."
1117
- // },
1118
- // "concepts": [
1119
- // "Alexander Campbell criticized the Book of Mormon as an attempt to resolve Protestant debates"
1120
- // ],
1121
- // "facts": [
1122
- // "Alexander Campbell published his critique of the Book of Mormon in 1831"
1123
- // ],
1124
- // "bloom_alignment": "Level 1—asks for straightforward recall of who authored the 1831 critique."
1125
- // },
1126
- // {
1127
- // "type": "mcq",
1128
- // "card_content": {
1129
- // "prompt": "Which keyword is required inside a Python generator function to produce values lazily?",
1130
- // "choices": [
1131
- // { "choice": "yield", "is_correct": true },
1132
- // { "choice": "return", "is_correct": false },
1133
- // { "choice": "await", "is_correct": false },
1134
- // { "choice": "pass", "is_correct": false }
1135
- // ],
1136
- // "explanation": "The yield keyword turns a regular function into a generator, pausing and resuming execution between values."
1137
- // },
1138
- // "concepts": [
1139
- // "In Python, generator functions use the yield keyword to produce sequences lazily"
1140
- // ],
1141
- // "facts": [
1142
- // "Generators in Python are defined using the def keyword and yield statements"
1143
- // ],
1144
- // "bloom_alignment": "Level 1—learners only need to recognize the specific keyword, a pure recall task."
1145
- // },
1146
- // {
1147
- // "type": "mcq",
1148
- // "card_content": {
1149
- // "prompt": "Adopting what pelvis posture helps prevent spinal curvature imbalances?",
1150
- // "choices": [
1151
- // { "choice": "Neutral pelvis posture", "is_correct": true },
1152
- // { "choice": "Anterior pelvic tilt", "is_correct": false },
1153
- // { "choice": "Posterior pelvic tilt", "is_correct": false },
1154
- // { "choice": "Kyphotic posture", "is_correct": false }
1155
- // ],
1156
- // "explanation": "Keeping the pelvis neutral supports the spine’s natural S-curve, reducing undue strain."
1157
- // },
1158
- // "concepts": [
1159
- // "Adopting a neutral pelvis posture helps prevent spinal curvature imbalances"
1160
- // ],
1161
- // "facts": [
1162
- // "A neutral pelvis posture can be achieved by aligning the ASIS and PSIS bones"
1163
- // ],
1164
- // "bloom_alignment": "Level 1—requires simple recall of the posture term without analysis."
1165
- // },
1166
- // {
1167
- // "type": "mcq",
1168
- // "card_content": {
1169
- // "prompt": "Which law of thermodynamics states that if two systems are each in thermal equilibrium with a third, they are in equilibrium with each other?",
1170
- // "choices": [
1171
- // { "choice": "Zeroth Law of Thermodynamics", "is_correct": true },
1172
- // { "choice": "First Law of Thermodynamics", "is_correct": false },
1173
- // { "choice": "Second Law of Thermodynamics", "is_correct": false },
1174
- // { "choice": "Third Law of Thermodynamics", "is_correct": false }
1175
- // ],
1176
- // "explanation": "This statement defines the Zeroth Law, forming the basis for the temperature concept used by thermometers."
1177
- // },
1178
- // "concepts": [
1179
- // "The Zeroth Law of Thermodynamics defines the concept of thermal equilibrium"
1180
- // ],
1181
- // "facts": [
1182
- // "The Zeroth Law states that if two systems are in thermal equilibrium with a third, they are in equilibrium with each other"
1183
- // ],
1184
- // "bloom_alignment": "Level 1—asks learners to recall which law matches a given statement."
1185
- // }
1186
- // ]
1084
+ // // json
1085
+ // // [
1086
+ // // {
1087
+ // // "type": "mcq",
1088
+ // // "card_content": {
1089
+ // // "prompt": "Which Paleo-Indian culture succeeded the Clovis culture?",
1090
+ // // "choices": [
1091
+ // // { "choice": "Folsom", "is_correct": true },
1092
+ // // { "choice": "Clovis", "is_correct": false },
1093
+ // // { "choice": "Dalton", "is_correct": false },
1094
+ // // { "choice": "Plano", "is_correct": false }
1095
+ // // ],
1096
+ // // "explanation": "Folsom culture comes after Clovis and is identified by refined fluted points distinct from earlier Clovis tools."
1097
+ // // },
1098
+ // // "concepts": [
1099
+ // // "Folsom culture succeeded Clovis and is distinguished by its fluted projectile points"
1100
+ // // ],
1101
+ // // "facts": [
1102
+ // // "Folsom points are smaller and more refined than Clovis points"
1103
+ // // ],
1104
+ // // "bloom_alignment": "Level 1—learners merely recall the name of the culture; no higher-order thinking is required."
1105
+ // // },
1106
+ // // {
1107
+ // // "type": "mcq",
1108
+ // // "card_content": {
1109
+ // // "prompt": "Who published an 1831 critique describing the Book of Mormon as an attempt to resolve Protestant debates?",
1110
+ // // "choices": [
1111
+ // // { "choice": "Alexander Campbell", "is_correct": true },
1112
+ // // { "choice": "Joseph Smith", "is_correct": false },
1113
+ // // { "choice": "E. D. Howe", "is_correct": false },
1114
+ // // { "choice": "Charles Finney", "is_correct": false }
1115
+ // // ],
1116
+ // // "explanation": "Alexander Campbell’s 1831 pamphlet was one of the earliest printed critiques of the Book of Mormon."
1117
+ // // },
1118
+ // // "concepts": [
1119
+ // // "Alexander Campbell criticized the Book of Mormon as an attempt to resolve Protestant debates"
1120
+ // // ],
1121
+ // // "facts": [
1122
+ // // "Alexander Campbell published his critique of the Book of Mormon in 1831"
1123
+ // // ],
1124
+ // // "bloom_alignment": "Level 1—asks for straightforward recall of who authored the 1831 critique."
1125
+ // // },
1126
+ // // {
1127
+ // // "type": "mcq",
1128
+ // // "card_content": {
1129
+ // // "prompt": "Which keyword is required inside a Python generator function to produce values lazily?",
1130
+ // // "choices": [
1131
+ // // { "choice": "yield", "is_correct": true },
1132
+ // // { "choice": "return", "is_correct": false },
1133
+ // // { "choice": "await", "is_correct": false },
1134
+ // // { "choice": "pass", "is_correct": false }
1135
+ // // ],
1136
+ // // "explanation": "The yield keyword turns a regular function into a generator, pausing and resuming execution between values."
1137
+ // // },
1138
+ // // "concepts": [
1139
+ // // "In Python, generator functions use the yield keyword to produce sequences lazily"
1140
+ // // ],
1141
+ // // "facts": [
1142
+ // // "Generators in Python are defined using the def keyword and yield statements"
1143
+ // // ],
1144
+ // // "bloom_alignment": "Level 1—learners only need to recognize the specific keyword, a pure recall task."
1145
+ // // },
1146
+ // // {
1147
+ // // "type": "mcq",
1148
+ // // "card_content": {
1149
+ // // "prompt": "Adopting what pelvis posture helps prevent spinal curvature imbalances?",
1150
+ // // "choices": [
1151
+ // // { "choice": "Neutral pelvis posture", "is_correct": true },
1152
+ // // { "choice": "Anterior pelvic tilt", "is_correct": false },
1153
+ // // { "choice": "Posterior pelvic tilt", "is_correct": false },
1154
+ // // { "choice": "Kyphotic posture", "is_correct": false }
1155
+ // // ],
1156
+ // // "explanation": "Keeping the pelvis neutral supports the spine’s natural S-curve, reducing undue strain."
1157
+ // // },
1158
+ // // "concepts": [
1159
+ // // "Adopting a neutral pelvis posture helps prevent spinal curvature imbalances"
1160
+ // // ],
1161
+ // // "facts": [
1162
+ // // "A neutral pelvis posture can be achieved by aligning the ASIS and PSIS bones"
1163
+ // // ],
1164
+ // // "bloom_alignment": "Level 1—requires simple recall of the posture term without analysis."
1165
+ // // },
1166
+ // // {
1167
+ // // "type": "mcq",
1168
+ // // "card_content": {
1169
+ // // "prompt": "Which law of thermodynamics states that if two systems are each in thermal equilibrium with a third, they are in equilibrium with each other?",
1170
+ // // "choices": [
1171
+ // // { "choice": "Zeroth Law of Thermodynamics", "is_correct": true },
1172
+ // // { "choice": "First Law of Thermodynamics", "is_correct": false },
1173
+ // // { "choice": "Second Law of Thermodynamics", "is_correct": false },
1174
+ // // { "choice": "Third Law of Thermodynamics", "is_correct": false }
1175
+ // // ],
1176
+ // // "explanation": "This statement defines the Zeroth Law, forming the basis for the temperature concept used by thermometers."
1177
+ // // },
1178
+ // // "concepts": [
1179
+ // // "The Zeroth Law of Thermodynamics defines the concept of thermal equilibrium"
1180
+ // // ],
1181
+ // // "facts": [
1182
+ // // "The Zeroth Law states that if two systems are in thermal equilibrium with a third, they are in equilibrium with each other"
1183
+ // // ],
1184
+ // // "bloom_alignment": "Level 1—asks learners to recall which law matches a given statement."
1185
+ // // }
1186
+ // // ]
1187
1187
 
1188
- // `;
1188
+ // // `;
1189
1189
 
1190
- console.log("Initializing OnlyEverGenerator");
1191
- const onlyEverGenerator = new OnlyEverGenerator(
1192
- process.env.OPEN_AI_KEY as string,
1193
- "o4-mini",
1194
- generationContent,
1195
- "pmpt_687a8872d1c8819088a9cdc97dcb688b0893663621695594",
1196
- "pmpt_687aa547f99c8193b99467ca53630c2607f5a8caf451e7e8",
1197
- "pmpt_687aa547f99c8193b99467ca53630c2607f5a8caf451e7e8",
1198
- {
1199
- bloom_instructions: "",
1200
- card_instructions: "",
1201
- card_examples: "",
1202
- }
1203
- );
1204
- const response = await onlyEverGenerator.generate(true, false);
1205
- console.log(response);
1206
- })();
1190
+ // console.log("Initializing OnlyEverGenerator");
1191
+ // const onlyEverGenerator = new OnlyEverGenerator(
1192
+ // process.env.OPEN_AI_KEY as string,
1193
+ // "o4-mini",
1194
+ // generationContent,
1195
+ // "pmpt_687a8872d1c8819088a9cdc97dcb688b0893663621695594",
1196
+ // "pmpt_687aa547f99c8193b99467ca53630c2607f5a8caf451e7e8",
1197
+ // "pmpt_687aa547f99c8193b99467ca53630c2607f5a8caf451e7e8",
1198
+ // {
1199
+ // bloom_instructions: "",
1200
+ // card_instructions: "",
1201
+ // card_examples: "",
1202
+ // }
1203
+ // );
1204
+ // const response = await onlyEverGenerator.generate(true, false);
1205
+ // console.log(response);
1206
+ // })();