-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathdependency-graph.html
2811 lines (2762 loc) · 211 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="859pt" height="3024pt"
viewBox="0.00 0.00 858.50 3024.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 3020)">
<title>dependency-cruiser output</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-3020 854.5,-3020 854.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 830.5,-8 830.5,-8 836.5,-8 842.5,-14 842.5,-20 842.5,-20 842.5,-2996 842.5,-2996 842.5,-3002 836.5,-3008 830.5,-3008 830.5,-3008 20,-3008 20,-3008 14,-3008 8,-3002 8,-2996 8,-2996 8,-20 8,-20 8,-14 14,-8 20,-8"/>
<text text-anchor="middle" x="425.25" y="-2996.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,-2866C79,-2866 475,-2866 475,-2866 481,-2866 487,-2872 487,-2878 487,-2878 487,-2970 487,-2970 487,-2976 481,-2982 475,-2982 475,-2982 79,-2982 79,-2982 73,-2982 67,-2976 67,-2970 67,-2970 67,-2878 67,-2878 67,-2872 73,-2866 79,-2866"/>
<text text-anchor="middle" x="277" y="-2970.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,-2874C87,-2874 467,-2874 467,-2874 473,-2874 479,-2880 479,-2886 479,-2886 479,-2944 479,-2944 479,-2950 473,-2956 467,-2956 467,-2956 87,-2956 87,-2956 81,-2956 75,-2950 75,-2944 75,-2944 75,-2886 75,-2886 75,-2880 81,-2874 87,-2874"/>
<text text-anchor="middle" x="277" y="-2944.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust4" class="cluster">
<title>cluster_modules/context</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M67,-2742C67,-2742 158,-2742 158,-2742 164,-2742 170,-2748 170,-2754 170,-2754 170,-2846 170,-2846 170,-2852 164,-2858 158,-2858 158,-2858 67,-2858 67,-2858 61,-2858 55,-2852 55,-2846 55,-2846 55,-2754 55,-2754 55,-2748 61,-2742 67,-2742"/>
<text text-anchor="middle" x="112.5" y="-2846.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">context</text>
</g>
<g id="clust5" class="cluster">
<title>cluster_modules/context/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M75,-2750C75,-2750 150,-2750 150,-2750 156,-2750 162,-2756 162,-2762 162,-2762 162,-2820 162,-2820 162,-2826 156,-2832 150,-2832 150,-2832 75,-2832 75,-2832 69,-2832 63,-2826 63,-2820 63,-2820 63,-2762 63,-2762 63,-2756 69,-2750 75,-2750"/>
<text text-anchor="middle" x="112.5" y="-2820.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</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M60.5,-1404C60.5,-1404 822.5,-1404 822.5,-1404 828.5,-1404 834.5,-1410 834.5,-1416 834.5,-1416 834.5,-2722 834.5,-2722 834.5,-2728 828.5,-2734 822.5,-2734 822.5,-2734 60.5,-2734 60.5,-2734 54.5,-2734 48.5,-2728 48.5,-2722 48.5,-2722 48.5,-1416 48.5,-1416 48.5,-1410 54.5,-1404 60.5,-1404"/>
<text text-anchor="middle" x="441.5" y="-2722.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">core</text>
</g>
<g id="clust7" class="cluster">
<title>cluster_modules/core/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M68.5,-1412C68.5,-1412 814.5,-1412 814.5,-1412 820.5,-1412 826.5,-1418 826.5,-1424 826.5,-1424 826.5,-2696 826.5,-2696 826.5,-2702 820.5,-2708 814.5,-2708 814.5,-2708 68.5,-2708 68.5,-2708 62.5,-2708 56.5,-2702 56.5,-2696 56.5,-2696 56.5,-1424 56.5,-1424 56.5,-1418 62.5,-1412 68.5,-1412"/>
<text text-anchor="middle" x="441.5" y="-2696.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust8" class="cluster">
<title>cluster_modules/core/src/lib</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M84.5,-1446C84.5,-1446 801,-1446 801,-1446 807,-1446 813,-1452 813,-1458 813,-1458 813,-2232 813,-2232 813,-2238 807,-2244 801,-2244 801,-2244 84.5,-2244 84.5,-2244 78.5,-2244 72.5,-2238 72.5,-2232 72.5,-2232 72.5,-1458 72.5,-1458 72.5,-1452 78.5,-1446 84.5,-1446"/>
<text text-anchor="middle" x="442.75" y="-2232.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">lib</text>
</g>
<g id="clust9" class="cluster">
<title>cluster_modules/core/src/lib/interfaces</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M635,-2128C635,-2128 683,-2128 683,-2128 689,-2128 695,-2134 695,-2140 695,-2140 695,-2168 695,-2168 695,-2174 689,-2180 683,-2180 683,-2180 635,-2180 635,-2180 629,-2180 623,-2174 623,-2168 623,-2168 623,-2140 623,-2140 623,-2134 629,-2128 635,-2128"/>
<text text-anchor="middle" x="659" y="-2168.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">interfaces</text>
</g>
<g id="clust10" class="cluster">
<title>cluster_modules/core/src/lib/test</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M213,-1762C213,-1762 452.5,-1762 452.5,-1762 458.5,-1762 464.5,-1768 464.5,-1774 464.5,-1774 464.5,-1922 464.5,-1922 464.5,-1928 458.5,-1934 452.5,-1934 452.5,-1934 213,-1934 213,-1934 207,-1934 201,-1928 201,-1922 201,-1922 201,-1774 201,-1774 201,-1768 207,-1762 213,-1762"/>
<text text-anchor="middle" x="332.75" y="-1922.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">test</text>
</g>
<g id="clust11" class="cluster">
<title>cluster_modules/core/src/lib/util</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M378.5,-1576C378.5,-1576 682,-1576 682,-1576 688,-1576 694,-1582 694,-1588 694,-1588 694,-1676 694,-1676 694,-1682 688,-1688 682,-1688 682,-1688 378.5,-1688 378.5,-1688 372.5,-1688 366.5,-1682 366.5,-1676 366.5,-1676 366.5,-1588 366.5,-1588 366.5,-1582 372.5,-1576 378.5,-1576"/>
<text text-anchor="middle" x="530.25" y="-1676.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">util</text>
</g>
<g id="clust12" class="cluster">
<title>cluster_modules/core/src/phases</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M213,-2318C213,-2318 581,-2318 581,-2318 587,-2318 593,-2324 593,-2330 593,-2330 593,-2448 593,-2448 593,-2454 587,-2460 581,-2460 581,-2460 213,-2460 213,-2460 207,-2460 201,-2454 201,-2448 201,-2448 201,-2330 201,-2330 201,-2324 207,-2318 213,-2318"/>
<text text-anchor="middle" x="397" y="-2448.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">phases</text>
</g>
<g id="clust13" class="cluster">
<title>cluster_modules/core/src/steps</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M76.5,-2510C76.5,-2510 311.5,-2510 311.5,-2510 317.5,-2510 323.5,-2516 323.5,-2522 323.5,-2522 323.5,-2670 323.5,-2670 323.5,-2676 317.5,-2682 311.5,-2682 311.5,-2682 76.5,-2682 76.5,-2682 70.5,-2682 64.5,-2676 64.5,-2670 64.5,-2670 64.5,-2522 64.5,-2522 64.5,-2516 70.5,-2510 76.5,-2510"/>
<text text-anchor="middle" x="194" y="-2670.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">steps</text>
</g>
<g id="clust14" class="cluster">
<title>cluster_modules/core/src/steps/lib</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M249,-2578C249,-2578 295,-2578 295,-2578 301,-2578 307,-2584 307,-2590 307,-2590 307,-2618 307,-2618 307,-2624 301,-2630 295,-2630 295,-2630 249,-2630 249,-2630 243,-2630 237,-2624 237,-2618 237,-2618 237,-2590 237,-2590 237,-2584 243,-2578 249,-2578"/>
<text text-anchor="middle" x="272" y="-2618.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">lib</text>
</g>
<g id="clust15" class="cluster">
<title>cluster_modules/domain-storage</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M366,-1164C366,-1164 704.5,-1164 704.5,-1164 710.5,-1164 716.5,-1170 716.5,-1176 716.5,-1176 716.5,-1294 716.5,-1294 716.5,-1300 710.5,-1306 704.5,-1306 704.5,-1306 366,-1306 366,-1306 360,-1306 354,-1300 354,-1294 354,-1294 354,-1176 354,-1176 354,-1170 360,-1164 366,-1164"/>
<text text-anchor="middle" x="535.25" y="-1294.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">domain-storage</text>
</g>
<g id="clust16" class="cluster">
<title>cluster_modules/domain-storage/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M374,-1198C374,-1198 696.5,-1198 696.5,-1198 702.5,-1198 708.5,-1204 708.5,-1210 708.5,-1210 708.5,-1268 708.5,-1268 708.5,-1274 702.5,-1280 696.5,-1280 696.5,-1280 374,-1280 374,-1280 368,-1280 362,-1274 362,-1268 362,-1268 362,-1210 362,-1210 362,-1204 368,-1198 374,-1198"/>
<text text-anchor="middle" x="535.25" y="-1268.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust17" class="cluster">
<title>cluster_modules/domain-webpage</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M45.5,-1280C45.5,-1280 329,-1280 329,-1280 335,-1280 341,-1286 341,-1292 341,-1292 341,-1384 341,-1384 341,-1390 335,-1396 329,-1396 329,-1396 45.5,-1396 45.5,-1396 39.5,-1396 33.5,-1390 33.5,-1384 33.5,-1384 33.5,-1292 33.5,-1292 33.5,-1286 39.5,-1280 45.5,-1280"/>
<text text-anchor="middle" x="187.25" y="-1384.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">domain-webpage</text>
</g>
<g id="clust18" class="cluster">
<title>cluster_modules/domain-webpage/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M53.5,-1288C53.5,-1288 321,-1288 321,-1288 327,-1288 333,-1294 333,-1300 333,-1300 333,-1358 333,-1358 333,-1364 327,-1370 321,-1370 321,-1370 53.5,-1370 53.5,-1370 47.5,-1370 41.5,-1364 41.5,-1358 41.5,-1358 41.5,-1300 41.5,-1300 41.5,-1294 47.5,-1288 53.5,-1288"/>
<text text-anchor="middle" x="187.25" y="-1358.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust19" class="cluster">
<title>cluster_modules/out-review</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M40,-1156C40,-1156 334,-1156 334,-1156 340,-1156 346,-1162 346,-1168 346,-1168 346,-1260 346,-1260 346,-1266 340,-1272 334,-1272 334,-1272 40,-1272 40,-1272 34,-1272 28,-1266 28,-1260 28,-1260 28,-1168 28,-1168 28,-1162 34,-1156 40,-1156"/>
<text text-anchor="middle" x="187" y="-1260.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">out-review</text>
</g>
<g id="clust20" class="cluster">
<title>cluster_modules/out-review/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M48,-1164C48,-1164 326,-1164 326,-1164 332,-1164 338,-1170 338,-1176 338,-1176 338,-1234 338,-1234 338,-1240 332,-1246 326,-1246 326,-1246 48,-1246 48,-1246 42,-1246 36,-1240 36,-1234 36,-1234 36,-1176 36,-1176 36,-1170 42,-1164 48,-1164"/>
<text text-anchor="middle" x="187" y="-1234.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust21" class="cluster">
<title>cluster_modules/out-xunit</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M64,-1062C64,-1062 310.5,-1062 310.5,-1062 316.5,-1062 322.5,-1068 322.5,-1074 322.5,-1074 322.5,-1136 322.5,-1136 322.5,-1142 316.5,-1148 310.5,-1148 310.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="187.25" y="-1136.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">out-xunit</text>
</g>
<g id="clust22" class="cluster">
<title>cluster_modules/out-xunit/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M72,-1070C72,-1070 302.5,-1070 302.5,-1070 308.5,-1070 314.5,-1076 314.5,-1082 314.5,-1082 314.5,-1110 314.5,-1110 314.5,-1116 308.5,-1122 302.5,-1122 302.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="187.25" y="-1110.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust23" class="cluster">
<title>cluster_modules/parse-md</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M72,-938C72,-938 303,-938 303,-938 309,-938 315,-944 315,-950 315,-950 315,-1042 315,-1042 315,-1048 309,-1054 303,-1054 303,-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="187.5" y="-1042.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">parse-md</text>
</g>
<g id="clust24" class="cluster">
<title>cluster_modules/parse-md/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M80,-946C80,-946 295,-946 295,-946 301,-946 307,-952 307,-958 307,-958 307,-1016 307,-1016 307,-1022 301,-1028 295,-1028 295,-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="187.5" y="-1016.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust25" class="cluster">
<title>cluster_modules/storage-fs</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M62.5,-818C62.5,-818 312,-818 312,-818 318,-818 324,-824 324,-830 324,-830 324,-918 324,-918 324,-924 318,-930 312,-930 312,-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="187.25" y="-918.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">storage-fs</text>
</g>
<g id="clust26" class="cluster">
<title>cluster_modules/storage-fs/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M70.5,-852C70.5,-852 304,-852 304,-852 310,-852 316,-858 316,-864 316,-864 316,-892 316,-892 316,-898 310,-904 304,-904 304,-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="187.25" y="-892.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust27" class="cluster">
<title>cluster_modules/storage-mem</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M54.5,-698C54.5,-698 320,-698 320,-698 326,-698 332,-704 332,-710 332,-710 332,-798 332,-798 332,-804 326,-810 320,-810 320,-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="187.25" y="-798.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">storage-mem</text>
</g>
<g id="clust28" class="cluster">
<title>cluster_modules/storage-mem/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M62.5,-732C62.5,-732 312,-732 312,-732 318,-732 324,-738 324,-744 324,-744 324,-772 324,-772 324,-778 318,-784 312,-784 312,-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="187.25" y="-772.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust29" class="cluster">
<title>cluster_modules/utils</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M55,-402C55,-402 315,-402 315,-402 321,-402 327,-408 327,-414 327,-414 327,-678 327,-678 327,-684 321,-690 315,-690 315,-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="185" y="-678.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">utils</text>
</g>
<g id="clust30" class="cluster">
<title>cluster_modules/utils/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M63,-436C63,-436 307,-436 307,-436 313,-436 319,-442 319,-448 319,-448 319,-652 319,-652 319,-658 313,-664 307,-664 307,-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="185" y="-652.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust31" class="cluster">
<title>cluster_modules/utils/src/scaffold</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M75,-556C75,-556 299,-556 299,-556 305,-556 311,-562 311,-568 311,-568 311,-626 311,-626 311,-632 305,-638 299,-638 299,-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="187" y="-626.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">scaffold</text>
</g>
<g id="clust32" class="cluster">
<title>cluster_modules/utils/src/util</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M85.5,-470C85.5,-470 295,-470 295,-470 301,-470 307,-476 307,-482 307,-482 307,-510 307,-510 307,-516 301,-522 295,-522 295,-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="190.25" y="-510.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">util</text>
</g>
<g id="clust33" class="cluster">
<title>cluster_modules/web-http</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M64,-308C64,-308 310.5,-308 310.5,-308 316.5,-308 322.5,-314 322.5,-320 322.5,-320 322.5,-382 322.5,-382 322.5,-388 316.5,-394 310.5,-394 310.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="187.25" y="-382.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">web-http</text>
</g>
<g id="clust34" class="cluster">
<title>cluster_modules/web-http/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M72,-316C72,-316 302.5,-316 302.5,-316 308.5,-316 314.5,-322 314.5,-328 314.5,-328 314.5,-356 314.5,-356 314.5,-362 308.5,-368 302.5,-368 302.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="187.25" y="-356.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust35" class="cluster">
<title>cluster_modules/web-playwright</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M49.5,-154C49.5,-154 486.5,-154 486.5,-154 492.5,-154 498.5,-160 498.5,-166 498.5,-166 498.5,-288 498.5,-288 498.5,-294 492.5,-300 486.5,-300 486.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="268" y="-288.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">web-playwright</text>
</g>
<g id="clust36" class="cluster">
<title>cluster_modules/web-playwright/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M57.5,-162C57.5,-162 478.5,-162 478.5,-162 484.5,-162 490.5,-168 490.5,-174 490.5,-174 490.5,-262 490.5,-262 490.5,-268 484.5,-274 478.5,-274 478.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="268" y="-262.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">src</text>
</g>
<g id="clust37" class="cluster">
<title>cluster_modules/web-server-express</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M28,-16C28,-16 586.5,-16 586.5,-16 592.5,-16 598.5,-22 598.5,-28 598.5,-28 598.5,-134 598.5,-134 598.5,-140 592.5,-146 586.5,-146 586.5,-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="307.25" y="-134.8" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="9.00">web-server-express</text>
</g>
<g id="clust38" class="cluster">
<title>cluster_modules/web-server-express/src</title>
<path fill="#ffffff" stroke="black" stroke-width="2" d="M36,-24C36,-24 578.5,-24 578.5,-24 584.5,-24 590.5,-30 590.5,-36 590.5,-36 590.5,-108 590.5,-108 590.5,-114 584.5,-120 578.5,-120 578.5,-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="307.25" 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="M318,-2930C318,-2930 226,-2930 226,-2930 223,-2930 220,-2927 220,-2924 220,-2924 220,-2918 220,-2918 220,-2915 223,-2912 226,-2912 226,-2912 318,-2912 318,-2912 321,-2912 324,-2915 324,-2918 324,-2918 324,-2924 324,-2924 324,-2927 321,-2930 318,-2930"/>
<text text-anchor="start" x="228" y="-2918.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="M465,-2915C465,-2915 394,-2915 394,-2915 391,-2915 388,-2912 388,-2909 388,-2909 388,-2903 388,-2903 388,-2900 391,-2897 394,-2897 394,-2897 465,-2897 465,-2897 468,-2897 471,-2900 471,-2903 471,-2903 471,-2909 471,-2909 471,-2912 468,-2915 465,-2915"/>
<text text-anchor="start" x="396" y="-2903.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="M320.5,-2911.83C320.5,-2909.68 320.5,-2908 320.5,-2908 320.5,-2908 381.98,-2908 381.98,-2908"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="381.98,-2910.1 387.98,-2908 381.98,-2905.9 381.98,-2910.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,-2930C133.5,-2930 91.5,-2930 91.5,-2930 88.5,-2930 85.5,-2927 85.5,-2924 85.5,-2924 85.5,-2918 85.5,-2918 85.5,-2915 88.5,-2912 91.5,-2912 91.5,-2912 133.5,-2912 133.5,-2912 136.5,-2912 139.5,-2915 139.5,-2918 139.5,-2918 139.5,-2924 139.5,-2924 139.5,-2927 136.5,-2930 133.5,-2930"/>
<text text-anchor="start" x="101.5" y="-2918.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="M293,-2900C293,-2900 251,-2900 251,-2900 248,-2900 245,-2897 245,-2894 245,-2894 245,-2888 245,-2888 245,-2885 248,-2882 251,-2882 251,-2882 293,-2882 293,-2882 296,-2882 299,-2885 299,-2888 299,-2888 299,-2894 299,-2894 299,-2897 296,-2900 293,-2900"/>
<text text-anchor="start" x="261" y="-2888.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.51,-2921C156.22,-2921 174.5,-2921 174.5,-2921 174.5,-2921 174.5,-2894 174.5,-2894 174.5,-2894 238.84,-2894 238.84,-2894"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="238.84,-2896.1 244.84,-2894 238.84,-2891.9 238.84,-2896.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="M272.5,-2900.17C272.5,-2902.32 272.5,-2904 272.5,-2904 272.5,-2904 381.84,-2904 381.84,-2904"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="381.84,-2906.1 387.84,-2904 381.84,-2901.9 381.84,-2906.1"/>
</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,-2900C136,-2900 89,-2900 89,-2900 86,-2900 83,-2897 83,-2894 83,-2894 83,-2888 83,-2888 83,-2885 86,-2882 89,-2882 89,-2882 136,-2882 136,-2882 139,-2882 142,-2885 142,-2888 142,-2888 142,-2894 142,-2894 142,-2897 139,-2900 136,-2900"/>
<text text-anchor="start" x="91" y="-2888.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.13,-2888C142.13,-2888 238.92,-2888 238.92,-2888"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="238.92,-2890.1 244.92,-2888 238.92,-2885.9 238.92,-2890.1"/>
</g>
<!-- modules/context/src/Context.test.ts -->
<g id="node6" class="node">
<title>modules/context/src/Context.test.ts</title>
<g id="a_node6"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/context/src/Context.test.ts" xlink:title="Context.test.ts">
<path fill="#ccffcc" stroke="black" d="M148,-2806C148,-2806 77,-2806 77,-2806 74,-2806 71,-2803 71,-2800 71,-2800 71,-2794 71,-2794 71,-2791 74,-2788 77,-2788 77,-2788 148,-2788 148,-2788 151,-2788 154,-2791 154,-2794 154,-2794 154,-2800 154,-2800 154,-2803 151,-2806 148,-2806"/>
<text text-anchor="start" x="79" y="-2794.8" font-family="Helvetica,sans-Serif" font-size="9.00">Context.test.ts</text>
</a>
</g>
</g>
<!-- modules/context/src/Context.ts -->
<g id="node7" class="node">
<title>modules/context/src/Context.ts</title>
<g id="a_node7"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/context/src/Context.ts" xlink:title="Context.ts">
<path fill="#ccffcc" stroke="black" d="M138,-2776C138,-2776 87,-2776 87,-2776 84,-2776 81,-2773 81,-2770 81,-2770 81,-2764 81,-2764 81,-2761 84,-2758 87,-2758 87,-2758 138,-2758 138,-2758 141,-2758 144,-2761 144,-2764 144,-2764 144,-2770 144,-2770 144,-2773 141,-2776 138,-2776"/>
<text text-anchor="start" x="89" y="-2764.8" font-family="Helvetica,sans-Serif" font-size="9.00">Context.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/currentVersion.ts -->
<g id="node8" class="node">
<title>modules/core/src/currentVersion.ts</title>
<g id="a_node8"><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="M812.5,-1438C812.5,-1438 730.5,-1438 730.5,-1438 727.5,-1438 724.5,-1435 724.5,-1432 724.5,-1432 724.5,-1426 724.5,-1426 724.5,-1423 727.5,-1420 730.5,-1420 730.5,-1420 812.5,-1420 812.5,-1420 815.5,-1420 818.5,-1423 818.5,-1426 818.5,-1426 818.5,-1432 818.5,-1432 818.5,-1435 815.5,-1438 812.5,-1438"/>
<text text-anchor="start" x="732.5" y="-1426.8" font-family="Helvetica,sans-Serif" font-size="9.00">currentVersion.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/index.ts -->
<g id="node9" class="node">
<title>modules/core/src/index.ts</title>
<g id="a_node9"><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="M576.5,-2292C576.5,-2292 534.5,-2292 534.5,-2292 531.5,-2292 528.5,-2289 528.5,-2286 528.5,-2286 528.5,-2280 528.5,-2280 528.5,-2277 531.5,-2274 534.5,-2274 534.5,-2274 576.5,-2274 576.5,-2274 579.5,-2274 582.5,-2277 582.5,-2280 582.5,-2280 582.5,-2286 582.5,-2286 582.5,-2289 579.5,-2292 576.5,-2292"/>
<text text-anchor="start" x="537" y="-2280.8" font-family="Helvetica,sans-Serif" font-size="9.00">index.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/defs.ts -->
<g id="node10" class="node">
<title>modules/core/src/lib/defs.ts</title>
<g id="a_node10"><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="M680,-1984C680,-1984 638,-1984 638,-1984 635,-1984 632,-1981 632,-1978 632,-1978 632,-1972 632,-1972 632,-1969 635,-1966 638,-1966 638,-1966 680,-1966 680,-1966 683,-1966 686,-1969 686,-1972 686,-1972 686,-1978 686,-1978 686,-1981 683,-1984 680,-1984"/>
<text text-anchor="start" x="643.5" y="-1972.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="M582.79,-2283C599.03,-2283 616.5,-2283 616.5,-2283 616.5,-2283 616.5,-1976.77 616.5,-1976.77 616.5,-1976.77 625.84,-1976.77 625.84,-1976.77"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="625.84,-1978.87 631.84,-1976.77 625.84,-1974.67 625.84,-1978.87"/>
</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="M686.32,-1968.57C707.58,-1968.57 733.5,-1968.57 733.5,-1968.57 733.5,-1968.57 733.5,-1444.37 733.5,-1444.37"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="735.6,-1444.37 733.5,-1438.37 731.4,-1444.37 735.6,-1444.37"/>
</g>
<!-- modules/core/src/lib/interfaces/logger.ts -->
<g id="node12" class="node">
<title>modules/core/src/lib/interfaces/logger.ts</title>
<g id="a_node12"><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="M681,-2154C681,-2154 637,-2154 637,-2154 634,-2154 631,-2151 631,-2148 631,-2148 631,-2142 631,-2142 631,-2139 634,-2136 637,-2136 637,-2136 681,-2136 681,-2136 684,-2136 687,-2139 687,-2142 687,-2142 687,-2148 687,-2148 687,-2151 684,-2154 681,-2154"/>
<text text-anchor="start" x="639" y="-2142.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="edge22" 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="M669.5,-1984.14C669.5,-1984.14 669.5,-2122.01 669.5,-2122.01"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="667.4,-2129.81 669.5,-2135.81 671.6,-2129.81 667.4,-2129.81"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="669.5,-2129.81 669.5,-2126.81 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="669.5" cy="-2124.41" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/util/index.ts -->
<g id="node17" class="node">
<title>modules/core/src/lib/util/index.ts</title>
<g id="a_node17"><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="M680,-1662C680,-1662 638,-1662 638,-1662 635,-1662 632,-1659 632,-1656 632,-1656 632,-1650 632,-1650 632,-1647 635,-1644 638,-1644 638,-1644 680,-1644 680,-1644 683,-1644 686,-1647 686,-1650 686,-1650 686,-1656 686,-1656 686,-1659 683,-1662 680,-1662"/>
<text text-anchor="start" x="640.5" y="-1650.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="edge24" 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="M681.5,-1965.71C681.5,-1965.71 681.5,-1675.82 681.5,-1675.82"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="683.6,-1668.02 681.5,-1662.02 679.4,-1668.02 683.6,-1668.02"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="681.5,-1668.02 681.5,-1671.02 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="681.5" cy="-1673.42" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/Timer.ts -->
<g id="node19" class="node">
<title>modules/core/src/lib/Timer.ts</title>
<g id="a_node19"><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="M792.5,-1619C792.5,-1619 750.5,-1619 750.5,-1619 747.5,-1619 744.5,-1616 744.5,-1613 744.5,-1613 744.5,-1607 744.5,-1607 744.5,-1604 747.5,-1601 750.5,-1601 750.5,-1601 792.5,-1601 792.5,-1601 795.5,-1601 798.5,-1604 798.5,-1607 798.5,-1607 798.5,-1613 798.5,-1613 798.5,-1616 795.5,-1619 792.5,-1619"/>
<text text-anchor="start" x="753" y="-1607.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="edge23" 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="M686.04,-1969.86C723.47,-1969.86 786.5,-1969.86 786.5,-1969.86 786.5,-1969.86 786.5,-1625.26 786.5,-1625.26"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="788.6,-1625.26 786.5,-1619.26 784.4,-1625.26 788.6,-1625.26"/>
</g>
<!-- modules/core/src/lib/contexts.ts -->
<g id="node20" class="node">
<title>modules/core/src/lib/contexts.ts</title>
<g id="a_node20"><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="M799,-2099C799,-2099 744,-2099 744,-2099 741,-2099 738,-2096 738,-2093 738,-2093 738,-2087 738,-2087 738,-2084 741,-2081 744,-2081 744,-2081 799,-2081 799,-2081 802,-2081 805,-2084 805,-2087 805,-2087 805,-2093 805,-2093 805,-2096 802,-2099 799,-2099"/>
<text text-anchor="start" x="746" y="-2087.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="edge21" 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="M678.5,-1984.12C678.5,-2010.75 678.5,-2086.5 678.5,-2086.5 678.5,-2086.5 724.12,-2086.5 724.12,-2086.5"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="731.92,-2088.6 737.92,-2086.5 731.92,-2084.4 731.92,-2088.6"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="731.92,-2086.5 728.92,-2086.5 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="726.52" cy="-2086.5" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/phases/Resolver.ts -->
<g id="node21" class="node">
<title>modules/core/src/phases/Resolver.ts</title>
<g id="a_node21"><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="M456,-2404C456,-2404 403,-2404 403,-2404 400,-2404 397,-2401 397,-2398 397,-2398 397,-2392 397,-2392 397,-2389 400,-2386 403,-2386 403,-2386 456,-2386 456,-2386 459,-2386 462,-2389 462,-2392 462,-2392 462,-2398 462,-2398 462,-2401 459,-2404 456,-2404"/>
<text text-anchor="start" x="405" y="-2392.8" font-family="Helvetica,sans-Serif" font-size="9.00">Resolver.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/defs.ts->modules/core/src/phases/Resolver.ts -->
<g id="edge20" class="edge">
<title>modules/core/src/lib/defs.ts->modules/core/src/phases/Resolver.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M686.13,-1981.43C689.34,-1981.43 691.5,-1981.43 691.5,-1981.43 691.5,-1981.43 691.5,-2391.14 691.5,-2391.14 691.5,-2391.14 475.95,-2391.14 475.95,-2391.14"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="468.15,-2389.04 462.15,-2391.14 468.15,-2393.24 468.15,-2389.04"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="468.15,-2391.14 471.15,-2391.14 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="473.55" cy="-2391.14" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/ConnectedLogger.ts -->
<g id="node11" class="node">
<title>modules/core/src/lib/ConnectedLogger.ts</title>
<g id="a_node11"><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="M477,-2162C477,-2162 382,-2162 382,-2162 379,-2162 376,-2159 376,-2156 376,-2156 376,-2150 376,-2150 376,-2147 379,-2144 382,-2144 382,-2144 477,-2144 477,-2144 480,-2144 483,-2147 483,-2150 483,-2150 483,-2156 483,-2156 483,-2159 480,-2162 477,-2162"/>
<text text-anchor="start" x="384" y="-2150.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="M483.32,-2146.5C494.26,-2146.5 502.5,-2146.5 502.5,-2146.5 502.5,-2146.5 502.5,-1975.69 502.5,-1975.69 502.5,-1975.69 625.74,-1975.69 625.74,-1975.69"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="625.74,-1977.79 631.74,-1975.69 625.74,-1973.59 625.74,-1977.79"/>
</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="M483.02,-2151.5C483.02,-2151.5 624.9,-2151.5 624.9,-2151.5"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="624.9,-2153.6 630.9,-2151.5 624.9,-2149.4 624.9,-2153.6"/>
</g>
<!-- modules/core/src/lib/Logger.ts -->
<g id="node13" class="node">
<title>modules/core/src/lib/Logger.ts</title>
<g id="a_node13"><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="M578.5,-2006C578.5,-2006 532.5,-2006 532.5,-2006 529.5,-2006 526.5,-2003 526.5,-2000 526.5,-2000 526.5,-1994 526.5,-1994 526.5,-1991 529.5,-1988 532.5,-1988 532.5,-1988 578.5,-1988 578.5,-1988 581.5,-1988 584.5,-1991 584.5,-1994 584.5,-1994 584.5,-2000 584.5,-2000 584.5,-2003 581.5,-2006 578.5,-2006"/>
<text text-anchor="start" x="534.5" y="-1994.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="M483.21,-2149C495.23,-2149 504.5,-2149 504.5,-2149 504.5,-2149 504.5,-2000.67 504.5,-2000.67 504.5,-2000.67 520.42,-2000.67 520.42,-2000.67"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="520.42,-2002.77 526.42,-2000.67 520.42,-1998.57 520.42,-2002.77"/>
</g>
<!-- modules/core/src/lib/interfaces/logger.ts->modules/core/src/lib/defs.ts -->
<g id="edge35" 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="M674.5,-2135.86C674.5,-2135.86 674.5,-1997.99 674.5,-1997.99"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="676.6,-1990.19 674.5,-1984.19 672.4,-1990.19 676.6,-1990.19"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="674.5,-1990.19 674.5,-1993.19 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="674.5" cy="-1995.59" 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="M584.64,-1997C610.6,-1997 644.5,-1997 644.5,-1997 644.5,-1997 644.5,-1995.72 644.5,-1995.72"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="646.6,-1990.2 644.5,-1984.2 642.4,-1990.2 646.6,-1990.2"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="644.5,-1990.2 644.5,-1993.2 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="644.5" cy="-1995.6" rx="2.4" ry="2.4"/>
</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="M584.75,-2001.5C609.34,-2001.5 640.5,-2001.5 640.5,-2001.5 640.5,-2001.5 640.5,-2121.78 640.5,-2121.78"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="638.4,-2129.58 640.5,-2135.58 642.6,-2129.58 638.4,-2129.58"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="640.5,-2129.58 640.5,-2126.58 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="640.5" cy="-2124.18" rx="2.4" ry="2.4"/>
</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="M584.61,-1992.5C597.8,-1992.5 610.5,-1992.5 610.5,-1992.5 610.5,-1992.5 610.5,-1650.75 610.5,-1650.75 610.5,-1650.75 618.11,-1650.75 618.11,-1650.75"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="625.91,-1652.85 631.91,-1650.75 625.91,-1648.65 625.91,-1652.85"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="625.91,-1650.75 622.91,-1650.75 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="620.51" cy="-1650.75" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/LogHistory.ts -->
<g id="node14" class="node">
<title>modules/core/src/lib/LogHistory.ts</title>
<g id="a_node14"><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="M586.5,-2092C586.5,-2092 524.5,-2092 524.5,-2092 521.5,-2092 518.5,-2089 518.5,-2086 518.5,-2086 518.5,-2080 518.5,-2080 518.5,-2077 521.5,-2074 524.5,-2074 524.5,-2074 586.5,-2074 586.5,-2074 589.5,-2074 592.5,-2077 592.5,-2080 592.5,-2080 592.5,-2086 592.5,-2086 592.5,-2089 589.5,-2092 586.5,-2092"/>
<text text-anchor="start" x="526.5" y="-2080.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="M592.61,-2077.5C621.78,-2077.5 657.5,-2077.5 657.5,-2077.5 657.5,-2077.5 657.5,-1990.1 657.5,-1990.1"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="659.6,-1990.1 657.5,-1984.1 655.4,-1990.1 659.6,-1990.1"/>
</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="M592.68,-2089.25C613.97,-2089.25 636.5,-2089.25 636.5,-2089.25 636.5,-2089.25 636.5,-2129.79 636.5,-2129.79"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="634.4,-2129.79 636.5,-2135.79 638.6,-2129.79 634.4,-2129.79"/>
</g>
<!-- modules/core/src/lib/Logger.test.ts -->
<g id="node15" class="node">
<title>modules/core/src/lib/Logger.test.ts</title>
<g id="a_node15"><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="M305,-2110C305,-2110 239,-2110 239,-2110 236,-2110 233,-2107 233,-2104 233,-2104 233,-2098 233,-2098 233,-2095 236,-2092 239,-2092 239,-2092 305,-2092 305,-2092 308,-2092 311,-2095 311,-2098 311,-2098 311,-2104 311,-2104 311,-2107 308,-2110 305,-2110"/>
<text text-anchor="start" x="241" y="-2098.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="M272.5,-2110.05C272.5,-2121.57 272.5,-2140 272.5,-2140 272.5,-2140 624.89,-2140 624.89,-2140"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="624.89,-2142.1 630.89,-2140 624.89,-2137.9 624.89,-2142.1"/>
</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="M311.01,-2095.5C380.04,-2095.5 516.5,-2095.5 516.5,-2095.5 516.5,-2095.5 516.5,-2003.33 516.5,-2003.33 516.5,-2003.33 520.34,-2003.33 520.34,-2003.33"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="520.34,-2005.43 526.34,-2003.33 520.34,-2001.23 520.34,-2005.43"/>
</g>
<!-- modules/core/src/lib/test/lib.ts -->
<g id="node16" class="node">
<title>modules/core/src/lib/test/lib.ts</title>
<g id="a_node16"><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="M450.5,-1908C450.5,-1908 408.5,-1908 408.5,-1908 405.5,-1908 402.5,-1905 402.5,-1902 402.5,-1902 402.5,-1896 402.5,-1896 402.5,-1893 405.5,-1890 408.5,-1890 408.5,-1890 450.5,-1890 450.5,-1890 453.5,-1890 456.5,-1893 456.5,-1896 456.5,-1896 456.5,-1902 456.5,-1902 456.5,-1905 453.5,-1908 450.5,-1908"/>
<text text-anchor="start" x="418.5" y="-1896.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="M311.24,-2093.75C320.88,-2093.75 328.5,-2093.75 328.5,-2093.75 328.5,-2093.75 328.5,-1899 328.5,-1899 328.5,-1899 396.43,-1899 396.43,-1899"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="396.43,-1901.1 402.43,-1899 396.43,-1896.9 396.43,-1901.1"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/defs.ts -->
<g id="edge90" 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="M444.5,-1908.03C444.5,-1927.22 444.5,-1970.31 444.5,-1970.31 444.5,-1970.31 618.03,-1970.31 618.03,-1970.31"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="625.83,-1972.41 631.83,-1970.31 625.83,-1968.21 625.83,-1972.41"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="625.83,-1970.31 622.83,-1970.31 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="620.43" cy="-1970.31" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/Logger.ts -->
<g id="edge91" 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="M438.5,-1908.01C438.5,-1931.54 438.5,-1993 438.5,-1993 438.5,-1993 512.48,-1993 512.48,-1993"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="520.28,-1995.1 526.28,-1993 520.28,-1990.9 520.28,-1995.1"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="520.28,-1993 517.28,-1993 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="514.88" cy="-1993" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/util/index.ts -->
<g id="edge98" 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="M438.5,-1889.82C438.5,-1881.33 438.5,-1870 438.5,-1870 438.5,-1870 655.5,-1870 655.5,-1870 655.5,-1870 655.5,-1675.85 655.5,-1675.85"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="657.6,-1668.05 655.5,-1662.05 653.4,-1668.05 657.6,-1668.05"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="655.5,-1668.05 655.5,-1671.05 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="655.5" cy="-1673.45" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/Timer.ts -->
<g id="edge93" 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="M447.5,-1889.97C447.5,-1882.81 447.5,-1874 447.5,-1874 447.5,-1874 780.5,-1874 780.5,-1874 780.5,-1874 780.5,-1625.09 780.5,-1625.09"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="782.6,-1625.09 780.5,-1619.09 778.4,-1625.09 782.6,-1625.09"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/contexts.ts -->
<g id="edge89" 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="M420.5,-1908.15C420.5,-1914.38 420.5,-1921.5 420.5,-1921.5 420.5,-1921.5 756.5,-1921.5 756.5,-1921.5 756.5,-1921.5 756.5,-2067.14 756.5,-2067.14"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="754.4,-2074.94 756.5,-2080.94 758.6,-2074.94 754.4,-2074.94"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="756.5,-2074.94 756.5,-2071.94 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="756.5" cy="-2069.54" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/phases/Resolver.ts -->
<g id="edge88" 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="M402.25,-1905.75C383.7,-1905.75 362.5,-1905.75 362.5,-1905.75 362.5,-1905.75 362.5,-2392 362.5,-2392 362.5,-2392 382.99,-2392 382.99,-2392"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="390.79,-2394.1 396.79,-2392 390.79,-2389.9 390.79,-2394.1"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="390.79,-2392 387.79,-2392 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="385.39" cy="-2392" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/domain.ts -->
<g id="node22" class="node">
<title>modules/core/src/lib/domain.ts</title>
<g id="a_node22"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/domain.ts" xlink:title="domain.ts">
<path fill="#ddfeff" stroke="black" d="M580.5,-1862C580.5,-1862 530.5,-1862 530.5,-1862 527.5,-1862 524.5,-1859 524.5,-1856 524.5,-1856 524.5,-1850 524.5,-1850 524.5,-1847 527.5,-1844 530.5,-1844 530.5,-1844 580.5,-1844 580.5,-1844 583.5,-1844 586.5,-1847 586.5,-1850 586.5,-1850 586.5,-1856 586.5,-1856 586.5,-1859 583.5,-1862 580.5,-1862"/>
<text text-anchor="start" x="532.5" y="-1850.8" font-family="Helvetica,sans-Serif" font-size="9.00">domain.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/domain.ts -->
<g id="edge95" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/domain.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M429.5,-1889.89C429.5,-1876.74 429.5,-1854 429.5,-1854 429.5,-1854 510.55,-1854 510.55,-1854"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="518.35,-1856.1 524.35,-1854 518.35,-1851.9 518.35,-1856.1"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="518.35,-1854 515.35,-1854 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="512.95" cy="-1854" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/features.ts -->
<g id="node24" class="node">
<title>modules/core/src/lib/features.ts</title>
<g id="a_node24"><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="M582,-1906C582,-1906 529,-1906 529,-1906 526,-1906 523,-1903 523,-1900 523,-1900 523,-1894 523,-1894 523,-1891 526,-1888 529,-1888 529,-1888 582,-1888 582,-1888 585,-1888 588,-1891 588,-1894 588,-1894 588,-1900 588,-1900 588,-1903 585,-1906 582,-1906"/>
<text text-anchor="start" x="531" y="-1894.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="edge96" 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="M456.53,-1898C456.53,-1898 508.9,-1898 508.9,-1898"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="516.7,-1900.1 522.7,-1898 516.7,-1895.9 516.7,-1900.1"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="516.7,-1898 513.7,-1898 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="511.3" cy="-1898" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/resolver-features.ts -->
<g id="node25" class="node">
<title>modules/core/src/lib/resolver-features.ts</title>
<g id="a_node25"><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="M474.5,-2016C474.5,-2016 384.5,-2016 384.5,-2016 381.5,-2016 378.5,-2013 378.5,-2010 378.5,-2010 378.5,-2004 378.5,-2004 378.5,-2001 381.5,-1998 384.5,-1998 384.5,-1998 474.5,-1998 474.5,-1998 477.5,-1998 480.5,-2001 480.5,-2004 480.5,-2004 480.5,-2010 480.5,-2010 480.5,-2013 477.5,-2016 474.5,-2016"/>
<text text-anchor="start" x="386.5" y="-2004.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="edge92" 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="M426.5,-1908.21C426.5,-1908.21 426.5,-1984.02 426.5,-1984.02"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="424.4,-1991.82 426.5,-1997.82 428.6,-1991.82 424.4,-1991.82"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="426.5,-1991.82 426.5,-1988.82 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="426.5" cy="-1986.42" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/run.ts -->
<g id="node30" class="node">
<title>modules/core/src/lib/run.ts</title>
<g id="a_node30"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/lib/run.ts" xlink:title="run.ts">
<path fill="#ddfeff" stroke="black" d="M450.5,-2046C450.5,-2046 408.5,-2046 408.5,-2046 405.5,-2046 402.5,-2043 402.5,-2040 402.5,-2040 402.5,-2034 402.5,-2034 402.5,-2031 405.5,-2028 408.5,-2028 408.5,-2028 450.5,-2028 450.5,-2028 453.5,-2028 456.5,-2031 456.5,-2034 456.5,-2034 456.5,-2040 456.5,-2040 456.5,-2043 453.5,-2046 450.5,-2046"/>
<text text-anchor="start" x="415.5" y="-2034.8" font-family="Helvetica,sans-Serif" font-size="9.00">run.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/lib/test/lib.ts->modules/core/src/lib/run.ts -->
<g id="edge97" class="edge">
<title>modules/core/src/lib/test/lib.ts->modules/core/src/lib/run.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M456.75,-1904C475.3,-1904 496.5,-1904 496.5,-1904 496.5,-1904 496.5,-2030 496.5,-2030 496.5,-2030 470.55,-2030 470.55,-2030"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="462.75,-2027.9 456.75,-2030 462.75,-2032.1 462.75,-2027.9"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="462.75,-2030 465.75,-2030 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="468.15" cy="-2030" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/util/workspace-lib.ts -->
<g id="node31" class="node">
<title>modules/core/src/lib/util/workspace-lib.ts</title>
<g id="a_node31"><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="M594,-1662C594,-1662 517,-1662 517,-1662 514,-1662 511,-1659 511,-1656 511,-1656 511,-1650 511,-1650 511,-1647 514,-1644 517,-1644 517,-1644 594,-1644 594,-1644 597,-1644 600,-1647 600,-1650 600,-1650 600,-1656 600,-1656 600,-1659 597,-1662 594,-1662"/>
<text text-anchor="start" x="519" y="-1650.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="edge94" 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="M456.58,-1894C473.66,-1894 492.5,-1894 492.5,-1894 492.5,-1894 492.5,-1653 492.5,-1653 492.5,-1653 496.92,-1653 496.92,-1653"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="504.72,-1655.1 510.72,-1653 504.72,-1650.9 504.72,-1655.1"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="504.72,-1653 501.72,-1653 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="499.32" cy="-1653" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/util/index.ts->modules/core/src/lib/defs.ts -->
<g id="edge99" 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="M684.5,-1662.29C684.5,-1662.29 684.5,-1952.18 684.5,-1952.18"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="682.4,-1959.98 684.5,-1965.98 686.6,-1959.98 682.4,-1959.98"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="684.5,-1959.98 684.5,-1956.98 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="684.5" cy="-1954.58" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/util/index.ts->modules/core/src/lib/Timer.ts -->
<g id="edge100" 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="M686.08,-1645.8C720.22,-1645.8 774.5,-1645.8 774.5,-1645.8 774.5,-1645.8 774.5,-1625.03 774.5,-1625.03"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="776.6,-1625.03 774.5,-1619.03 772.4,-1625.03 776.6,-1625.03"/>
</g>
<!-- modules/core/src/lib/TestLogger.ts -->
<g id="node18" class="node">
<title>modules/core/src/lib/TestLogger.ts</title>
<g id="a_node18"><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="M587,-2178C587,-2178 524,-2178 524,-2178 521,-2178 518,-2175 518,-2172 518,-2172 518,-2166 518,-2166 518,-2163 521,-2160 524,-2160 524,-2160 587,-2160 587,-2160 590,-2160 593,-2163 593,-2166 593,-2166 593,-2172 593,-2172 593,-2175 590,-2178 587,-2178"/>
<text text-anchor="start" x="526" y="-2166.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="M593.05,-2169C622.84,-2169 659.5,-2169 659.5,-2169 659.5,-2169 659.5,-2160.21 659.5,-2160.21"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="661.6,-2160.21 659.5,-2154.21 657.4,-2160.21 661.6,-2160.21"/>
</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="M737.85,-2083.75C712.65,-2083.75 682.5,-2083.75 682.5,-2083.75 682.5,-2083.75 682.5,-1998.07 682.5,-1998.07"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="684.6,-1990.27 682.5,-1984.27 680.4,-1990.27 684.6,-1990.27"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="682.5,-1990.27 682.5,-1993.27 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="682.5" cy="-1995.67" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/lib/defs.ts -->
<g id="edge135" 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="M462.14,-2393.71C532.77,-2393.71 693.5,-2393.71 693.5,-2393.71 693.5,-2393.71 693.5,-1980.14 693.5,-1980.14 693.5,-1980.14 692.77,-1980.14 692.77,-1980.14"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="692.18,-1978.04 686.18,-1980.14 692.18,-1982.24 692.18,-1978.04"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="692.18,-1980.14 695.18,-1980.14 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="697.58" cy="-1980.14" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/lib/util/index.ts -->
<g id="edge138" 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="M462.26,-2396.29C533.16,-2396.29 694.5,-2396.29 694.5,-2396.29 694.5,-2396.29 694.5,-1658.4 694.5,-1658.4 694.5,-1658.4 693.68,-1658.4 693.68,-1658.4"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="692.27,-1656.3 686.27,-1658.4 692.27,-1660.5 692.27,-1656.3"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="692.27,-1658.4 695.27,-1658.4 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="697.67" cy="-1658.4" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/lib/resolver-features.ts -->
<g id="edge137" class="edge">
<title>modules/core/src/phases/Resolver.ts->modules/core/src/lib/resolver-features.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M396.62,-2390C380.5,-2390 364.5,-2390 364.5,-2390 364.5,-2390 364.5,-2010 364.5,-2010 364.5,-2010 365.88,-2010 365.88,-2010"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="372.28,-2012.1 378.28,-2010 372.28,-2007.9 372.28,-2012.1"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="372.28,-2010 369.28,-2010 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="366.88" cy="-2010" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/namedVars.ts -->
<g id="node27" class="node">
<title>modules/core/src/lib/namedVars.ts</title>
<g id="a_node27"><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="M462.5,-2132C462.5,-2132 396.5,-2132 396.5,-2132 393.5,-2132 390.5,-2129 390.5,-2126 390.5,-2126 390.5,-2120 390.5,-2120 390.5,-2117 393.5,-2114 396.5,-2114 396.5,-2114 462.5,-2114 462.5,-2114 465.5,-2114 468.5,-2117 468.5,-2120 468.5,-2120 468.5,-2126 468.5,-2126 468.5,-2129 465.5,-2132 462.5,-2132"/>
<text text-anchor="start" x="398.5" y="-2120.8" font-family="Helvetica,sans-Serif" font-size="9.00">namedVars.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/lib/namedVars.ts -->
<g id="edge136" 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="M462.25,-2388.57C478,-2388.57 493.5,-2388.57 493.5,-2388.57 493.5,-2388.57 493.5,-2129.43 493.5,-2129.43 493.5,-2129.43 482.37,-2129.43 482.37,-2129.43"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="474.57,-2127.33 468.57,-2129.43 474.57,-2131.53 474.57,-2127.33"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="474.57,-2129.43 477.57,-2129.43 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="479.97" cy="-2129.43" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/phases/Builder.ts -->
<g id="node37" class="node">
<title>modules/core/src/phases/Builder.ts</title>
<g id="a_node37"><a xlink:href="https://github.com/withhaibun/haibun/tree/main/modules/core/src/phases/Builder.ts" xlink:title="Builder.ts">
<path fill="#ddfeff" stroke="black" d="M579,-2434C579,-2434 532,-2434 532,-2434 529,-2434 526,-2431 526,-2428 526,-2428 526,-2422 526,-2422 526,-2419 529,-2416 532,-2416 532,-2416 579,-2416 579,-2416 582,-2416 585,-2419 585,-2422 585,-2422 585,-2428 585,-2428 585,-2431 582,-2434 579,-2434"/>
<text text-anchor="start" x="534" y="-2422.8" font-family="Helvetica,sans-Serif" font-size="9.00">Builder.ts</text>
</a>
</g>
</g>
<!-- modules/core/src/phases/Resolver.ts->modules/core/src/phases/Builder.ts -->
<g id="edge139" class="edge">
<title>modules/core/src/phases/Resolver.ts->modules/core/src/phases/Builder.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M462.09,-2401.43C496.71,-2401.43 546.5,-2401.43 546.5,-2401.43 546.5,-2401.43 546.5,-2402.88 546.5,-2402.88"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="544.4,-2409.95 546.5,-2415.95 548.6,-2409.95 544.4,-2409.95"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="546.5,-2409.95 546.5,-2406.95 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="546.5" cy="-2404.55" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/domain.ts->modules/core/src/lib/defs.ts -->
<g id="edge26" class="edge">
<title>modules/core/src/lib/domain.ts->modules/core/src/lib/defs.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M586.55,-1857.5C621.21,-1857.5 672.5,-1857.5 672.5,-1857.5 672.5,-1857.5 672.5,-1951.98 672.5,-1951.98"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="670.4,-1959.78 672.5,-1965.78 674.6,-1959.78 670.4,-1959.78"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="672.5,-1959.78 672.5,-1956.78 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="672.5" cy="-1954.38" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/domain.ts->modules/core/src/lib/util/index.ts -->
<g id="edge27" class="edge">
<title>modules/core/src/lib/domain.ts->modules/core/src/lib/util/index.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M586.51,-1848.5C615.22,-1848.5 653.5,-1848.5 653.5,-1848.5 653.5,-1848.5 653.5,-1675.97 653.5,-1675.97"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="655.6,-1668.17 653.5,-1662.17 651.4,-1668.17 655.6,-1668.17"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="653.5,-1668.17 653.5,-1671.17 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="653.5" cy="-1673.57" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/domain.ts->modules/core/src/lib/contexts.ts -->
<g id="edge25" class="edge">
<title>modules/core/src/lib/domain.ts->modules/core/src/lib/contexts.ts</title>
<path fill="none" stroke="blue" stroke-width="2" d="M586.94,-1853C644.85,-1853 762.5,-1853 762.5,-1853 762.5,-1853 762.5,-2067.2 762.5,-2067.2"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="760.4,-2075 762.5,-2081 764.6,-2075 760.4,-2075"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="762.5,-2075 762.5,-2072 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="762.5" cy="-2069.6" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/features.test.ts -->
<g id="node23" class="node">
<title>modules/core/src/lib/features.test.ts</title>
<g id="a_node23"><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="M308.5,-1754C308.5,-1754 235.5,-1754 235.5,-1754 232.5,-1754 229.5,-1751 229.5,-1748 229.5,-1748 229.5,-1742 229.5,-1742 229.5,-1739 232.5,-1736 235.5,-1736 235.5,-1736 308.5,-1736 308.5,-1736 311.5,-1736 314.5,-1739 314.5,-1742 314.5,-1742 314.5,-1748 314.5,-1748 314.5,-1751 311.5,-1754 308.5,-1754"/>
<text text-anchor="start" x="237.5" y="-1742.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="edge28" 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="M314.84,-1748C351.2,-1748 397.5,-1748 397.5,-1748 397.5,-1748 397.5,-1971.38 397.5,-1971.38 397.5,-1971.38 626,-1971.38 626,-1971.38"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="626,-1973.48 632,-1971.38 626,-1969.28 626,-1973.48"/>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/test/lib.ts -->
<g id="edge31" 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="M314.55,-1745C358.44,-1745 420.5,-1745 420.5,-1745 420.5,-1745 420.5,-1883.83 420.5,-1883.83"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="418.4,-1883.83 420.5,-1889.83 422.6,-1883.83 418.4,-1883.83"/>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/util/index.ts -->
<g id="edge32" 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="M314.6,-1739C412.75,-1739 646.5,-1739 646.5,-1739 646.5,-1739 646.5,-1668.2 646.5,-1668.2"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="648.6,-1668.2 646.5,-1662.2 644.4,-1668.2 648.6,-1668.2"/>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/features.ts -->
<g id="edge29" 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="M314.75,-1742C370.92,-1742 462.5,-1742 462.5,-1742 462.5,-1742 462.5,-1896 462.5,-1896 462.5,-1896 516.97,-1896 516.97,-1896"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="516.97,-1898.1 522.97,-1896 516.97,-1893.9 516.97,-1898.1"/>
</g>
<!-- modules/core/src/lib/features.test.ts->modules/core/src/lib/resolver-features.ts -->
<g id="edge30" 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="M314.72,-1751C347.97,-1751 388.5,-1751 388.5,-1751 388.5,-1751 388.5,-1991.89 388.5,-1991.89"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="386.4,-1991.89 388.5,-1997.89 390.6,-1991.89 386.4,-1991.89"/>
</g>
<!-- modules/core/src/lib/features.ts->modules/core/src/lib/defs.ts -->
<g id="edge33" 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="M588.2,-1898.8C621.25,-1898.8 667.5,-1898.8 667.5,-1898.8 667.5,-1898.8 667.5,-1952.16 667.5,-1952.16"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="665.4,-1959.96 667.5,-1965.96 669.6,-1959.96 665.4,-1959.96"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="667.5,-1959.96 667.5,-1956.96 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="667.5" cy="-1954.56" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/features.ts->modules/core/src/lib/util/index.ts -->
<g id="edge34" 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="M588.09,-1895.2C618.27,-1895.2 658.5,-1895.2 658.5,-1895.2 658.5,-1895.2 658.5,-1676 658.5,-1676"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="660.6,-1668.2 658.5,-1662.2 656.4,-1668.2 660.6,-1668.2"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="658.5,-1668.2 658.5,-1671.2 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="658.5" cy="-1673.6" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/resolver-features.ts->modules/core/src/lib/defs.ts -->
<g id="edge47" 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="M475.5,-1997.81C475.5,-1988.23 475.5,-1974.62 475.5,-1974.62 475.5,-1974.62 618.12,-1974.62 618.12,-1974.62"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="625.92,-1976.72 631.92,-1974.62 625.92,-1972.52 625.92,-1976.72"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="625.92,-1974.62 622.92,-1974.62 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="620.52" cy="-1974.62" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/resolver-features.ts->modules/core/src/lib/test/lib.ts -->
<g id="edge49" 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="M432.5,-1997.79C432.5,-1997.79 432.5,-1921.98 432.5,-1921.98"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="434.6,-1914.18 432.5,-1908.18 430.4,-1914.18 434.6,-1914.18"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="432.5,-1914.18 432.5,-1917.18 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="432.5" cy="-1919.58" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/resolver-features.ts->modules/core/src/lib/features.ts -->
<g id="edge48" 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="M473.5,-1997.88C473.5,-1972 473.5,-1900 473.5,-1900 473.5,-1900 508.82,-1900 508.82,-1900"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="516.62,-1902.1 522.62,-1900 516.62,-1897.9 516.62,-1902.1"/>
<polyline fill="none" stroke="blue" stroke-width="2" points="516.62,-1900 513.62,-1900 "/>
<ellipse fill="none" stroke="blue" stroke-width="2" cx="511.22" cy="-1900" rx="2.4" ry="2.4"/>
</g>
<!-- modules/core/src/lib/namedVars.test.ts -->
<g id="node26" class="node">
<title>modules/core/src/lib/namedVars.test.ts</title>
<g id="a_node26"><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="M315,-2016C315,-2016 229,-2016 229,-2016 226,-2016 223,-2013 223,-2010 223,-2010 223,-2004 223,-2004 223,-2001 226,-1998 229,-1998 229,-1998 315,-1998 315,-1998 318,-1998 321,-2001 321,-2004 321,-2004 321,-2010 321,-2010 321,-2013 318,-2016 315,-2016"/>
<text text-anchor="start" x="231" y="-2004.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="edge37" 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="M321.44,-2004C337.61,-2004 351.5,-2004 351.5,-2004 351.5,-2004 351.5,-1973.54 351.5,-1973.54 351.5,-1973.54 625.98,-1973.54 625.98,-1973.54"/>
<polygon fill="blue" stroke="blue" stroke-width="2" points="625.98,-1975.64 631.98,-1973.54 625.98,-1971.44 625.98,-1975.64"/>
</g>