-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdependency-graph.html
2380 lines (2331 loc) · 173 KB
/
dependency-graph.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!doctype html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8" />
<title>dependency graph</title>
<style>
.node:active path,
.node:hover path,
.node.current path,
.node:active polygon,
.node:hover polygon,
.node.current polygon {
stroke: fuchsia;
stroke-width: 2;
}
.edge:active path,
.edge:hover path,
.edge.current path,
.edge:active ellipse,
.edge:hover ellipse,
.edge.current ellipse {
stroke: url(#edgeGradient);
stroke-width: 3;
stroke-opacity: 1;
}
.edge:active polygon,
.edge:hover polygon,
.edge.current polygon {
stroke: fuchsia;
stroke-width: 3;
fill: fuchsia;
stroke-opacity: 1;
fill-opacity: 1;
}
.edge:active text,
.edge:hover text {
fill: fuchsia;
}
.cluster path {
stroke-width: 3;
}
.cluster:active path,
.cluster:hover path {
fill: #ffff0011;
}
div.hint {
background-color: #000000aa;
color: white;
font-family: Arial, Helvetica, sans-serif;
border-radius: 1rem;
position: fixed;
top: calc(50% - 4em);
right: calc(50% - 10em);
border: none;
padding: 1em 3em 1em 1em;
}
.hint button {
position: absolute;
font-weight: bolder;
right: 0.6em;
top: 0.6em;
color: inherit;
background-color: inherit;
border: 1px solid currentColor;
border-radius: 1em;
margin-left: 0.6em;
}
.hint a {
color: inherit;
}
#button_help {
color: white;
background-color: #00000011;
border-radius: 1em;
position: fixed;
top: 1em;
right: 1em;
font-size: 24pt;
font-weight: bolder;
width: 2em;
height: 2em;
border: none;
}
#button_help:hover {
cursor: pointer;
background-color: #00000077;
}
@media print {
#button_help {
display: none;
}
div.hint {
display: none;
}
}
</style>
</head>
<body>
<button id="button_help">?</button>
<div id="hints" class="hint" style="display: none">
<button id="close-hints">x</button>
<span id="hint-text"></span>
<ul>
<li><b>Hover</b> - highlight</li>
<li><b>Right-click</b> - pin highlight</li>
<li><b>ESC</b> - clear</li>
</ul>
</div>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<!-- Generated by graphviz version 2.43.0 (0)
-->
<!-- Title: dependency-cruiser output Pages: 1 -->
<svg width="798pt" height="2524pt"
viewBox="0.00 0.00 797.50 2524.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 2520)">
<title>dependency-cruiser output</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-2520 793.5,-2520 793.5,4 -4,4"/>
<g id="clust1" class="cluster">
<title>cluster_modules</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M20,-8C20,-8 769.5,-8 769.5,-8 775.5,-8 781.5,-14 781.5,-20 781.5,-20 781.5,-2496 781.5,-2496 781.5,-2502 775.5,-2508 769.5,-2508 769.5,-2508 20,-2508 20,-2508 14,-2508 8,-2502 8,-2496 8,-2496 8,-20 8,-20 8,-14 14,-8 20,-8"/>
<text text-anchor="middle" x="394.75" y="-2496.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">modules</text>
</g>
<g id="clust2" class="cluster">
<title>cluster_modules/cli</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M79,-2366C79,-2366 455,-2366 455,-2366 461,-2366 467,-2372 467,-2378 467,-2378 467,-2470 467,-2470 467,-2476 461,-2482 455,-2482 455,-2482 79,-2482 79,-2482 73,-2482 67,-2476 67,-2470 67,-2470 67,-2378 67,-2378 67,-2372 73,-2366 79,-2366"/>
<text text-anchor="middle" x="267" y="-2470.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">cli</text>
</g>
<g id="clust3" class="cluster">
<title>cluster_modules/cli/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M87,-2374C87,-2374 447,-2374 447,-2374 453,-2374 459,-2380 459,-2386 459,-2386 459,-2444 459,-2444 459,-2450 453,-2456 447,-2456 447,-2456 87,-2456 87,-2456 81,-2456 75,-2450 75,-2444 75,-2444 75,-2386 75,-2386 75,-2380 81,-2374 87,-2374"/>
<text text-anchor="middle" x="267" y="-2444.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_modules/core</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M69.5,-1306C69.5,-1306 761.5,-1306 761.5,-1306 767.5,-1306 773.5,-1312 773.5,-1318 773.5,-1318 773.5,-2346 773.5,-2346 773.5,-2352 767.5,-2358 761.5,-2358 761.5,-2358 69.5,-2358 69.5,-2358 63.5,-2358 57.5,-2352 57.5,-2346 57.5,-2346 57.5,-1318 57.5,-1318 57.5,-1312 63.5,-1306 69.5,-1306"/>
<text text-anchor="middle" x="415.5" y="-2346.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">core</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_modules/core/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M77.5,-1314C77.5,-1314 753.5,-1314 753.5,-1314 759.5,-1314 765.5,-1320 765.5,-1326 765.5,-1326 765.5,-2320 765.5,-2320 765.5,-2326 759.5,-2332 753.5,-2332 753.5,-2332 77.5,-2332 77.5,-2332 71.5,-2332 65.5,-2326 65.5,-2320 65.5,-2320 65.5,-1326 65.5,-1326 65.5,-1320 71.5,-1314 77.5,-1314"/>
<text text-anchor="middle" x="415.5" y="-2320.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust6" class="cluster">
<title>cluster_modules/core/src/lib</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M213,-1518C213,-1518 740,-1518 740,-1518 746,-1518 752,-1524 752,-1530 752,-1530 752,-2104 752,-2104 752,-2110 746,-2116 740,-2116 740,-2116 213,-2116 213,-2116 207,-2116 201,-2110 201,-2104 201,-2104 201,-1530 201,-1530 201,-1524 207,-1518 213,-1518"/>
<text text-anchor="middle" x="476.5" y="-2104.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">lib</text>
</g>
<g id="clust7" class="cluster">
<title>cluster_modules/core/src/lib/interfaces</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M595.5,-2020C595.5,-2020 643.5,-2020 643.5,-2020 649.5,-2020 655.5,-2026 655.5,-2032 655.5,-2032 655.5,-2060 655.5,-2060 655.5,-2066 649.5,-2072 643.5,-2072 643.5,-2072 595.5,-2072 595.5,-2072 589.5,-2072 583.5,-2066 583.5,-2060 583.5,-2060 583.5,-2032 583.5,-2032 583.5,-2026 589.5,-2020 595.5,-2020"/>
<text text-anchor="middle" x="619.5" y="-2060.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">interfaces</text>
</g>
<g id="clust8" class="cluster">
<title>cluster_modules/core/src/lib/test</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M221,-1650C221,-1650 432.5,-1650 432.5,-1650 438.5,-1650 444.5,-1656 444.5,-1662 444.5,-1662 444.5,-1780 444.5,-1780 444.5,-1786 438.5,-1792 432.5,-1792 432.5,-1792 221,-1792 221,-1792 215,-1792 209,-1786 209,-1780 209,-1780 209,-1662 209,-1662 209,-1656 215,-1650 221,-1650"/>
<text text-anchor="middle" x="326.75" y="-1780.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">test</text>
</g>
<g id="clust9" class="cluster">
<title>cluster_modules/core/src/lib/util</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M229,-1924C229,-1924 554,-1924 554,-1924 560,-1924 566,-1930 566,-1936 566,-1936 566,-1994 566,-1994 566,-2000 560,-2006 554,-2006 554,-2006 229,-2006 229,-2006 223,-2006 217,-2000 217,-1994 217,-1994 217,-1936 217,-1936 217,-1930 223,-1924 229,-1924"/>
<text text-anchor="middle" x="391.5" y="-1994.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">util</text>
</g>
<g id="clust10" class="cluster">
<title>cluster_modules/core/src/phases</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M240,-2150C240,-2150 439.5,-2150 439.5,-2150 445.5,-2150 451.5,-2156 451.5,-2162 451.5,-2162 451.5,-2250 451.5,-2250 451.5,-2256 445.5,-2262 439.5,-2262 439.5,-2262 240,-2262 240,-2262 234,-2262 228,-2256 228,-2250 228,-2250 228,-2162 228,-2162 228,-2156 234,-2150 240,-2150"/>
<text text-anchor="middle" x="339.75" y="-2250.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">phases</text>
</g>
<g id="clust11" class="cluster">
<title>cluster_modules/core/src/steps</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M244,-1338C244,-1338 449,-1338 449,-1338 455,-1338 461,-1344 461,-1350 461,-1350 461,-1498 461,-1498 461,-1504 455,-1510 449,-1510 449,-1510 244,-1510 244,-1510 238,-1510 232,-1504 232,-1498 232,-1498 232,-1350 232,-1350 232,-1344 238,-1338 244,-1338"/>
<text text-anchor="middle" x="346.5" y="-1498.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">steps</text>
</g>
<g id="clust12" class="cluster">
<title>cluster_modules/core/src/steps/lib</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M386.5,-1346C386.5,-1346 432.5,-1346 432.5,-1346 438.5,-1346 444.5,-1352 444.5,-1358 444.5,-1358 444.5,-1386 444.5,-1386 444.5,-1392 438.5,-1398 432.5,-1398 432.5,-1398 386.5,-1398 386.5,-1398 380.5,-1398 374.5,-1392 374.5,-1386 374.5,-1386 374.5,-1358 374.5,-1358 374.5,-1352 380.5,-1346 386.5,-1346"/>
<text text-anchor="middle" x="409.5" y="-1386.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">lib</text>
</g>
<g id="clust13" class="cluster">
<title>cluster_modules/domain-storage</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M49,-1156C49,-1156 455,-1156 455,-1156 461,-1156 467,-1162 467,-1168 467,-1168 467,-1286 467,-1286 467,-1292 461,-1298 455,-1298 455,-1298 49,-1298 49,-1298 43,-1298 37,-1292 37,-1286 37,-1286 37,-1168 37,-1168 37,-1162 43,-1156 49,-1156"/>
<text text-anchor="middle" x="252" y="-1286.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">domain-storage</text>
</g>
<g id="clust14" class="cluster">
<title>cluster_modules/domain-storage/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M57,-1190C57,-1190 447,-1190 447,-1190 453,-1190 459,-1196 459,-1202 459,-1202 459,-1260 459,-1260 459,-1266 453,-1272 447,-1272 447,-1272 57,-1272 57,-1272 51,-1272 45,-1266 45,-1260 45,-1260 45,-1202 45,-1202 45,-1196 51,-1190 57,-1190"/>
<text text-anchor="middle" x="252" y="-1260.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust15" class="cluster">
<title>cluster_modules/out-xunit</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M64,-1062C64,-1062 318.5,-1062 318.5,-1062 324.5,-1062 330.5,-1068 330.5,-1074 330.5,-1074 330.5,-1136 330.5,-1136 330.5,-1142 324.5,-1148 318.5,-1148 318.5,-1148 64,-1148 64,-1148 58,-1148 52,-1142 52,-1136 52,-1136 52,-1074 52,-1074 52,-1068 58,-1062 64,-1062"/>
<text text-anchor="middle" x="191.25" y="-1136.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">out-xunit</text>
</g>
<g id="clust16" class="cluster">
<title>cluster_modules/out-xunit/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M72,-1070C72,-1070 310.5,-1070 310.5,-1070 316.5,-1070 322.5,-1076 322.5,-1082 322.5,-1082 322.5,-1110 322.5,-1110 322.5,-1116 316.5,-1122 310.5,-1122 310.5,-1122 72,-1122 72,-1122 66,-1122 60,-1116 60,-1110 60,-1110 60,-1082 60,-1082 60,-1076 66,-1070 72,-1070"/>
<text text-anchor="middle" x="191.25" y="-1110.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust17" class="cluster">
<title>cluster_modules/parse-md</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M72,-938C72,-938 311,-938 311,-938 317,-938 323,-944 323,-950 323,-950 323,-1042 323,-1042 323,-1048 317,-1054 311,-1054 311,-1054 72,-1054 72,-1054 66,-1054 60,-1048 60,-1042 60,-1042 60,-950 60,-950 60,-944 66,-938 72,-938"/>
<text text-anchor="middle" x="191.5" y="-1042.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">parse-md</text>
</g>
<g id="clust18" class="cluster">
<title>cluster_modules/parse-md/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M80,-946C80,-946 303,-946 303,-946 309,-946 315,-952 315,-958 315,-958 315,-1016 315,-1016 315,-1022 309,-1028 303,-1028 303,-1028 80,-1028 80,-1028 74,-1028 68,-1022 68,-1016 68,-1016 68,-958 68,-958 68,-952 74,-946 80,-946"/>
<text text-anchor="middle" x="191.5" y="-1016.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust19" class="cluster">
<title>cluster_modules/storage-fs</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M62.5,-818C62.5,-818 320,-818 320,-818 326,-818 332,-824 332,-830 332,-830 332,-918 332,-918 332,-924 326,-930 320,-930 320,-930 62.5,-930 62.5,-930 56.5,-930 50.5,-924 50.5,-918 50.5,-918 50.5,-830 50.5,-830 50.5,-824 56.5,-818 62.5,-818"/>
<text text-anchor="middle" x="191.25" y="-918.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">storage-fs</text>
</g>
<g id="clust20" class="cluster">
<title>cluster_modules/storage-fs/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M70.5,-852C70.5,-852 312,-852 312,-852 318,-852 324,-858 324,-864 324,-864 324,-892 324,-892 324,-898 318,-904 312,-904 312,-904 70.5,-904 70.5,-904 64.5,-904 58.5,-898 58.5,-892 58.5,-892 58.5,-864 58.5,-864 58.5,-858 64.5,-852 70.5,-852"/>
<text text-anchor="middle" x="191.25" y="-892.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust21" class="cluster">
<title>cluster_modules/storage-mem</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M54.5,-698C54.5,-698 328,-698 328,-698 334,-698 340,-704 340,-710 340,-710 340,-798 340,-798 340,-804 334,-810 328,-810 328,-810 54.5,-810 54.5,-810 48.5,-810 42.5,-804 42.5,-798 42.5,-798 42.5,-710 42.5,-710 42.5,-704 48.5,-698 54.5,-698"/>
<text text-anchor="middle" x="191.25" y="-798.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">storage-mem</text>
</g>
<g id="clust22" class="cluster">
<title>cluster_modules/storage-mem/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M62.5,-732C62.5,-732 320,-732 320,-732 326,-732 332,-738 332,-744 332,-744 332,-772 332,-772 332,-778 326,-784 320,-784 320,-784 62.5,-784 62.5,-784 56.5,-784 50.5,-778 50.5,-772 50.5,-772 50.5,-744 50.5,-744 50.5,-738 56.5,-732 62.5,-732"/>
<text text-anchor="middle" x="191.25" y="-772.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust23" class="cluster">
<title>cluster_modules/utils</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M55,-402C55,-402 323,-402 323,-402 329,-402 335,-408 335,-414 335,-414 335,-678 335,-678 335,-684 329,-690 323,-690 323,-690 55,-690 55,-690 49,-690 43,-684 43,-678 43,-678 43,-414 43,-414 43,-408 49,-402 55,-402"/>
<text text-anchor="middle" x="189" y="-678.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">utils</text>
</g>
<g id="clust24" class="cluster">
<title>cluster_modules/utils/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M63,-436C63,-436 315,-436 315,-436 321,-436 327,-442 327,-448 327,-448 327,-652 327,-652 327,-658 321,-664 315,-664 315,-664 63,-664 63,-664 57,-664 51,-658 51,-652 51,-652 51,-448 51,-448 51,-442 57,-436 63,-436"/>
<text text-anchor="middle" x="189" y="-652.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust25" class="cluster">
<title>cluster_modules/utils/src/scaffold</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M75,-556C75,-556 307,-556 307,-556 313,-556 319,-562 319,-568 319,-568 319,-626 319,-626 319,-632 313,-638 307,-638 307,-638 75,-638 75,-638 69,-638 63,-632 63,-626 63,-626 63,-568 63,-568 63,-562 69,-556 75,-556"/>
<text text-anchor="middle" x="191" y="-626.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">scaffold</text>
</g>
<g id="clust26" class="cluster">
<title>cluster_modules/utils/src/util</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M85.5,-470C85.5,-470 303,-470 303,-470 309,-470 315,-476 315,-482 315,-482 315,-510 315,-510 315,-516 309,-522 303,-522 303,-522 85.5,-522 85.5,-522 79.5,-522 73.5,-516 73.5,-510 73.5,-510 73.5,-482 73.5,-482 73.5,-476 79.5,-470 85.5,-470"/>
<text text-anchor="middle" x="194.25" y="-510.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">util</text>
</g>
<g id="clust27" class="cluster">
<title>cluster_modules/web-http</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M64,-308C64,-308 318.5,-308 318.5,-308 324.5,-308 330.5,-314 330.5,-320 330.5,-320 330.5,-382 330.5,-382 330.5,-388 324.5,-394 318.5,-394 318.5,-394 64,-394 64,-394 58,-394 52,-388 52,-382 52,-382 52,-320 52,-320 52,-314 58,-308 64,-308"/>
<text text-anchor="middle" x="191.25" y="-382.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">web-http</text>
</g>
<g id="clust28" class="cluster">
<title>cluster_modules/web-http/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M72,-316C72,-316 310.5,-316 310.5,-316 316.5,-316 322.5,-322 322.5,-328 322.5,-328 322.5,-356 322.5,-356 322.5,-362 316.5,-368 310.5,-368 310.5,-368 72,-368 72,-368 66,-368 60,-362 60,-356 60,-356 60,-328 60,-328 60,-322 66,-316 72,-316"/>
<text text-anchor="middle" x="191.25" y="-356.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust29" class="cluster">
<title>cluster_modules/web-playwright</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M49.5,-154C49.5,-154 466.5,-154 466.5,-154 472.5,-154 478.5,-160 478.5,-166 478.5,-166 478.5,-288 478.5,-288 478.5,-294 472.5,-300 466.5,-300 466.5,-300 49.5,-300 49.5,-300 43.5,-300 37.5,-294 37.5,-288 37.5,-288 37.5,-166 37.5,-166 37.5,-160 43.5,-154 49.5,-154"/>
<text text-anchor="middle" x="258" y="-288.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">web-playwright</text>
</g>
<g id="clust30" class="cluster">
<title>cluster_modules/web-playwright/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M57.5,-162C57.5,-162 458.5,-162 458.5,-162 464.5,-162 470.5,-168 470.5,-174 470.5,-174 470.5,-262 470.5,-262 470.5,-268 464.5,-274 458.5,-274 458.5,-274 57.5,-274 57.5,-274 51.5,-274 45.5,-268 45.5,-262 45.5,-262 45.5,-174 45.5,-174 45.5,-168 51.5,-162 57.5,-162"/>
<text text-anchor="middle" x="258" y="-262.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust31" class="cluster">
<title>cluster_modules/web-server-express</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M28,-16C28,-16 562,-16 562,-16 568,-16 574,-22 574,-28 574,-28 574,-134 574,-134 574,-140 568,-146 562,-146 562,-146 28,-146 28,-146 22,-146 16,-140 16,-134 16,-134 16,-28 16,-28 16,-22 22,-16 28,-16"/>
<text text-anchor="middle" x="295" y="-134.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">web-server-express</text>
</g>
<g id="clust32" class="cluster">
<title>cluster_modules/web-server-express/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M36,-24C36,-24 554,-24 554,-24 560,-24 566,-30 566,-36 566,-36 566,-108 566,-108 566,-114 560,-120 554,-120 554,-120 36,-120 36,-120 30,-120 24,-114 24,-108 24,-108 24,-36 24,-36 24,-30 30,-24 36,-24"/>
<text text-anchor="middle" x="295" y="-108.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<!-- modules/cli/src/BaseOptions.test.ts -->
<g id="node1" class="node">
<title>modules/cli/src/BaseOptions.test.ts</title>
<g id="a_node1"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/cli/src/BaseOptions.test.ts" xlink:title="BaseOptions.test.ts">
<path fill="#ddfeff" stroke="black" d="M326,-2430C326,-2430 234,-2430 234,-2430 231,-2430 228,-2427 228,-2424 228,-2424 228,-2418 228,-2418 228,-2415 231,-2412 234,-2412 234,-2412 326,-2412 326,-2412 329,-2412 332,-2415 332,-2418 332,-2418 332,-2424 332,-2424 332,-2427 329,-2430 326,-2430"/>
<text text-anchor="start" x="236" y="-2418.8" font-family="Helvetica,sans-Serif" font-size="9.00">BaseOptions.test.ts</text>
</a>
</g>
</g>
<!-- modules/cli/src/BaseOptions.ts -->
<g id="node2" class="node">
<title>modules/cli/src/BaseOptions.ts</title>
<g id="a_node2"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/cli/src/BaseOptions.ts" xlink:title="BaseOptions.ts">
<path fill="#ddfeff" stroke="black" d="M445,-2415C445,-2415 374,-2415 374,-2415 371,-2415 368,-2412 368,-2409 368,-2409 368,-2403 368,-2403 368,-2400 371,-2397 374,-2397 374,-2397 445,-2397 445,-2397 448,-2397 451,-2400 451,-2403 451,-2403 451,-2409 451,-2409 451,-2412 448,-2415 445,-2415"/>
<text text-anchor="start" x="376" y="-2403.8" font-family="Helvetica,sans-Serif" font-size="9.00">BaseOptions.ts</text>
</a>
</g>
</g>
<!-- modules/cli/src/BaseOptions.test.ts->modules/cli/src/BaseOptions.ts -->
<g id="edge1" class="edge">
<title>modules/cli/src/BaseOptions.test.ts->modules/cli/src/BaseOptions.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M330.5,-2411.76C330.5,-2408.67 330.5,-2406 330.5,-2406 330.5,-2406 361.69,-2406 361.69,-2406"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="361.69,-2408.1 367.69,-2406 361.69,-2403.9 361.69,-2408.1"/>
</g>
<!-- modules/cli/src/cli.ts -->
<g id="node3" class="node">
<title>modules/cli/src/cli.ts</title>
<g id="a_node3"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/cli/src/cli.ts" xlink:title="cli.ts">
<path fill="#ddfeff" stroke="black" d="M133.5,-2400C133.5,-2400 91.5,-2400 91.5,-2400 88.5,-2400 85.5,-2397 85.5,-2394 85.5,-2394 85.5,-2388 85.5,-2388 85.5,-2385 88.5,-2382 91.5,-2382 91.5,-2382 133.5,-2382 133.5,-2382 136.5,-2382 139.5,-2385 139.5,-2388 139.5,-2388 139.5,-2394 139.5,-2394 139.5,-2397 136.5,-2400 133.5,-2400"/>
<text text-anchor="start" x="101.5" y="-2388.8" font-family="Helvetica,sans-Serif" font-size="9.00">cli.ts</text>
</a>
</g>
</g>
<!-- modules/cli/src/lib.ts -->
<g id="node4" class="node">
<title>modules/cli/src/lib.ts</title>
<g id="a_node4"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/cli/src/lib.ts" xlink:title="lib.ts">
<path fill="#ddfeff" stroke="black" d="M301,-2400C301,-2400 259,-2400 259,-2400 256,-2400 253,-2397 253,-2394 253,-2394 253,-2388 253,-2388 253,-2385 256,-2382 259,-2382 259,-2382 301,-2382 301,-2382 304,-2382 307,-2385 307,-2388 307,-2388 307,-2394 307,-2394 307,-2397 304,-2400 301,-2400"/>
<text text-anchor="start" x="269" y="-2388.8" font-family="Helvetica,sans-Serif" font-size="9.00">lib.ts</text>
</a>
</g>
</g>
<!-- modules/cli/src/cli.ts->modules/cli/src/lib.ts -->
<g id="edge2" class="edge">
<title>modules/cli/src/cli.ts->modules/cli/src/lib.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M139.78,-2388C139.78,-2388 246.73,-2388 246.73,-2388"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="246.73,-2390.1 252.73,-2388 246.73,-2385.9 246.73,-2390.1"/>
</g>
<!-- modules/cli/src/lib.ts->modules/cli/src/BaseOptions.ts -->
<g id="edge4" class="edge">
<title>modules/cli/src/lib.ts->modules/cli/src/BaseOptions.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M307.04,-2389.5C334.66,-2389.5 373.5,-2389.5 373.5,-2389.5 373.5,-2389.5 373.5,-2390.98 373.5,-2390.98"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="371.4,-2390.98 373.5,-2396.98 375.6,-2390.98 371.4,-2390.98"/>
</g>
<!-- modules/cli/src/lib.test.ts -->
<g id="node5" class="node">
<title>modules/cli/src/lib.test.ts</title>
<g id="a_node5"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/cli/src/lib.test.ts" xlink:title="lib.test.ts">
<path fill="#ddfeff" stroke="black" d="M136,-2430C136,-2430 89,-2430 89,-2430 86,-2430 83,-2427 83,-2424 83,-2424 83,-2418 83,-2418 83,-2415 86,-2412 89,-2412 89,-2412 136,-2412 136,-2412 139,-2412 142,-2415 142,-2418 142,-2418 142,-2424 142,-2424 142,-2427 139,-2430 136,-2430"/>
<text text-anchor="start" x="91" y="-2418.8" font-family="Helvetica,sans-Serif" font-size="9.00">lib.test.ts</text>
</a>
</g>
</g>
<!-- modules/cli/src/lib.test.ts->modules/cli/src/lib.ts -->
<g id="edge3" class="edge">
<title>modules/cli/src/lib.test.ts->modules/cli/src/lib.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M142.23,-2421C145.96,-2421 148.5,-2421 148.5,-2421 148.5,-2421 148.5,-2394 148.5,-2394 148.5,-2394 246.75,-2394 246.75,-2394"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="246.75,-2396.1 252.75,-2394 246.75,-2391.9 246.75,-2396.1"/>
</g>
<!-- modules/core/src/currentVersion.ts -->
<g id="node6" class="node">
<title>modules/core/src/currentVersion.ts</title>
<g id="a_node6"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/currentVersion.ts" xlink:title="currentVersion.ts">
<path fill="#ddfeff" stroke="black" d="M751.5,-2142C751.5,-2142 669.5,-2142 669.5,-2142 666.5,-2142 663.5,-2139 663.5,-2136 663.5,-2136 663.5,-2130 663.5,-2130 663.5,-2127 666.5,-2124 669.5,-2124 669.5,-2124 751.5,-2124 751.5,-2124 754.5,-2124 757.5,-2127 757.5,-2130 757.5,-2130 757.5,-2136 757.5,-2136 757.5,-2139 754.5,-2142 751.5,-2142"/>
<text text-anchor="start" x="671.5" y="-2130.8" font-family="Helvetica,sans-Serif" font-size="9.00">currentVersion.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/index.ts -->
<g id="node7" class="node">
<title>modules/core/src/index.ts</title>
<g id="a_node7"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/index.ts" xlink:title="index.ts">
<path fill="#ddfeff" stroke="black" d="M552,-2176C552,-2176 510,-2176 510,-2176 507,-2176 504,-2173 504,-2170 504,-2170 504,-2164 504,-2164 504,-2161 507,-2158 510,-2158 510,-2158 552,-2158 552,-2158 555,-2158 558,-2161 558,-2164 558,-2164 558,-2170 558,-2170 558,-2173 555,-2176 552,-2176"/>
<text text-anchor="start" x="512.5" y="-2164.8" font-family="Helvetica,sans-Serif" font-size="9.00">index.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/defs.ts -->
<g id="node8" class="node">
<title>modules/core/src/lib/defs.ts</title>
<g id="a_node8"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/defs.ts" xlink:title="defs.ts">
<path fill="#ddfeff" stroke="black" d="M640.5,-1828C640.5,-1828 598.5,-1828 598.5,-1828 595.5,-1828 592.5,-1825 592.5,-1822 592.5,-1822 592.5,-1816 592.5,-1816 592.5,-1813 595.5,-1810 598.5,-1810 598.5,-1810 640.5,-1810 640.5,-1810 643.5,-1810 646.5,-1813 646.5,-1816 646.5,-1816 646.5,-1822 646.5,-1822 646.5,-1825 643.5,-1828 640.5,-1828"/>
<text text-anchor="start" x="604" y="-1816.8" font-family="Helvetica,sans-Serif" font-size="9.00">defs.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/index.ts->modules/core/src/lib/defs.ts -->
<g id="edge5" class="edge">
<title>modules/core/src/index.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M558.25,-2167C571.88,-2167 585.5,-2167 585.5,-2167 585.5,-2167 585.5,-1817.71 585.5,-1817.71 585.5,-1817.71 586.38,-1817.71 586.38,-1817.71"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="592.38,-1819.81 586.38,-1817.71 592.38,-1815.61 592.38,-1819.81"/>
</g>
<!-- modules/core/src/lib/defs.ts->modules/core/src/currentVersion.ts -->
<g id="edge19" class="edge">
<title>modules/core/src/lib/defs.ts->modules/core/src/currentVersion.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M646.79,-1817.2C658.92,-1817.2 670.5,-1817.2 670.5,-1817.2 670.5,-1817.2 670.5,-2117.89 670.5,-2117.89"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="668.4,-2117.89 670.5,-2123.89 672.6,-2117.89 668.4,-2117.89"/>
</g>
<!-- modules/core/src/lib/interfaces/logger.ts -->
<g id="node10" class="node">
<title>modules/core/src/lib/interfaces/logger.ts</title>
<g id="a_node10"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/interfaces/logger.ts" xlink:title="logger.ts">
<path fill="#ddfeff" stroke="black" d="M641.5,-2046C641.5,-2046 597.5,-2046 597.5,-2046 594.5,-2046 591.5,-2043 591.5,-2040 591.5,-2040 591.5,-2034 591.5,-2034 591.5,-2031 594.5,-2028 597.5,-2028 597.5,-2028 641.5,-2028 641.5,-2028 644.5,-2028 647.5,-2031 647.5,-2034 647.5,-2034 647.5,-2040 647.5,-2040 647.5,-2043 644.5,-2046 641.5,-2046"/>
<text text-anchor="start" x="599.5" y="-2034.8" font-family="Helvetica,sans-Serif" font-size="9.00">logger.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/defs.ts->modules/core/src/lib/interfaces/logger.ts -->
<g id="edge21" class="edge">
<title>modules/core/src/lib/defs.ts->modules/core/src/lib/interfaces/logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M638.5,-1828.09C638.5,-1828.09 638.5,-2014.07 638.5,-2014.07"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="636.4,-2021.87 638.5,-2027.87 640.6,-2021.87 636.4,-2021.87"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="638.5,-2021.87 638.5,-2018.87 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="638.5" cy="-2016.47" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/util/index.ts -->
<g id="node15" class="node">
<title>modules/core/src/lib/util/index.ts</title>
<g id="a_node15"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/util/index.ts" xlink:title="index.ts">
<path fill="#ddfeff" stroke="black" d="M552,-1950C552,-1950 510,-1950 510,-1950 507,-1950 504,-1947 504,-1944 504,-1944 504,-1938 504,-1938 504,-1935 507,-1932 510,-1932 510,-1932 552,-1932 552,-1932 555,-1932 558,-1935 558,-1938 558,-1938 558,-1944 558,-1944 558,-1947 555,-1950 552,-1950"/>
<text text-anchor="start" x="512.5" y="-1938.8" font-family="Helvetica,sans-Serif" font-size="9.00">index.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/defs.ts->modules/core/src/lib/util/index.ts -->
<g id="edge23" class="edge">
<title>modules/core/src/lib/defs.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M609.5,-1828.29C609.5,-1856.2 609.5,-1937.4 609.5,-1937.4 609.5,-1937.4 571.82,-1937.4 571.82,-1937.4"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="564.02,-1935.3 558.02,-1937.4 564.02,-1939.5 564.02,-1935.3"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="564.02,-1937.4 567.02,-1937.4 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="569.42" cy="-1937.4" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/Timer.ts -->
<g id="node17" class="node">
<title>modules/core/src/lib/Timer.ts</title>
<g id="a_node17"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/Timer.ts" xlink:title="Timer.ts">
<path fill="#ddfeff" stroke="black" d="M731.5,-1828C731.5,-1828 689.5,-1828 689.5,-1828 686.5,-1828 683.5,-1825 683.5,-1822 683.5,-1822 683.5,-1816 683.5,-1816 683.5,-1813 686.5,-1810 689.5,-1810 689.5,-1810 731.5,-1810 731.5,-1810 734.5,-1810 737.5,-1813 737.5,-1816 737.5,-1816 737.5,-1822 737.5,-1822 737.5,-1825 734.5,-1828 731.5,-1828"/>
<text text-anchor="start" x="692" y="-1816.8" font-family="Helvetica,sans-Serif" font-size="9.00">Timer.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/defs.ts->modules/core/src/lib/Timer.ts -->
<g id="edge22" class="edge">
<title>modules/core/src/lib/defs.ts->modules/core/src/lib/Timer.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M646.8,-1813.6C646.8,-1813.6 677.22,-1813.6 677.22,-1813.6"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="677.22,-1815.7 683.22,-1813.6 677.22,-1811.5 677.22,-1815.7"/>
</g>
<!-- modules/core/src/lib/contexts.ts -->
<g id="node18" class="node">
<title>modules/core/src/lib/contexts.ts</title>
<g id="a_node18"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/contexts.ts" xlink:title="contexts.ts">
<path fill="#ddfeff" stroke="black" d="M738,-1578C738,-1578 683,-1578 683,-1578 680,-1578 677,-1575 677,-1572 677,-1572 677,-1566 677,-1566 677,-1563 680,-1560 683,-1560 683,-1560 738,-1560 738,-1560 741,-1560 744,-1563 744,-1566 744,-1566 744,-1572 744,-1572 744,-1575 741,-1578 738,-1578"/>
<text text-anchor="start" x="685" y="-1566.8" font-family="Helvetica,sans-Serif" font-size="9.00">contexts.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/defs.ts->modules/core/src/lib/contexts.ts -->
<g id="edge20" class="edge">
<title>modules/core/src/lib/defs.ts->modules/core/src/lib/contexts.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M640.5,-1810C640.5,-1764.93 640.5,-1566 640.5,-1566 640.5,-1566 662.93,-1566 662.93,-1566"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="670.73,-1568.1 676.73,-1566 670.73,-1563.9 670.73,-1568.1"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="670.73,-1566 667.73,-1566 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="665.33" cy="-1566" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/ConnectedLogger.ts -->
<g id="node9" class="node">
<title>modules/core/src/lib/ConnectedLogger.ts</title>
<g id="a_node9"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/ConnectedLogger.ts" xlink:title="ConnectedLogger.ts">
<path fill="#ddfeff" stroke="black" d="M457,-2032C457,-2032 362,-2032 362,-2032 359,-2032 356,-2029 356,-2026 356,-2026 356,-2020 356,-2020 356,-2017 359,-2014 362,-2014 362,-2014 457,-2014 457,-2014 460,-2014 463,-2017 463,-2020 463,-2020 463,-2026 463,-2026 463,-2029 460,-2032 457,-2032"/>
<text text-anchor="start" x="364" y="-2020.8" font-family="Helvetica,sans-Serif" font-size="9.00">ConnectedLogger.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/ConnectedLogger.ts->modules/core/src/lib/defs.ts -->
<g id="edge6" class="edge">
<title>modules/core/src/lib/ConnectedLogger.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M463.28,-2021C528.7,-2021 630.5,-2021 630.5,-2021 630.5,-2021 630.5,-1834.2 630.5,-1834.2"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="632.6,-1834.2 630.5,-1828.2 628.4,-1834.2 632.6,-1834.2"/>
</g>
<!-- modules/core/src/lib/ConnectedLogger.ts->modules/core/src/lib/interfaces/logger.ts -->
<g id="edge7" class="edge">
<title>modules/core/src/lib/ConnectedLogger.ts->modules/core/src/lib/interfaces/logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M463.11,-2024.5C529.66,-2024.5 634.5,-2024.5 634.5,-2024.5 634.5,-2024.5 634.5,-2024.84 634.5,-2024.84"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="632.4,-2021.92 634.5,-2027.92 636.6,-2021.92 632.4,-2021.92"/>
</g>
<!-- modules/core/src/lib/Logger.ts -->
<g id="node11" class="node">
<title>modules/core/src/lib/Logger.ts</title>
<g id="a_node11"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/Logger.ts" xlink:title="Logger.ts">
<path fill="#ddfeff" stroke="black" d="M554,-1902C554,-1902 508,-1902 508,-1902 505,-1902 502,-1899 502,-1896 502,-1896 502,-1890 502,-1890 502,-1887 505,-1884 508,-1884 508,-1884 554,-1884 554,-1884 557,-1884 560,-1887 560,-1890 560,-1890 560,-1896 560,-1896 560,-1899 557,-1902 554,-1902"/>
<text text-anchor="start" x="510" y="-1890.8" font-family="Helvetica,sans-Serif" font-size="9.00">Logger.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/ConnectedLogger.ts->modules/core/src/lib/Logger.ts -->
<g id="edge8" class="edge">
<title>modules/core/src/lib/ConnectedLogger.ts->modules/core/src/lib/Logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M463.26,-2017.5C472.66,-2017.5 479.5,-2017.5 479.5,-2017.5 479.5,-2017.5 479.5,-1897.5 479.5,-1897.5 479.5,-1897.5 495.94,-1897.5 495.94,-1897.5"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="495.94,-1899.6 501.94,-1897.5 495.94,-1895.4 495.94,-1899.6"/>
</g>
<!-- modules/core/src/lib/interfaces/logger.ts->modules/core/src/lib/defs.ts -->
<g id="edge32" class="edge">
<title>modules/core/src/lib/interfaces/logger.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M642.5,-2027.91C642.5,-2027.91 642.5,-1841.93 642.5,-1841.93"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="644.6,-1834.13 642.5,-1828.13 640.4,-1834.13 644.6,-1834.13"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="642.5,-1834.13 642.5,-1837.13 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="642.5" cy="-1839.53" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/Logger.ts->modules/core/src/lib/defs.ts -->
<g id="edge14" class="edge">
<title>modules/core/src/lib/Logger.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M560.08,-1890C579.5,-1890 601.5,-1890 601.5,-1890 601.5,-1890 601.5,-1834.28 601.5,-1834.28"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="603.6,-1834.28 601.5,-1828.28 599.4,-1834.28 603.6,-1834.28"/>
</g>
<!-- modules/core/src/lib/Logger.ts->modules/core/src/lib/interfaces/logger.ts -->
<g id="edge15" class="edge">
<title>modules/core/src/lib/Logger.ts->modules/core/src/lib/interfaces/logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M560.36,-1896C578.18,-1896 597.5,-1896 597.5,-1896 597.5,-1896 597.5,-2021.75 597.5,-2021.75"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="595.4,-2021.75 597.5,-2027.75 599.6,-2021.75 595.4,-2021.75"/>
</g>
<!-- modules/core/src/lib/Logger.ts->modules/core/src/lib/util/index.ts -->
<g id="edge16" class="edge">
<title>modules/core/src/lib/Logger.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M547.5,-1902.25C547.5,-1902.25 547.5,-1925.77 547.5,-1925.77"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="545.4,-1925.77 547.5,-1931.77 549.6,-1925.77 545.4,-1925.77"/>
</g>
<!-- modules/core/src/lib/LogHistory.ts -->
<g id="node12" class="node">
<title>modules/core/src/lib/LogHistory.ts</title>
<g id="a_node12"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/LogHistory.ts" xlink:title="LogHistory.ts">
<path fill="#ddfeff" stroke="black" d="M562,-2046C562,-2046 500,-2046 500,-2046 497,-2046 494,-2043 494,-2040 494,-2040 494,-2034 494,-2034 494,-2031 497,-2028 500,-2028 500,-2028 562,-2028 562,-2028 565,-2028 568,-2031 568,-2034 568,-2034 568,-2040 568,-2040 568,-2043 565,-2046 562,-2046"/>
<text text-anchor="start" x="502" y="-2034.8" font-family="Helvetica,sans-Serif" font-size="9.00">LogHistory.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/LogHistory.ts->modules/core/src/lib/defs.ts -->
<g id="edge9" class="edge">
<title>modules/core/src/lib/LogHistory.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M568.15,-2037C576.28,-2037 582.5,-2037 582.5,-2037 582.5,-2037 582.5,-1815.14 582.5,-1815.14 582.5,-1815.14 586.22,-1815.14 586.22,-1815.14"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="586.22,-1817.24 592.22,-1815.14 586.22,-1813.04 586.22,-1817.24"/>
</g>
<!-- modules/core/src/lib/LogHistory.ts->modules/core/src/lib/interfaces/logger.ts -->
<g id="edge10" class="edge">
<title>modules/core/src/lib/LogHistory.ts->modules/core/src/lib/interfaces/logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M568.02,-2041.5C568.02,-2041.5 585.25,-2041.5 585.25,-2041.5"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="585.25,-2043.6 591.25,-2041.5 585.25,-2039.4 585.25,-2043.6"/>
</g>
<!-- modules/core/src/lib/Logger.test.ts -->
<g id="node13" class="node">
<title>modules/core/src/lib/Logger.test.ts</title>
<g id="a_node13"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/Logger.test.ts" xlink:title="Logger.test.ts">
<path fill="#ddfeff" stroke="black" d="M313,-1882C313,-1882 247,-1882 247,-1882 244,-1882 241,-1879 241,-1876 241,-1876 241,-1870 241,-1870 241,-1867 244,-1864 247,-1864 247,-1864 313,-1864 313,-1864 316,-1864 319,-1867 319,-1870 319,-1870 319,-1876 319,-1876 319,-1879 316,-1882 313,-1882"/>
<text text-anchor="start" x="249" y="-1870.8" font-family="Helvetica,sans-Serif" font-size="9.00">Logger.test.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/Logger.test.ts->modules/core/src/lib/interfaces/logger.ts -->
<g id="edge11" class="edge">
<title>modules/core/src/lib/Logger.test.ts->modules/core/src/lib/interfaces/logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M319.14,-1877C398.85,-1877 572.5,-1877 572.5,-1877 572.5,-1877 572.5,-2032.5 572.5,-2032.5 572.5,-2032.5 585.35,-2032.5 585.35,-2032.5"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="585.35,-2034.6 591.35,-2032.5 585.35,-2030.4 585.35,-2034.6"/>
</g>
<!-- modules/core/src/lib/Logger.test.ts->modules/core/src/lib/Logger.ts -->
<g id="edge12" class="edge">
<title>modules/core/src/lib/Logger.test.ts->modules/core/src/lib/Logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M315.5,-1882.06C315.5,-1887.36 315.5,-1893 315.5,-1893 315.5,-1893 495.94,-1893 495.94,-1893"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="495.94,-1895.1 501.94,-1893 495.94,-1890.9 495.94,-1895.1"/>
</g>
<!-- modules/core/src/lib/test/lib.ts -->
<g id="node14" class="node">
<title>modules/core/src/lib/test/lib.ts</title>
<g id="a_node14"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/test/lib.ts" xlink:title="lib.ts">
<path fill="#ddfeff" stroke="black" d="M430.5,-1760C430.5,-1760 388.5,-1760 388.5,-1760 385.5,-1760 382.5,-1757 382.5,-1754 382.5,-1754 382.5,-1748 382.5,-1748 382.5,-1745 385.5,-1742 388.5,-1742 388.5,-1742 430.5,-1742 430.5,-1742 433.5,-1742 436.5,-1745 436.5,-1748 436.5,-1748 436.5,-1754 436.5,-1754 436.5,-1757 433.5,-1760 430.5,-1760"/>
<text text-anchor="start" x="398.5" y="-1748.8" font-family="Helvetica,sans-Serif" font-size="9.00">lib.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/Logger.test.ts->modules/core/src/lib/test/lib.ts -->
<g id="edge13" class="edge">
<title>modules/core/src/lib/Logger.test.ts->modules/core/src/lib/test/lib.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M319.05,-1868C334.44,-1868 348.5,-1868 348.5,-1868 348.5,-1868 348.5,-1756.57 348.5,-1756.57 348.5,-1756.57 376.21,-1756.57 376.21,-1756.57"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="376.21,-1758.67 382.21,-1756.57 376.21,-1754.47 376.21,-1758.67"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/defs.ts -->
<g id="edge59" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.88,-1748C490.36,-1748 603.5,-1748 603.5,-1748 603.5,-1748 603.5,-1803.72 603.5,-1803.72"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="601.4,-1803.72 603.5,-1809.72 605.6,-1803.72 601.4,-1803.72"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/Logger.ts -->
<g id="edge60" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/Logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.77,-1752C456.06,-1752 478.5,-1752 478.5,-1752 478.5,-1752 478.5,-1888.5 478.5,-1888.5 478.5,-1888.5 495.99,-1888.5 495.99,-1888.5"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="495.99,-1890.6 501.99,-1888.5 495.99,-1886.4 495.99,-1890.6"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/util/index.ts -->
<g id="edge65" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.58,-1754C453.66,-1754 472.5,-1754 472.5,-1754 472.5,-1754 472.5,-1938.55 472.5,-1938.55 472.5,-1938.55 497.81,-1938.55 497.81,-1938.55"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="497.81,-1940.65 503.81,-1938.55 497.81,-1936.45 497.81,-1940.65"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/Timer.ts -->
<g id="edge62" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/Timer.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.63,-1746C513.04,-1746 724.5,-1746 724.5,-1746 724.5,-1746 724.5,-1803.75 724.5,-1803.75"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="722.4,-1803.75 724.5,-1809.75 726.6,-1803.75 722.4,-1803.75"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/contexts.ts -->
<g id="edge58" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/contexts.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.74,-1744C510.84,-1744 710.5,-1744 710.5,-1744 710.5,-1744 710.5,-1584.41 710.5,-1584.41"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="712.6,-1584.41 710.5,-1578.41 708.4,-1584.41 712.6,-1584.41"/>
</g>
<!-- modules/core/src/lib/features.ts -->
<g id="node22" class="node">
<title>modules/core/src/lib/features.ts</title>
<g id="a_node22"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/features.ts" xlink:title="features.ts">
<path fill="#ddfeff" stroke="black" d="M557.5,-1828C557.5,-1828 504.5,-1828 504.5,-1828 501.5,-1828 498.5,-1825 498.5,-1822 498.5,-1822 498.5,-1816 498.5,-1816 498.5,-1813 501.5,-1810 504.5,-1810 504.5,-1810 557.5,-1810 557.5,-1810 560.5,-1810 563.5,-1813 563.5,-1816 563.5,-1816 563.5,-1822 563.5,-1822 563.5,-1825 560.5,-1828 557.5,-1828"/>
<text text-anchor="start" x="506.5" y="-1816.8" font-family="Helvetica,sans-Serif" font-size="9.00">features.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/features.ts -->
<g id="edge64" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/features.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.57,-1750C470,-1750 522.5,-1750 522.5,-1750 522.5,-1750 522.5,-1803.98 522.5,-1803.98"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="520.4,-1803.98 522.5,-1809.98 524.6,-1803.98 520.4,-1803.98"/>
</g>
<!-- modules/core/src/lib/resolver-features.ts -->
<g id="node23" class="node">
<title>modules/core/src/lib/resolver-features.ts</title>
<g id="a_node23"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/resolver-features.ts" xlink:title="resolver-features.ts">
<path fill="#ddfeff" stroke="black" d="M454.5,-1832C454.5,-1832 364.5,-1832 364.5,-1832 361.5,-1832 358.5,-1829 358.5,-1826 358.5,-1826 358.5,-1820 358.5,-1820 358.5,-1817 361.5,-1814 364.5,-1814 364.5,-1814 454.5,-1814 454.5,-1814 457.5,-1814 460.5,-1817 460.5,-1820 460.5,-1820 460.5,-1826 460.5,-1826 460.5,-1829 457.5,-1832 454.5,-1832"/>
<text text-anchor="start" x="366.5" y="-1820.8" font-family="Helvetica,sans-Serif" font-size="9.00">resolver-features.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/resolver-features.ts -->
<g id="edge61" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/resolver-features.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M415.5,-1760.12C415.5,-1760.12 415.5,-1799.93 415.5,-1799.93"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="413.4,-1807.73 415.5,-1813.73 417.6,-1807.73 413.4,-1807.73"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="415.5,-1807.73 415.5,-1804.73 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="415.5" cy="-1802.33" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/phases/Resolver.ts -->
<g id="node25" class="node">
<title>modules/core/src/phases/Resolver.ts</title>
<g id="a_node25"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/phases/Resolver.ts" xlink:title="Resolver.ts">
<path fill="#ddfeff" stroke="black" d="M436,-2176C436,-2176 383,-2176 383,-2176 380,-2176 377,-2173 377,-2170 377,-2170 377,-2164 377,-2164 377,-2161 380,-2158 383,-2158 383,-2158 436,-2158 436,-2158 439,-2158 442,-2161 442,-2164 442,-2164 442,-2170 442,-2170 442,-2173 439,-2176 436,-2176"/>
<text text-anchor="start" x="385" y="-2164.8" font-family="Helvetica,sans-Serif" font-size="9.00">Resolver.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/phases/Resolver.ts -->
<g id="edge56" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/phases/Resolver.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.66,-1756C451.35,-1756 466.5,-1756 466.5,-1756 466.5,-1756 466.5,-2160.57 466.5,-2160.57 466.5,-2160.57 448.33,-2160.57 448.33,-2160.57"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="448.33,-2158.47 442.33,-2160.57 448.33,-2162.67 448.33,-2158.47"/>
</g>
<!-- modules/core/src/runner.ts -->
<g id="node32" class="node">
<title>modules/core/src/runner.ts</title>
<g id="a_node32"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/runner.ts" xlink:title="runner.ts">
<path fill="#ddfeff" stroke="black" d="M303,-2142C303,-2142 257,-2142 257,-2142 254,-2142 251,-2139 251,-2136 251,-2136 251,-2130 251,-2130 251,-2127 254,-2124 257,-2124 257,-2124 303,-2124 303,-2124 306,-2124 309,-2127 309,-2130 309,-2130 309,-2136 309,-2136 309,-2139 306,-2142 303,-2142"/>
<text text-anchor="start" x="259" y="-2130.8" font-family="Helvetica,sans-Serif" font-size="9.00">runner.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/runner.ts -->
<g id="edge57" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/runner.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.68,-1758C450.53,-1758 464.5,-1758 464.5,-1758 464.5,-1758 464.5,-2128 464.5,-2128 464.5,-2128 315.23,-2128 315.23,-2128"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="315.23,-2125.9 309.23,-2128 315.23,-2130.1 315.23,-2125.9"/>
</g>
<!-- modules/core/src/lib/util/workspace-lib.ts -->
<g id="node33" class="node">
<title>modules/core/src/lib/util/workspace-lib.ts</title>
<g id="a_node33"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/util/workspace-lib.ts" xlink:title="workspace-lib.ts">
<path fill="#ddfeff" stroke="black" d="M448,-1976C448,-1976 371,-1976 371,-1976 368,-1976 365,-1973 365,-1970 365,-1970 365,-1964 365,-1964 365,-1961 368,-1958 371,-1958 371,-1958 448,-1958 448,-1958 451,-1958 454,-1961 454,-1964 454,-1964 454,-1970 454,-1970 454,-1973 451,-1976 448,-1976"/>
<text text-anchor="start" x="373" y="-1964.8" font-family="Helvetica,sans-Serif" font-size="9.00">workspace-lib.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/util/workspace-lib.ts -->
<g id="edge63" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/util/workspace-lib.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M382.48,-1758.29C368.16,-1758.29 353.5,-1758.29 353.5,-1758.29 353.5,-1758.29 353.5,-1964.33 353.5,-1964.33 353.5,-1964.33 358.83,-1964.33 358.83,-1964.33"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="358.83,-1966.43 364.83,-1964.33 358.83,-1962.23 358.83,-1966.43"/>
</g>
<!-- modules/core/src/lib/util/index.ts->modules/core/src/lib/defs.ts -->
<g id="edge66" class="edge">
<title>modules/core/src/lib/util/index.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M558.01,-1939.2C582.07,-1939.2 613.5,-1939.2 613.5,-1939.2 613.5,-1939.2 613.5,-1841.83 613.5,-1841.83"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="615.6,-1834.03 613.5,-1828.03 611.4,-1834.03 615.6,-1834.03"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="613.5,-1834.03 613.5,-1837.03 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="613.5" cy="-1839.43" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/util/index.ts->modules/core/src/lib/Timer.ts -->
<g id="edge67" class="edge">
<title>modules/core/src/lib/util/index.ts->modules/core/src/lib/Timer.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M558.26,-1948.2C608.48,-1948.2 710.5,-1948.2 710.5,-1948.2 710.5,-1948.2 710.5,-1834.29 710.5,-1834.29"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="712.6,-1834.29 710.5,-1828.29 708.4,-1834.29 712.6,-1834.29"/>
</g>
<!-- modules/core/src/lib/TestLogger.ts -->
<g id="node16" class="node">
<title>modules/core/src/lib/TestLogger.ts</title>
<g id="a_node16"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/TestLogger.ts" xlink:title="TestLogger.ts">
<path fill="#ddfeff" stroke="black" d="M562.5,-2076C562.5,-2076 499.5,-2076 499.5,-2076 496.5,-2076 493.5,-2073 493.5,-2070 493.5,-2070 493.5,-2064 493.5,-2064 493.5,-2061 496.5,-2058 499.5,-2058 499.5,-2058 562.5,-2058 562.5,-2058 565.5,-2058 568.5,-2061 568.5,-2064 568.5,-2064 568.5,-2070 568.5,-2070 568.5,-2073 565.5,-2076 562.5,-2076"/>
<text text-anchor="start" x="501.5" y="-2064.8" font-family="Helvetica,sans-Serif" font-size="9.00">TestLogger.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/TestLogger.ts->modules/core/src/lib/interfaces/logger.ts -->
<g id="edge17" class="edge">
<title>modules/core/src/lib/TestLogger.ts->modules/core/src/lib/interfaces/logger.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M568.89,-2067C589.36,-2067 610.5,-2067 610.5,-2067 610.5,-2067 610.5,-2052.16 610.5,-2052.16"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="612.6,-2052.16 610.5,-2046.16 608.4,-2052.16 612.6,-2052.16"/>
</g>
<!-- modules/core/src/lib/contexts.ts->modules/core/src/lib/defs.ts -->
<g id="edge18" class="edge">
<title>modules/core/src/lib/contexts.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M676.61,-1572C659.99,-1572 643.5,-1572 643.5,-1572 643.5,-1572 643.5,-1796.12 643.5,-1796.12"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="641.4,-1803.92 643.5,-1809.92 645.6,-1803.92 641.4,-1803.92"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="643.5,-1803.92 643.5,-1800.92 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="643.5" cy="-1798.52" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/domain-types.ts -->
<g id="node19" class="node">
<title>modules/core/src/lib/domain-types.ts</title>
<g id="a_node19"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/domain-types.ts" xlink:title="domain-types.ts">
<path fill="#ddfeff" stroke="black" d="M569.5,-1872C569.5,-1872 492.5,-1872 492.5,-1872 489.5,-1872 486.5,-1869 486.5,-1866 486.5,-1866 486.5,-1860 486.5,-1860 486.5,-1857 489.5,-1854 492.5,-1854 492.5,-1854 569.5,-1854 569.5,-1854 572.5,-1854 575.5,-1857 575.5,-1860 575.5,-1860 575.5,-1866 575.5,-1866 575.5,-1869 572.5,-1872 569.5,-1872"/>
<text text-anchor="start" x="494.5" y="-1860.8" font-family="Helvetica,sans-Serif" font-size="9.00">domain-types.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/features.test.ts -->
<g id="node20" class="node">
<title>modules/core/src/lib/features.test.ts</title>
<g id="a_node20"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/features.test.ts" xlink:title="features.test.ts">
<path fill="#ddfeff" stroke="black" d="M316.5,-1825C316.5,-1825 243.5,-1825 243.5,-1825 240.5,-1825 237.5,-1822 237.5,-1819 237.5,-1819 237.5,-1813 237.5,-1813 237.5,-1810 240.5,-1807 243.5,-1807 243.5,-1807 316.5,-1807 316.5,-1807 319.5,-1807 322.5,-1810 322.5,-1813 322.5,-1813 322.5,-1819 322.5,-1819 322.5,-1822 319.5,-1825 316.5,-1825"/>
<text text-anchor="start" x="245.5" y="-1813.8" font-family="Helvetica,sans-Serif" font-size="9.00">features.test.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/defs.ts -->
<g id="edge25" class="edge">
<title>modules/core/src/lib/features.test.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M315.5,-1806.71C315.5,-1799.04 315.5,-1789.43 315.5,-1789.43 315.5,-1789.43 599.5,-1789.43 599.5,-1789.43 599.5,-1789.43 599.5,-1803.97 599.5,-1803.97"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="597.4,-1803.97 599.5,-1809.97 601.6,-1803.97 597.4,-1803.97"/>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/test/lib.ts -->
<g id="edge28" class="edge">
<title>modules/core/src/lib/features.test.ts->modules/core/src/lib/test/lib.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M320.5,-1806.99C320.5,-1789.61 320.5,-1753.14 320.5,-1753.14 320.5,-1753.14 376.31,-1753.14 376.31,-1753.14"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="376.31,-1755.24 382.31,-1753.14 376.31,-1751.04 376.31,-1755.24"/>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/util/index.ts -->
<g id="edge29" class="edge">
<title>modules/core/src/lib/features.test.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M322.66,-1821.33C334.66,-1821.33 344.5,-1821.33 344.5,-1821.33 344.5,-1821.33 344.5,-1940.18 344.5,-1940.18 344.5,-1940.18 497.88,-1940.18 497.88,-1940.18"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="497.88,-1942.28 503.88,-1940.18 497.88,-1938.08 497.88,-1942.28"/>
</g>
<!-- modules/core/src/steps/vars.ts -->
<g id="node21" class="node">
<title>modules/core/src/steps/vars.ts</title>
<g id="a_node21"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/steps/vars.ts" xlink:title="vars.ts">
<path fill="#ddfeff" stroke="black" d="M430.5,-1454C430.5,-1454 388.5,-1454 388.5,-1454 385.5,-1454 382.5,-1451 382.5,-1448 382.5,-1448 382.5,-1442 382.5,-1442 382.5,-1439 385.5,-1436 388.5,-1436 388.5,-1436 430.5,-1436 430.5,-1436 433.5,-1436 436.5,-1439 436.5,-1442 436.5,-1442 436.5,-1448 436.5,-1448 436.5,-1451 433.5,-1454 430.5,-1454"/>
<text text-anchor="start" x="394" y="-1442.8" font-family="Helvetica,sans-Serif" font-size="9.00">vars.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/steps/vars.ts -->
<g id="edge24" class="edge">
<title>modules/core/src/lib/features.test.ts->modules/core/src/steps/vars.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M312.5,-1806.79C312.5,-1797.21 312.5,-1783.57 312.5,-1783.57 312.5,-1783.57 347.5,-1783.57 347.5,-1783.57 347.5,-1783.57 347.5,-1450.4 347.5,-1450.4 347.5,-1450.4 376.49,-1450.4 376.49,-1450.4"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="376.49,-1452.5 382.49,-1450.4 376.49,-1448.3 376.49,-1452.5"/>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/features.ts -->
<g id="edge26" class="edge">
<title>modules/core/src/lib/features.test.ts->modules/core/src/lib/features.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M317.5,-1806.61C317.5,-1801.13 317.5,-1795.29 317.5,-1795.29 317.5,-1795.29 513.5,-1795.29 513.5,-1795.29 513.5,-1795.29 513.5,-1803.9 513.5,-1803.9"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="511.4,-1803.9 513.5,-1809.9 515.6,-1803.9 511.4,-1803.9"/>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/resolver-features.ts -->
<g id="edge27" class="edge">
<title>modules/core/src/lib/features.test.ts->modules/core/src/lib/resolver-features.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M322.76,-1817.67C322.76,-1817.67 352.22,-1817.67 352.22,-1817.67"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="352.22,-1819.77 358.22,-1817.67 352.22,-1815.57 352.22,-1819.77"/>
</g>
<!-- modules/core/src/steps/vars.ts->modules/core/src/lib/defs.ts -->
<g id="edge134" class="edge">
<title>modules/core/src/steps/vars.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.54,-1449.5C494.72,-1449.5 626.5,-1449.5 626.5,-1449.5 626.5,-1449.5 626.5,-1803.87 626.5,-1803.87"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="624.4,-1803.87 626.5,-1809.87 628.6,-1803.87 624.4,-1803.87"/>
</g>
<!-- modules/core/src/steps/vars.ts->modules/core/src/lib/util/index.ts -->
<g id="edge135" class="edge">
<title>modules/core/src/steps/vars.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.73,-1445C501.52,-1445 659.5,-1445 659.5,-1445 659.5,-1445 659.5,-1944.6 659.5,-1944.6 659.5,-1944.6 564.25,-1944.6 564.25,-1944.6"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="564.25,-1942.5 558.25,-1944.6 564.25,-1946.7 564.25,-1942.5"/>
</g>
<!-- modules/core/src/steps/vars.ts->modules/core/src/lib/contexts.ts -->
<g id="edge133" class="edge">
<title>modules/core/src/steps/vars.ts->modules/core/src/lib/contexts.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M436.74,-1440.5C510.84,-1440.5 710.5,-1440.5 710.5,-1440.5 710.5,-1440.5 710.5,-1553.76 710.5,-1553.76"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="708.4,-1553.76 710.5,-1559.76 712.6,-1553.76 708.4,-1553.76"/>
</g>
<!-- modules/core/src/lib/features.ts->modules/core/src/lib/defs.ts -->
<g id="edge30" class="edge">
<title>modules/core/src/lib/features.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M563.7,-1812.57C563.7,-1812.57 586.44,-1812.57 586.44,-1812.57"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="586.44,-1814.67 592.44,-1812.57 586.44,-1810.47 586.44,-1814.67"/>
</g>
<!-- modules/core/src/lib/features.ts->modules/core/src/lib/util/index.ts -->
<g id="edge31" class="edge">
<title>modules/core/src/lib/features.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M563.73,-1825.43C571.96,-1825.43 578.5,-1825.43 578.5,-1825.43 578.5,-1825.43 578.5,-1933.8 578.5,-1933.8 578.5,-1933.8 564.08,-1933.8 564.08,-1933.8"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="564.08,-1931.7 558.08,-1933.8 564.08,-1935.9 564.08,-1931.7"/>
</g>
<!-- modules/core/src/lib/resolver-features.ts->modules/core/src/lib/defs.ts -->
<g id="edge45" class="edge">
<title>modules/core/src/lib/resolver-features.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M458.5,-1813.86C458.5,-1807.87 458.5,-1801.14 458.5,-1801.14 458.5,-1801.14 596.5,-1801.14 596.5,-1801.14 596.5,-1801.14 596.5,-1803.65 596.5,-1803.65"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="594.4,-1803.65 596.5,-1809.65 598.6,-1803.65 594.4,-1803.65"/>
</g>
<!-- modules/core/src/lib/resolver-features.ts->modules/core/src/lib/test/lib.ts -->
<g id="edge47" class="edge">
<title>modules/core/src/lib/resolver-features.ts->modules/core/src/lib/test/lib.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M426.5,-1813.88C426.5,-1813.88 426.5,-1774.07 426.5,-1774.07"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="428.6,-1766.27 426.5,-1760.27 424.4,-1766.27 428.6,-1766.27"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="426.5,-1766.27 426.5,-1769.27 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="426.5" cy="-1771.67" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/resolver-features.ts->modules/core/src/lib/features.ts -->
<g id="edge46" class="edge">
<title>modules/core/src/lib/resolver-features.ts->modules/core/src/lib/features.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M460.67,-1816.8C460.67,-1816.8 492.23,-1816.8 492.23,-1816.8"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="492.23,-1818.9 498.23,-1816.8 492.23,-1814.7 492.23,-1818.9"/>
</g>
<!-- modules/core/src/lib/namedVars.test.ts -->
<g id="node24" class="node">
<title>modules/core/src/lib/namedVars.test.ts</title>
<g id="a_node24"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/namedVars.test.ts" xlink:title="namedVars.test.ts">
<path fill="#ddfeff" stroke="black" d="M323,-1635C323,-1635 237,-1635 237,-1635 234,-1635 231,-1632 231,-1629 231,-1629 231,-1623 231,-1623 231,-1620 234,-1617 237,-1617 237,-1617 323,-1617 323,-1617 326,-1617 329,-1620 329,-1623 329,-1623 329,-1629 329,-1629 329,-1632 326,-1635 323,-1635"/>
<text text-anchor="start" x="239" y="-1623.8" font-family="Helvetica,sans-Serif" font-size="9.00">namedVars.test.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/defs.ts -->
<g id="edge35" class="edge">
<title>modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M324.5,-1635.09C324.5,-1638.12 324.5,-1640.75 324.5,-1640.75 324.5,-1640.75 616.5,-1640.75 616.5,-1640.75 616.5,-1640.75 616.5,-1803.92 616.5,-1803.92"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="614.4,-1803.92 616.5,-1809.92 618.6,-1803.92 614.4,-1803.92"/>
</g>
<!-- modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/test/lib.ts -->
<g id="edge39" class="edge">
<title>modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/test/lib.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M329.38,-1631.5C370.89,-1631.5 423.5,-1631.5 423.5,-1631.5 423.5,-1631.5 423.5,-1735.62 423.5,-1735.62"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="421.4,-1735.62 423.5,-1741.62 425.6,-1735.62 421.4,-1735.62"/>
</g>
<!-- modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/util/index.ts -->
<g id="edge40" class="edge">
<title>modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M230.94,-1626C220.48,-1626 212.5,-1626 212.5,-1626 212.5,-1626 212.5,-1926 212.5,-1926 212.5,-1926 526.5,-1926 526.5,-1926 526.5,-1926 526.5,-1926.58 526.5,-1926.58"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="524.4,-1925.76 526.5,-1931.76 528.6,-1925.76 524.4,-1925.76"/>
</g>
<!-- modules/core/src/lib/namedVars.test.ts->modules/core/src/steps/vars.ts -->
<g id="edge34" class="edge">
<title>modules/core/src/lib/namedVars.test.ts->modules/core/src/steps/vars.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M324.5,-1616.87C324.5,-1580.35 324.5,-1446.8 324.5,-1446.8 324.5,-1446.8 376.14,-1446.8 376.14,-1446.8"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="376.14,-1448.9 382.14,-1446.8 376.14,-1444.7 376.14,-1448.9"/>
</g>
<!-- modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/features.ts -->
<g id="edge36" class="edge">
<title>modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/features.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M329.09,-1629.75C402.28,-1629.75 531.5,-1629.75 531.5,-1629.75 531.5,-1629.75 531.5,-1803.87 531.5,-1803.87"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="529.4,-1803.87 531.5,-1809.87 533.6,-1803.87 529.4,-1803.87"/>
</g>
<!-- modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/resolver-features.ts -->
<g id="edge38" class="edge">
<title>modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/resolver-features.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M329.15,-1633.25C347.74,-1633.25 364.5,-1633.25 364.5,-1633.25 364.5,-1633.25 364.5,-1807.85 364.5,-1807.85"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="362.4,-1807.85 364.5,-1813.85 366.6,-1807.85 362.4,-1807.85"/>
</g>
<!-- modules/core/src/lib/namedVars.test.ts->modules/core/src/phases/Resolver.ts -->
<g id="edge33" class="edge">
<title>modules/core/src/lib/namedVars.test.ts->modules/core/src/phases/Resolver.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M320.5,-1635.08C320.5,-1648.18 320.5,-1670.86 320.5,-1670.86 320.5,-1670.86 467.5,-1670.86 467.5,-1670.86 467.5,-1670.86 467.5,-2163.14 467.5,-2163.14 467.5,-2163.14 448.23,-2163.14 448.23,-2163.14"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="448.23,-2161.04 442.23,-2163.14 448.23,-2165.24 448.23,-2161.04"/>
</g>
<!-- modules/core/src/lib/namedVars.ts -->
<g id="node26" class="node">
<title>modules/core/src/lib/namedVars.ts</title>
<g id="a_node26"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/namedVars.ts" xlink:title="namedVars.ts">
<path fill="#ddfeff" stroke="black" d="M442.5,-1628C442.5,-1628 376.5,-1628 376.5,-1628 373.5,-1628 370.5,-1625 370.5,-1622 370.5,-1622 370.5,-1616 370.5,-1616 370.5,-1613 373.5,-1610 376.5,-1610 376.5,-1610 442.5,-1610 442.5,-1610 445.5,-1610 448.5,-1613 448.5,-1616 448.5,-1616 448.5,-1622 448.5,-1622 448.5,-1625 445.5,-1628 442.5,-1628"/>
<text text-anchor="start" x="378.5" y="-1616.8" font-family="Helvetica,sans-Serif" font-size="9.00">namedVars.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/namedVars.ts -->
<g id="edge37" class="edge">
<title>modules/core/src/lib/namedVars.test.ts->modules/core/src/lib/namedVars.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M329.33,-1622.5C329.33,-1622.5 364.37,-1622.5 364.37,-1622.5"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="364.37,-1624.6 370.37,-1622.5 364.37,-1620.4 364.37,-1624.6"/>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/lib/defs.ts -->
<g id="edge93" class="edge">
<title>modules/core/src/phases/Resolver.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M442.18,-2170.86C462.39,-2170.86 484.5,-2170.86 484.5,-2170.86 484.5,-2170.86 484.5,-2007.5 484.5,-2007.5 484.5,-2007.5 626.5,-2007.5 626.5,-2007.5 626.5,-2007.5 626.5,-1834.09 626.5,-1834.09"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="628.6,-1834.09 626.5,-1828.09 624.4,-1834.09 628.6,-1834.09"/>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/lib/util/index.ts -->
<g id="edge96" class="edge">
<title>modules/core/src/phases/Resolver.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M442.16,-2168.29C461.59,-2168.29 482.5,-2168.29 482.5,-2168.29 482.5,-2168.29 482.5,-1945.09 482.5,-1945.09 482.5,-1945.09 497.91,-1945.09 497.91,-1945.09"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="497.91,-1947.19 503.91,-1945.09 497.91,-1942.99 497.91,-1947.19"/>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/lib/domain-types.ts -->
<g id="edge94" class="edge">
<title>modules/core/src/phases/Resolver.ts->modules/core/src/lib/domain-types.ts</title>
<path fill="none" stroke="blue" stroke-width="2" stroke-dasharray="5,2" d="M442.45,-2173.43C464.87,-2173.43 490.5,-2173.43 490.5,-2173.43 490.5,-2173.43 490.5,-1878.29 490.5,-1878.29"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="492.6,-1878.29 490.5,-1872.29 488.4,-1878.29 492.6,-1878.29"/>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/lib/namedVars.ts -->
<g id="edge95" class="edge">
<title>modules/core/src/phases/Resolver.ts->modules/core/src/lib/namedVars.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M442.31,-2165.71C456.32,-2165.71 469.5,-2165.71 469.5,-2165.71 469.5,-2165.71 469.5,-1625 469.5,-1625 469.5,-1625 454.51,-1625 454.51,-1625"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="454.51,-1622.9 448.51,-1625 454.51,-1627.1 454.51,-1622.9"/>
</g>
<!-- modules/core/src/lib/namedVars.ts->modules/core/src/lib/defs.ts -->
<g id="edge42" class="edge">
<title>modules/core/src/lib/namedVars.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M448.51,-1613C509.24,-1613 619.5,-1613 619.5,-1613 619.5,-1613 619.5,-1803.88 619.5,-1803.88"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="617.4,-1803.88 619.5,-1809.88 621.6,-1803.88 617.4,-1803.88"/>
</g>
<!-- modules/core/src/lib/namedVars.ts->modules/core/src/lib/util/index.ts -->
<g id="edge44" class="edge">
<title>modules/core/src/lib/namedVars.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M448.73,-1616C499.22,-1616 580.5,-1616 580.5,-1616 580.5,-1616 580.5,-1935.6 580.5,-1935.6 580.5,-1935.6 564.07,-1935.6 564.07,-1935.6"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="564.07,-1933.5 558.07,-1935.6 564.07,-1937.7 564.07,-1933.5"/>
</g>
<!-- modules/core/src/lib/namedVars.ts->modules/core/src/lib/domain-types.ts -->
<g id="edge43" class="edge">
<title>modules/core/src/lib/namedVars.ts->modules/core/src/lib/domain-types.ts</title>
<path fill="none" stroke="blue" stroke-width="2" stroke-dasharray="5,2" d="M448.57,-1619C470.1,-1619 492.5,-1619 492.5,-1619 492.5,-1619 492.5,-1847.73 492.5,-1847.73"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="490.4,-1847.73 492.5,-1853.73 494.6,-1847.73 490.4,-1847.73"/>
</g>
<!-- modules/core/src/steps/credentials.ts -->
<g id="node27" class="node">
<title>modules/core/src/steps/credentials.ts</title>
<g id="a_node27"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/steps/credentials.ts" xlink:title="credentials.ts">
<path fill="#ddfeff" stroke="black" d="M312.5,-1419C312.5,-1419 247.5,-1419 247.5,-1419 244.5,-1419 241.5,-1416 241.5,-1413 241.5,-1413 241.5,-1407 241.5,-1407 241.5,-1404 244.5,-1401 247.5,-1401 247.5,-1401 312.5,-1401 312.5,-1401 315.5,-1401 318.5,-1404 318.5,-1407 318.5,-1407 318.5,-1413 318.5,-1413 318.5,-1416 315.5,-1419 312.5,-1419"/>
<text text-anchor="start" x="249.5" y="-1407.8" font-family="Helvetica,sans-Serif" font-size="9.00">credentials.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/namedVars.ts->modules/core/src/steps/credentials.ts -->
<g id="edge41" class="edge">
<title>modules/core/src/lib/namedVars.ts->modules/core/src/steps/credentials.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M370.42,-1612.33C364.59,-1612.33 360.5,-1612.33 360.5,-1612.33 360.5,-1612.33 360.5,-1412.5 360.5,-1412.5 360.5,-1412.5 324.84,-1412.5 324.84,-1412.5"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="324.84,-1410.4 318.84,-1412.5 324.84,-1414.6 324.84,-1410.4"/>
</g>
<!-- modules/core/src/steps/credentials.ts->modules/core/src/lib/defs.ts -->
<g id="edge117" class="edge">
<title>modules/core/src/steps/credentials.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M280.5,-1419.06C280.5,-1424.36 280.5,-1430 280.5,-1430 280.5,-1430 630.5,-1430 630.5,-1430 630.5,-1430 630.5,-1803.77 630.5,-1803.77"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="628.4,-1803.77 630.5,-1809.77 632.6,-1803.77 628.4,-1803.77"/>
</g>
<!-- modules/core/src/lib/test/SetTimeStepper.ts -->
<g id="node28" class="node">
<title>modules/core/src/lib/test/SetTimeStepper.ts</title>
<g id="a_node28"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/test/SetTimeStepper.ts" xlink:title="SetTimeStepper.ts">
<path fill="#ddfeff" stroke="black" d="M324,-1706C324,-1706 236,-1706 236,-1706 233,-1706 230,-1703 230,-1700 230,-1700 230,-1694 230,-1694 230,-1691 233,-1688 236,-1688 236,-1688 324,-1688 324,-1688 327,-1688 330,-1691 330,-1694 330,-1694 330,-1700 330,-1700 330,-1703 327,-1706 324,-1706"/>
<text text-anchor="start" x="238" y="-1694.8" font-family="Helvetica,sans-Serif" font-size="9.00">SetTimeStepper.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/SetTimeStepper.ts->modules/core/src/lib/defs.ts -->
<g id="edge48" class="edge">
<title>modules/core/src/lib/test/SetTimeStepper.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M330.04,-1697C422.22,-1697 609.5,-1697 609.5,-1697 609.5,-1697 609.5,-1803.83 609.5,-1803.83"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="607.4,-1803.83 609.5,-1809.83 611.6,-1803.83 607.4,-1803.83"/>
</g>
<!-- modules/core/src/lib/test/TestSteps.ts -->
<g id="node29" class="node">
<title>modules/core/src/lib/test/TestSteps.ts</title>
<g id="a_node29"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/test/TestSteps.ts" xlink:title="TestSteps.ts">
<path fill="#ddfeff" stroke="black" d="M309.5,-1676C309.5,-1676 250.5,-1676 250.5,-1676 247.5,-1676 244.5,-1673 244.5,-1670 244.5,-1670 244.5,-1664 244.5,-1664 244.5,-1661 247.5,-1658 250.5,-1658 250.5,-1658 309.5,-1658 309.5,-1658 312.5,-1658 315.5,-1661 315.5,-1664 315.5,-1664 315.5,-1670 315.5,-1670 315.5,-1673 312.5,-1676 309.5,-1676"/>
<text text-anchor="start" x="252.5" y="-1664.8" font-family="Helvetica,sans-Serif" font-size="9.00">TestSteps.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/TestSteps.ts->modules/core/src/lib/defs.ts -->
<g id="edge50" class="edge">
<title>modules/core/src/lib/test/TestSteps.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M315.69,-1668.29C401.72,-1668.29 613.5,-1668.29 613.5,-1668.29 613.5,-1668.29 613.5,-1803.57 613.5,-1803.57"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="611.4,-1803.57 613.5,-1809.57 615.6,-1803.57 611.4,-1803.57"/>