palate 0.1.2

File type detection combining tft and hyperpolyglot
Documentation
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
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
use phf::{phf_map, Map};

use crate::{detect, FileType, FileTypeResolver};

pub(crate) static FILE_EXTENSION: Map<&'static str, FileTypeResolver> = phf_map! {
    "ebnf" => FileTypeResolver::Static(FileType::Ebnf),
    "ejs" => FileTypeResolver::Static(FileType::EJavaScript),
    "hexdump" => FileTypeResolver::Static(FileType::HexDump),
    "llvm" => FileTypeResolver::Static(FileType::Llvm),
    "m2" => FileTypeResolver::Static(FileType::Modula2),
    "mi" => FileTypeResolver::Static(FileType::Modula2),
    "rpmnew" => FileTypeResolver::Dynamic(detect::bak),
    "rush" => FileTypeResolver::Static(FileType::Rush),
    "ursa" => FileTypeResolver::Static(FileType::Ursa),
    "verilog" => FileTypeResolver::Static(FileType::Verilog),
    "vh" => FileTypeResolver::Static(FileType::Verilog),
    "vlg" => FileTypeResolver::Static(FileType::Verilog),
    "zir" => FileTypeResolver::Static(FileType::Zir),
    "8th" => FileTypeResolver::Static(FileType::Eighth),
    "a65" => FileTypeResolver::Static(FileType::A65),
    "aap" => FileTypeResolver::Static(FileType::Aap),
    "abap" => FileTypeResolver::Static(FileType::Abap),
    "abc" => FileTypeResolver::Static(FileType::Abc),
    "abl" => FileTypeResolver::Static(FileType::Abel),
    "abnf" => FileTypeResolver::Static(FileType::Abnf),
    "wrm" => FileTypeResolver::Static(FileType::Acedb),
    "ads" => FileTypeResolver::Static(FileType::Ada),
    "ada" => FileTypeResolver::Static(FileType::Ada),
    "gpr" => FileTypeResolver::Static(FileType::Ada),
    "adb" => FileTypeResolver::Static(FileType::Ada),
    "tdf" => FileTypeResolver::Static(FileType::Ahdl),
    "aidl" => FileTypeResolver::Static(FileType::Aidl),
    "aml" => FileTypeResolver::Static(FileType::Aml),
    "run" => FileTypeResolver::Static(FileType::Ampl),
    "g4" => FileTypeResolver::Static(FileType::Antlr4),
    "applescript" => FileTypeResolver::Static(FileType::AppleScript),
    "scpt" => FileTypeResolver::Static(FileType::AppleScript),
    "ino" => FileTypeResolver::Static(FileType::Arduino),
    "pde" => FileTypeResolver::Static(FileType::Arduino),
    "art" => FileTypeResolver::Static(FileType::Art),
    "asciidoc" => FileTypeResolver::Static(FileType::AsciiDoc),
    "adoc" => FileTypeResolver::Static(FileType::AsciiDoc),
    "asn1" => FileTypeResolver::Static(FileType::Asn),
    "asn" => FileTypeResolver::Static(FileType::Asn),
    "astro" => FileTypeResolver::Static(FileType::Astro),
    "asy" => FileTypeResolver::Static(FileType::Asy),
    "atl" => FileTypeResolver::Static(FileType::Atlas),
    "as" => FileTypeResolver::Static(FileType::Atlas),
    "zed" => FileTypeResolver::Static(FileType::Authzed),
    "ahk" => FileTypeResolver::Static(FileType::AutoHotKey),
    "au3" => FileTypeResolver::Static(FileType::AutoIt),
    "ave" => FileTypeResolver::Static(FileType::Ave),
    "gawk" => FileTypeResolver::Static(FileType::Awk),
    "awk" => FileTypeResolver::Static(FileType::Awk),
    "ref" => FileTypeResolver::Static(FileType::B),
    "imp" => FileTypeResolver::Static(FileType::B),
    "mch" => FileTypeResolver::Static(FileType::B),
    "bass" => FileTypeResolver::Static(FileType::Bass),
    "bc" => FileTypeResolver::Static(FileType::Bc),
    "bdf" => FileTypeResolver::Static(FileType::Bdf),
    "beancount" => FileTypeResolver::Static(FileType::BeanCount),
    "bib" => FileTypeResolver::Static(FileType::Bib),
    "bicep" => FileTypeResolver::Static(FileType::Bicep),
    "bicepparam" => FileTypeResolver::Static(FileType::BicepParams),
    "zone" => FileTypeResolver::Static(FileType::Bindzone),
    "bb" => FileTypeResolver::Static(FileType::Bitbake),
    "bbappend" => FileTypeResolver::Static(FileType::Bitbake),
    "bbclass" => FileTypeResolver::Static(FileType::Bitbake),
    "bl" => FileTypeResolver::Static(FileType::Blank),
    "blp" => FileTypeResolver::Static(FileType::Blueprint),
    "bp" => FileTypeResolver::Static(FileType::Bp),
    "bt" => FileTypeResolver::Static(FileType::Bpftrace),
    "bs" => FileTypeResolver::Static(FileType::Brighterscript),
    "brs" => FileTypeResolver::Static(FileType::Brightscript),
    "bsd" => FileTypeResolver::Static(FileType::Bsdl),
    "bsdl" => FileTypeResolver::Static(FileType::Bsdl),
    "bst" => FileTypeResolver::Static(FileType::Bst),
    "bzl" => FileTypeResolver::Static(FileType::Bzl),
    "bxl" => FileTypeResolver::Static(FileType::Bzl),
    "bazel" => FileTypeResolver::Static(FileType::Bzl),
    "BUILD" => FileTypeResolver::Static(FileType::Bzl),
    "mdh" => FileTypeResolver::Static(FileType::C),
    "epro" => FileTypeResolver::Static(FileType::C),
    "qc" => FileTypeResolver::Static(FileType::C),
    "c3" => FileTypeResolver::Static(FileType::C3),
    "c3i" => FileTypeResolver::Static(FileType::C3),
    "c3t" => FileTypeResolver::Static(FileType::C3),
    "cabal" => FileTypeResolver::Static(FileType::Cabal),
    "cairo" => FileTypeResolver::Static(FileType::Cairo),
    "cj" => FileTypeResolver::Static(FileType::Cangjie),
    "capnp" => FileTypeResolver::Static(FileType::Capnp),
    "cdc" => FileTypeResolver::Static(FileType::Cdc),
    "cdl" => FileTypeResolver::Static(FileType::Cdl),
    "toc" => FileTypeResolver::Static(FileType::Cdrtoc),
    "cedar" => FileTypeResolver::Static(FileType::Cedar),
    "cfc" => FileTypeResolver::Static(FileType::Cf),
    "cfm" => FileTypeResolver::Static(FileType::Cf),
    "cfi" => FileTypeResolver::Static(FileType::Cf),
    "hgrc" => FileTypeResolver::Static(FileType::Cfg),
    "chf" => FileTypeResolver::Static(FileType::Ch),
    "chai" => FileTypeResolver::Static(FileType::ChaiScript),
    "chs" => FileTypeResolver::Static(FileType::Chaskell),
    "chatito" => FileTypeResolver::Static(FileType::Chatito),
    "chopro" => FileTypeResolver::Static(FileType::Chordpro),
    "crd" => FileTypeResolver::Static(FileType::Chordpro),
    "crdpro" => FileTypeResolver::Static(FileType::Chordpro),
    "cho" => FileTypeResolver::Static(FileType::Chordpro),
    "chordpro" => FileTypeResolver::Static(FileType::Chordpro),
    "ck" => FileTypeResolver::Static(FileType::Chuck),
    "cl" => FileTypeResolver::Static(FileType::Lisp),
    "eni" => FileTypeResolver::Static(FileType::Cl),
    "icl" => FileTypeResolver::Static(FileType::Clean),
    "cljx" => FileTypeResolver::Static(FileType::Clojure),
    "clj" => FileTypeResolver::Static(FileType::Clojure),
    "cljc" => FileTypeResolver::Static(FileType::Clojure),
    "cljs" => FileTypeResolver::Static(FileType::Clojure),
    "cook" => FileTypeResolver::Static(FileType::Cook),
    "cmake" => FileTypeResolver::Static(FileType::CMake),
    "cmod" => FileTypeResolver::Static(FileType::CMod),
    "cob" => FileTypeResolver::Static(FileType::Cobol),
    "cbl" => FileTypeResolver::Static(FileType::Cobol),
    "atg" => FileTypeResolver::Static(FileType::Coco),
    "recipe" => FileTypeResolver::Static(FileType::ConaryRecipe),
    "ctags" => FileTypeResolver::Static(FileType::Conf),
    "nmconnection" => FileTypeResolver::Static(FileType::ConfIni),
    "mklx" => FileTypeResolver::Static(FileType::Context),
    "mkiv" => FileTypeResolver::Static(FileType::Context),
    "mkii" => FileTypeResolver::Static(FileType::Context),
    "mkxl" => FileTypeResolver::Static(FileType::Context),
    "mkvi" => FileTypeResolver::Static(FileType::Context),
    "corn" => FileTypeResolver::Static(FileType::Corn),
    "cpon" => FileTypeResolver::Static(FileType::Cpon),
    "moc" => FileTypeResolver::Static(FileType::Cpp),
    "hh" => FileTypeResolver::Static(FileType::Cpp),
    "tlh" => FileTypeResolver::Static(FileType::Cpp),
    "inl" => FileTypeResolver::Static(FileType::Cpp),
    "ipp" => FileTypeResolver::Static(FileType::Cpp),
    "c++" => FileTypeResolver::Static(FileType::Cpp),
    "C" => FileTypeResolver::Static(FileType::Cpp),
    "cxx" => FileTypeResolver::Static(FileType::Cpp),
    "H" => FileTypeResolver::Static(FileType::Cpp),
    "tcc" => FileTypeResolver::Static(FileType::Cpp),
    "hxx" => FileTypeResolver::Static(FileType::Cpp),
    "hpp" => FileTypeResolver::Static(FileType::Cpp),
    "ixx" => FileTypeResolver::Static(FileType::Cpp),
    "mpp" => FileTypeResolver::Static(FileType::Cpp),
    "ccm" => FileTypeResolver::Static(FileType::Cpp),
    "cppm" => FileTypeResolver::Static(FileType::Cpp),
    "cxxm" => FileTypeResolver::Static(FileType::Cpp),
    "c++m" => FileTypeResolver::Static(FileType::Cpp),
    "cql" => FileTypeResolver::Static(FileType::Cqlang),
    "crm" => FileTypeResolver::Static(FileType::Crm),
    "cr" => FileTypeResolver::Static(FileType::Crystal),
    "cake" => FileTypeResolver::Static(FileType::CSharp),
    "csx" => FileTypeResolver::Static(FileType::CSharp),
    "cs" => FileTypeResolver::Static(FileType::CSharp),
    "csc" => FileTypeResolver::Static(FileType::Csc),
    "csdl" => FileTypeResolver::Static(FileType::Csdl),
    "cshtml" => FileTypeResolver::Static(FileType::Html),
    "fdr" => FileTypeResolver::Static(FileType::Csp),
    "csp" => FileTypeResolver::Static(FileType::Csp),
    "css" => FileTypeResolver::Static(FileType::Css),
    "csv" => FileTypeResolver::Static(FileType::Csv),
    "con" => FileTypeResolver::Static(FileType::CTerm),
    "feature" => FileTypeResolver::Static(FileType::Cucumber),
    "cuh" => FileTypeResolver::Static(FileType::Cuda),
    "cu" => FileTypeResolver::Static(FileType::Cuda),
    "cue" => FileTypeResolver::Static(FileType::Cue),
    "pld" => FileTypeResolver::Static(FileType::Cupl),
    "si" => FileTypeResolver::Static(FileType::Cuplsim),
    "cyn" => FileTypeResolver::Static(FileType::Cynpp),
    "cypher" => FileTypeResolver::Static(FileType::Cypher),
    "dfy" => FileTypeResolver::Static(FileType::Dafny),
    "dart" => FileTypeResolver::Static(FileType::Dart),
    "drt" => FileTypeResolver::Static(FileType::Dart),
    "ds" => FileTypeResolver::Static(FileType::DataScript),
    "dax" => FileTypeResolver::Static(FileType::Dax),
    "dcd" => FileTypeResolver::Static(FileType::Dcd),
    "def" => FileTypeResolver::Static(FileType::Def),
    "desc" => FileTypeResolver::Static(FileType::Desc),
    "directory" => FileTypeResolver::Static(FileType::Desktop),
    "desktop" => FileTypeResolver::Static(FileType::Desktop),
    "dhall" => FileTypeResolver::Static(FileType::Dhall),
    "diff" => FileTypeResolver::Static(FileType::Diff),
    "rej" => FileTypeResolver::Static(FileType::Diff),
    "dj" => FileTypeResolver::Static(FileType::Djot),
    "djot" => FileTypeResolver::Static(FileType::Djot),
    "Dockerfile" => FileTypeResolver::Static(FileType::Dockerfile),
    "dockerfile" => FileTypeResolver::Static(FileType::Dockerfile),
    "bat" => FileTypeResolver::Static(FileType::DosBatch),
    "wrap" => FileTypeResolver::Static(FileType::DosIni),
    "ini" => FileTypeResolver::Static(FileType::DosIni),
    "INI" => FileTypeResolver::Static(FileType::DosIni),
    "vbp" => FileTypeResolver::Static(FileType::DosIni),
    "dot" => FileTypeResolver::Static(FileType::Dot),
    "gv" => FileTypeResolver::Static(FileType::Dot),
    "drac" => FileTypeResolver::Static(FileType::Dracula),
    "drc" => FileTypeResolver::Static(FileType::Dracula),
    "lvs" => FileTypeResolver::Static(FileType::Dracula),
    "lpe" => FileTypeResolver::Static(FileType::Dracula),
    "dsp" => FileTypeResolver::Static(FileType::Make),
    "dtd" => FileTypeResolver::Static(FileType::Dtd),
    "dts" => FileTypeResolver::Static(FileType::Dts),
    "dtsi" => FileTypeResolver::Static(FileType::Dts),
    "dtso" => FileTypeResolver::Static(FileType::Dts),
    "its" => FileTypeResolver::Static(FileType::Dts),
    "keymap" => FileTypeResolver::Static(FileType::Dts),
    "overlay" => FileTypeResolver::Static(FileType::Dts),
    "dylan" => FileTypeResolver::Static(FileType::Dylan),
    "intr" => FileTypeResolver::Static(FileType::DylanIntr),
    "lid" => FileTypeResolver::Static(FileType::DylanLid),
    "ecd" => FileTypeResolver::Static(FileType::Ecd),
    "edf" => FileTypeResolver::Static(FileType::Edif),
    "edif" => FileTypeResolver::Static(FileType::Edif),
    "edo" => FileTypeResolver::Static(FileType::Edif),
    "eex" => FileTypeResolver::Static(FileType::EElixir),
    "leex" => FileTypeResolver::Static(FileType::EElixir),
    "am" => FileTypeResolver::Static(FileType::Elf),
    "exs" => FileTypeResolver::Static(FileType::Elixir),
    "elm" => FileTypeResolver::Static(FileType::Elm),
    "lc" => FileTypeResolver::Static(FileType::Elsa),
    "elv" => FileTypeResolver::Static(FileType::Elvish),
    "epp" => FileTypeResolver::Static(FileType::EPuppet),
    "erl" => FileTypeResolver::Static(FileType::Erlang),
    "hrl" => FileTypeResolver::Static(FileType::Erlang),
    "yaws" => FileTypeResolver::Static(FileType::Erlang),
    "erb" => FileTypeResolver::Static(FileType::ERuby),
    "rhtml" => FileTypeResolver::Static(FileType::ERuby),
    "esdl" => FileTypeResolver::Static(FileType::Esdl),
    "ec" => FileTypeResolver::Static(FileType::Esqlc),
    "EC" => FileTypeResolver::Static(FileType::Esqlc),
    "strl" => FileTypeResolver::Static(FileType::Esterel),
    "exp" => FileTypeResolver::Static(FileType::Expect),
    "f" => FileTypeResolver::Static(FileType::Fortran),
    "factor" => FileTypeResolver::Static(FileType::Factor),
    "fal" => FileTypeResolver::Static(FileType::Falcon),
    "fan" => FileTypeResolver::Static(FileType::Fan),
    "fwt" => FileTypeResolver::Static(FileType::Fan),
    "fnl" => FileTypeResolver::Static(FileType::Fennel),
    "fnlm" => FileTypeResolver::Static(FileType::Fennel),
    "fga" => FileTypeResolver::Static(FileType::Fga),
    "m4gl" => FileTypeResolver::Static(FileType::Fgl),
    "4gl" => FileTypeResolver::Static(FileType::Fgl),
    "4gh" => FileTypeResolver::Static(FileType::Fgl),
    "fir" => FileTypeResolver::Static(FileType::Firrtl),
    "fish" => FileTypeResolver::Static(FileType::Fish),
    "flix" => FileTypeResolver::Static(FileType::Flix),
    "ftl" => FileTypeResolver::Static(FileType::Fluent),
    "focexec" => FileTypeResolver::Static(FileType::FocExec),
    "fex" => FileTypeResolver::Static(FileType::FocExec),
    "ft" => FileTypeResolver::Static(FileType::Forth),
    "fth" => FileTypeResolver::Static(FileType::Forth),
    "4th" => FileTypeResolver::Static(FileType::Forth),
    "FOR" => FileTypeResolver::Static(FileType::Fortran),
    "f77" => FileTypeResolver::Static(FileType::Fortran),
    "f03" => FileTypeResolver::Static(FileType::Fortran),
    "fortran" => FileTypeResolver::Static(FileType::Fortran),
    "F95" => FileTypeResolver::Static(FileType::Fortran),
    "f90" => FileTypeResolver::Static(FileType::Fortran),
    "F03" => FileTypeResolver::Static(FileType::Fortran),
    "fpp" => FileTypeResolver::Static(FileType::Fortran),
    "FTN" => FileTypeResolver::Static(FileType::Fortran),
    "ftn" => FileTypeResolver::Static(FileType::Fortran),
    "for" => FileTypeResolver::Static(FileType::Fortran),
    "F90" => FileTypeResolver::Static(FileType::Fortran),
    "F77" => FileTypeResolver::Static(FileType::Fortran),
    "f95" => FileTypeResolver::Static(FileType::Fortran),
    "FPP" => FileTypeResolver::Static(FileType::Fortran),
    "F" => FileTypeResolver::Static(FileType::Fortran),
    "F08" => FileTypeResolver::Static(FileType::Fortran),
    "f08" => FileTypeResolver::Static(FileType::Fortran),
    "fpc" => FileTypeResolver::Static(FileType::FpcMake),
    "fsl" => FileTypeResolver::Static(FileType::FrameScript),
    "fb" => FileTypeResolver::Static(FileType::FreeBasic),
    "fsh" => FileTypeResolver::Static(FileType::Fsh),
    "fsi" => FileTypeResolver::Static(FileType::FSharp),
    "fsx" => FileTypeResolver::Static(FileType::FSharp),
    "fc" => FileTypeResolver::Static(FileType::Func),
    "fusion" => FileTypeResolver::Static(FileType::Fusion),
    "gdb" => FileTypeResolver::Static(FileType::Gdb),
    "gdmo" => FileTypeResolver::Static(FileType::Gdmo),
    "mo" => FileTypeResolver::Static(FileType::Gdmo),
    "tscn" => FileTypeResolver::Static(FileType::GdResource),
    "tres" => FileTypeResolver::Static(FileType::GdResource),
    "gd" => FileTypeResolver::Static(FileType::GdScript),
    "gdshader" => FileTypeResolver::Static(FileType::GdShader),
    "shader" => FileTypeResolver::Static(FileType::GdShader),
    "ged" => FileTypeResolver::Static(FileType::Gedcom),
    "gel" => FileTypeResolver::Static(FileType::Gel),
    "gmi" => FileTypeResolver::Static(FileType::GemText),
    "gemini" => FileTypeResolver::Static(FileType::GemText),
    "gift" => FileTypeResolver::Static(FileType::Gift),
    "prettierignore" => FileTypeResolver::Static(FileType::GitIgnore),
    "gleam" => FileTypeResolver::Static(FileType::Gleam),
    "vert" => FileTypeResolver::Static(FileType::Glsl),
    "tesc" => FileTypeResolver::Static(FileType::Glsl),
    "tese" => FileTypeResolver::Static(FileType::Glsl),
    "glsl" => FileTypeResolver::Static(FileType::Glsl),
    "geom" => FileTypeResolver::Static(FileType::Glsl),
    "frag" => FileTypeResolver::Static(FileType::Glsl),
    "rgen" => FileTypeResolver::Static(FileType::Glsl),
    "rmiss" => FileTypeResolver::Static(FileType::Glsl),
    "rchit" => FileTypeResolver::Static(FileType::Glsl),
    "rahit" => FileTypeResolver::Static(FileType::Glsl),
    "rint" => FileTypeResolver::Static(FileType::Glsl),
    "rcall" => FileTypeResolver::Static(FileType::Glsl),
    "gn" => FileTypeResolver::Static(FileType::Gn),
    "gni" => FileTypeResolver::Static(FileType::Gn),
    "gnuplot" => FileTypeResolver::Static(FileType::GnuPlot),
    "gpi" => FileTypeResolver::Static(FileType::GnuPlot),
    "go" => FileTypeResolver::Static(FileType::Go),
    "gp" => FileTypeResolver::Static(FileType::Gp),
    "gs" => FileTypeResolver::Static(FileType::Grads),
    "gql" => FileTypeResolver::Static(FileType::GraphQl),
    "graphql" => FileTypeResolver::Static(FileType::GraphQl),
    "graphqls" => FileTypeResolver::Static(FileType::GraphQl),
    "gretl" => FileTypeResolver::Static(FileType::Gretl),
    "groff" => FileTypeResolver::Static(FileType::Groff),
    "mom" => FileTypeResolver::Static(FileType::Nroff),
    "gradle" => FileTypeResolver::Static(FileType::Groovy),
    "groovy" => FileTypeResolver::Static(FileType::Groovy),
    "gsp" => FileTypeResolver::Static(FileType::Gsp),
    "gjs" => FileTypeResolver::Static(FileType::JavaScriptGlimmer),
    "gts" => FileTypeResolver::Static(FileType::TypeScriptGlimmer),
    "gyp" => FileTypeResolver::Static(FileType::Gyp),
    "gypi" => FileTypeResolver::Static(FileType::Gyp),
    "hack" => FileTypeResolver::Static(FileType::Hack),
    "hackpartial" => FileTypeResolver::Static(FileType::Hack),
    "haml" => FileTypeResolver::Static(FileType::Haml),
    "hsm" => FileTypeResolver::Static(FileType::Hamster),
    "hbs" => FileTypeResolver::Static(FileType::Handlebars),
    "ha" => FileTypeResolver::Static(FileType::Hare),
    "hs-boot" => FileTypeResolver::Static(FileType::Haskell),
    "hsig" => FileTypeResolver::Static(FileType::Haskell),
    "hsc" => FileTypeResolver::Static(FileType::Haskell),
    "hs" => FileTypeResolver::Static(FileType::Haskell),
    "persistentmodels" => FileTypeResolver::Static(FileType::HaskellPersistent),
    "ht" => FileTypeResolver::Static(FileType::Haste),
    "htpp" => FileTypeResolver::Static(FileType::HastePreProc),
    "hx" => FileTypeResolver::Static(FileType::Haxe),
    "hcl" => FileTypeResolver::Static(FileType::Hcl),
    "hb" => FileTypeResolver::Static(FileType::Hb),
    "sum" => FileTypeResolver::Static(FileType::Hercules),
    "errsum" => FileTypeResolver::Static(FileType::Hercules),
    "ev" => FileTypeResolver::Static(FileType::Hercules),
    "vc" => FileTypeResolver::Static(FileType::Hercules),
    "heex" => FileTypeResolver::Static(FileType::Heex),
    "hex" => FileTypeResolver::Static(FileType::Hex),
    "a43" => FileTypeResolver::Static(FileType::Hex),
    "a90" => FileTypeResolver::Static(FileType::Hex),
    "h32" => FileTypeResolver::Static(FileType::Hex),
    "h80" => FileTypeResolver::Static(FileType::Hex),
    "h86" => FileTypeResolver::Static(FileType::Hex),
    "ihex" => FileTypeResolver::Static(FileType::Hex),
    "ihe" => FileTypeResolver::Static(FileType::Hex),
    "ihx" => FileTypeResolver::Static(FileType::Hex),
    "int" => FileTypeResolver::Static(FileType::Hex),
    "mcs" => FileTypeResolver::Static(FileType::Hex),
    "hjson" => FileTypeResolver::Static(FileType::HJson),
    "m3u" => FileTypeResolver::Static(FileType::HlsPlaylist),
    "m3u8" => FileTypeResolver::Static(FileType::HlsPlaylist),
    "hog" => FileTypeResolver::Static(FileType::Hog),
    "hws" => FileTypeResolver::Static(FileType::Hollywood),
    "hoon" => FileTypeResolver::Static(FileType::Hoon),
    "htt" => FileTypeResolver::Static(FileType::HtTest),
    "htb" => FileTypeResolver::Static(FileType::HtTest),
    "http" => FileTypeResolver::Static(FileType::Http),
    "hurl" => FileTypeResolver::Static(FileType::Hurl),
    "hy" => FileTypeResolver::Static(FileType::Hy),
    "hylo" => FileTypeResolver::Static(FileType::Hylo),
    "iba" => FileTypeResolver::Static(FileType::IBasic),
    "ibi" => FileTypeResolver::Static(FileType::IBasic),
    "icn" => FileTypeResolver::Static(FileType::Icon),
    "idr" => FileTypeResolver::Static(FileType::Idris),
    "inf" => FileTypeResolver::Static(FileType::Inform),
    "INF" => FileTypeResolver::Static(FileType::Inform),
    "ii" => FileTypeResolver::Static(FileType::Initng),
    "inko" => FileTypeResolver::Static(FileType::Inko),
    "ipkg" => FileTypeResolver::Static(FileType::Ipkg),
    "iss" => FileTypeResolver::Static(FileType::Iss),
    "mst" => FileTypeResolver::Static(FileType::Ist),
    "ist" => FileTypeResolver::Static(FileType::Ist),
    "ijs" => FileTypeResolver::Static(FileType::J),
    "JAL" => FileTypeResolver::Static(FileType::Jal),
    "jal" => FileTypeResolver::Static(FileType::Jal),
    "jpr" => FileTypeResolver::Static(FileType::Jam),
    "jpl" => FileTypeResolver::Static(FileType::Jam),
    "janet" => FileTypeResolver::Static(FileType::JanetSimple),
    "jav" => FileTypeResolver::Static(FileType::Java),
    "java" => FileTypeResolver::Static(FileType::Java),
    "jsh" => FileTypeResolver::Static(FileType::Java),
    "jj" => FileTypeResolver::Static(FileType::JavaCc),
    "jjt" => FileTypeResolver::Static(FileType::JavaCc),
    "es" => FileTypeResolver::Static(FileType::JavaScript),
    "mjs" => FileTypeResolver::Static(FileType::JavaScript),
    "javascript" => FileTypeResolver::Static(FileType::JavaScript),
    "js" => FileTypeResolver::Static(FileType::JavaScript),
    "jsm" => FileTypeResolver::Static(FileType::JavaScript),
    "cjs" => FileTypeResolver::Static(FileType::JavaScript),
    "jsx" => FileTypeResolver::Static(FileType::Jsx),
    "clp" => FileTypeResolver::Static(FileType::Jess),
    "jgr" => FileTypeResolver::Static(FileType::JGraph),
    "jinja" => FileTypeResolver::Static(FileType::Jinja),
    "jjdescription" => FileTypeResolver::Static(FileType::Jjdescription),
    "j73" => FileTypeResolver::Static(FileType::Jovial),
    "jov" => FileTypeResolver::Static(FileType::Jovial),
    "jovial" => FileTypeResolver::Static(FileType::Jovial),
    "properties" => FileTypeResolver::Static(FileType::JProperties),
    "jq" => FileTypeResolver::Static(FileType::Jq),
    "slnf" => FileTypeResolver::Static(FileType::Json),
    "json" => FileTypeResolver::Static(FileType::Json),
    "jsonp" => FileTypeResolver::Static(FileType::Json),
    "geojson" => FileTypeResolver::Static(FileType::Json),
    "mcmeta" => FileTypeResolver::Static(FileType::Json),
    "webmanifest" => FileTypeResolver::Static(FileType::Json),
    "ipynb" => FileTypeResolver::Static(FileType::Json),
    "jupyterlab-settings" => FileTypeResolver::Static(FileType::Json),
    "sublime-project" => FileTypeResolver::Static(FileType::Json),
    "sublime-settings" => FileTypeResolver::Static(FileType::Json),
    "sublime-workspace" => FileTypeResolver::Static(FileType::Json),
    "json-patch" => FileTypeResolver::Static(FileType::Json),
    "bd" => FileTypeResolver::Static(FileType::Json),
    "bda" => FileTypeResolver::Static(FileType::Json),
    "xci" => FileTypeResolver::Static(FileType::Json),
    "json5" => FileTypeResolver::Static(FileType::Json5),
    "jsonc" => FileTypeResolver::Static(FileType::JsonC),
    "jsonl" => FileTypeResolver::Static(FileType::JsonL),
    "jsonnet" => FileTypeResolver::Static(FileType::Jsonnet),
    "libsonnet" => FileTypeResolver::Static(FileType::Jsonnet),
    "jsp" => FileTypeResolver::Static(FileType::Jsp),
    "jl" => FileTypeResolver::Static(FileType::Julia),
    "just" => FileTypeResolver::Static(FileType::Just),
    "Just" => FileTypeResolver::Static(FileType::Just),
    "JUST" => FileTypeResolver::Static(FileType::Just),
    "kl" => FileTypeResolver::Static(FileType::Karel),
    "KL" => FileTypeResolver::Static(FileType::Karel),
    "kdl" => FileTypeResolver::Static(FileType::Kdl),
    "kerml" => FileTypeResolver::Static(FileType::Kerml),
    "kv" => FileTypeResolver::Static(FileType::Kivy),
    "kix" => FileTypeResolver::Static(FileType::Kix),
    "kk" => FileTypeResolver::Static(FileType::Koka),
    "kos" => FileTypeResolver::Static(FileType::Kos),
    "kts" => FileTypeResolver::Static(FileType::Kotlin),
    "kt" => FileTypeResolver::Static(FileType::Kotlin),
    "ktm" => FileTypeResolver::Static(FileType::Kotlin),
    "sub" => FileTypeResolver::Static(FileType::Krl),
    "Sub" => FileTypeResolver::Static(FileType::Krl),
    "SUB" => FileTypeResolver::Static(FileType::Krl),
    "ks" => FileTypeResolver::Static(FileType::KScript),
    "k" => FileTypeResolver::Static(FileType::Kwt),
    "ACE" => FileTypeResolver::Static(FileType::Lace),
    "ace" => FileTypeResolver::Static(FileType::Lace),
    "lalrpop" => FileTypeResolver::Static(FileType::Lalrpop),
    "latte" => FileTypeResolver::Static(FileType::Latte),
    "lte" => FileTypeResolver::Static(FileType::Latte),
    "ld" => FileTypeResolver::Static(FileType::Ld),
    "ldif" => FileTypeResolver::Static(FileType::Ldif),
    "lean" => FileTypeResolver::Static(FileType::Lean),
    "journal" => FileTypeResolver::Static(FileType::Ledger),
    "ldg" => FileTypeResolver::Static(FileType::Ledger),
    "ledger" => FileTypeResolver::Static(FileType::Ledger),
    "xrl" => FileTypeResolver::Static(FileType::Leex),
    "leo" => FileTypeResolver::Static(FileType::Leo),
    "less" => FileTypeResolver::Static(FileType::Less),
    "lex" => FileTypeResolver::Static(FileType::Lex),
    "lxx" => FileTypeResolver::Static(FileType::Lex),
    "l++" => FileTypeResolver::Static(FileType::Lex),
    "l" => FileTypeResolver::Static(FileType::Lex),
    "lhs" => FileTypeResolver::Static(FileType::LHaskell),
    "lidr" => FileTypeResolver::Static(FileType::Lidris2),
    "ly" => FileTypeResolver::Static(FileType::Lilypond),
    "ily" => FileTypeResolver::Static(FileType::Lilypond),
    "liquid" => FileTypeResolver::Static(FileType::Liquid),
    "liq" => FileTypeResolver::Static(FileType::Liquidsoap),
    "L" => FileTypeResolver::Static(FileType::Lisp),
    "lisp" => FileTypeResolver::Static(FileType::Lisp),
    "el" => FileTypeResolver::Static(FileType::Lisp),
    "lsp" => FileTypeResolver::Static(FileType::Lisp),
    "asd" => FileTypeResolver::Static(FileType::Lisp),
    "lt" => FileTypeResolver::Static(FileType::Lite),
    "lite" => FileTypeResolver::Static(FileType::Lite),
    "livemd" => FileTypeResolver::Static(FileType::Livebook),
    "ll" => FileTypeResolver::Static(FileType::Llvm),
    "lgt" => FileTypeResolver::Static(FileType::Logtalk),
    "lotos" => FileTypeResolver::Static(FileType::Lotos),
    "lot" => FileTypeResolver::Static(FileType::Lotos),
    "lout" => FileTypeResolver::Static(FileType::Lout),
    "lou" => FileTypeResolver::Static(FileType::Lout),
    "ulpc" => FileTypeResolver::Static(FileType::Lpc),
    "lpc" => FileTypeResolver::Static(FileType::Lpc),
    "lss" => FileTypeResolver::Static(FileType::Lss),
    "nse" => FileTypeResolver::Static(FileType::Lua),
    "rockspec" => FileTypeResolver::Static(FileType::Lua),
    "lua" => FileTypeResolver::Static(FileType::Lua),
    "tlu" => FileTypeResolver::Static(FileType::Lua),
    "luau" => FileTypeResolver::Static(FileType::Luau),
    "lrc" => FileTypeResolver::Static(FileType::Lyrics),
    "at" => FileTypeResolver::Static(FileType::M4),
    "quake" => FileTypeResolver::Static(FileType::M3Quake),
    "eml" => FileTypeResolver::Static(FileType::Mail),
    "mk" => FileTypeResolver::Static(FileType::Make),
    "mak" => FileTypeResolver::Static(FileType::Make),
    "page" => FileTypeResolver::Static(FileType::Mallard),
    "map" => FileTypeResolver::Static(FileType::Map),
    "mws" => FileTypeResolver::Static(FileType::Maple),
    "mpl" => FileTypeResolver::Static(FileType::Maple),
    "mv" => FileTypeResolver::Static(FileType::Maple),
    "mkdn" => FileTypeResolver::Static(FileType::Markdown),
    "md" => FileTypeResolver::Static(FileType::Markdown),
    "mdwn" => FileTypeResolver::Static(FileType::Markdown),
    "mkd" => FileTypeResolver::Static(FileType::Markdown),
    "markdown" => FileTypeResolver::Static(FileType::Markdown),
    "mdown" => FileTypeResolver::Static(FileType::Markdown),
    "masm" => FileTypeResolver::Static(FileType::Masm),
    "mhtml" => FileTypeResolver::Static(FileType::Mason),
    "mason" => FileTypeResolver::Static(FileType::Mason),
    "master" => FileTypeResolver::Static(FileType::Master),
    "mas" => FileTypeResolver::Static(FileType::Master),
    "demo" => FileTypeResolver::Static(FileType::Maxima),
    "dm1" => FileTypeResolver::Static(FileType::Maxima),
    "dm2" => FileTypeResolver::Static(FileType::Maxima),
    "dm3" => FileTypeResolver::Static(FileType::Maxima),
    "dmt" => FileTypeResolver::Static(FileType::Maxima),
    "wxm" => FileTypeResolver::Static(FileType::Maxima),
    "mbsyncrc" => FileTypeResolver::Static(FileType::Mbsync),
    "mw" => FileTypeResolver::Static(FileType::Mediawiki),
    "wiki" => FileTypeResolver::Static(FileType::Mediawiki),
    "mel" => FileTypeResolver::Static(FileType::Mel),
    "mmd" => FileTypeResolver::Static(FileType::Mermaid),
    "mmdc" => FileTypeResolver::Static(FileType::Mermaid),
    "mermaid" => FileTypeResolver::Static(FileType::Mermaid),
    "mf" => FileTypeResolver::Static(FileType::Mf),
    "mgl" => FileTypeResolver::Static(FileType::Mgl),
    "mgp" => FileTypeResolver::Static(FileType::Mgp),
    "my" => FileTypeResolver::Static(FileType::Mib),
    "mib" => FileTypeResolver::Static(FileType::Mib),
    "mix" => FileTypeResolver::Static(FileType::Mix),
    "mixal" => FileTypeResolver::Static(FileType::Mix),
    "mlir" => FileTypeResolver::Static(FileType::Mlir),
    "nb" => FileTypeResolver::Static(FileType::Mma),
    "wl" => FileTypeResolver::Static(FileType::Mma),
    "mmp" => FileTypeResolver::Static(FileType::Mmp),
    "DEF" => FileTypeResolver::Static(FileType::Modula2),
    "m3" => FileTypeResolver::Static(FileType::Modula3),
    "i3" => FileTypeResolver::Static(FileType::Modula3),
    "mg" => FileTypeResolver::Static(FileType::Modula3),
    "ig" => FileTypeResolver::Static(FileType::Modula3),
    "lm3" => FileTypeResolver::Static(FileType::Modula3),
    "mojo" => FileTypeResolver::Static(FileType::Mojo),
    "🔥" => FileTypeResolver::Static(FileType::Mojo),
    "ssc" => FileTypeResolver::Static(FileType::Monk),
    "monk" => FileTypeResolver::Static(FileType::Monk),
    "tsc" => FileTypeResolver::Static(FileType::Monk),
    "isc" => FileTypeResolver::Static(FileType::Monk),
    "moo" => FileTypeResolver::Static(FileType::Moo),
    "moon" => FileTypeResolver::Static(FileType::MoonScript),
    "move" => FileTypeResolver::Static(FileType::Move),
    "mp" => FileTypeResolver::Static(FileType::Mp),
    "mpiv" => FileTypeResolver::Static(FileType::MpMetafun),
    "mpvi" => FileTypeResolver::Static(FileType::MpMetafun),
    "mpxl" => FileTypeResolver::Static(FileType::MpMetafun),
    "mof" => FileTypeResolver::Static(FileType::Msidl),
    "odl" => FileTypeResolver::Static(FileType::Msidl),
    "msql" => FileTypeResolver::Static(FileType::Msql),
    "mss" => FileTypeResolver::Static(FileType::Mss),
    "mu" => FileTypeResolver::Static(FileType::Mupad),
    "mush" => FileTypeResolver::Static(FileType::Mush),
    "mustache" => FileTypeResolver::Static(FileType::Mustache),
    "mysql" => FileTypeResolver::Static(FileType::MySql),
    "n1ql" => FileTypeResolver::Static(FileType::N1ql),
    "nql" => FileTypeResolver::Static(FileType::N1ql),
    "nanorc" => FileTypeResolver::Static(FileType::Nanorc),
    "nasm" => FileTypeResolver::Static(FileType::Nasm),
    "NSA" => FileTypeResolver::Static(FileType::Natural),
    "NSC" => FileTypeResolver::Static(FileType::Natural),
    "NSG" => FileTypeResolver::Static(FileType::Natural),
    "NSL" => FileTypeResolver::Static(FileType::Natural),
    "NSM" => FileTypeResolver::Static(FileType::Natural),
    "NSN" => FileTypeResolver::Static(FileType::Natural),
    "NSP" => FileTypeResolver::Static(FileType::Natural),
    "NSS" => FileTypeResolver::Static(FileType::Natural),
    "ncf" => FileTypeResolver::Static(FileType::Ncf),
    "nginx" => FileTypeResolver::Static(FileType::Nginx),
    "ncl" => FileTypeResolver::Static(FileType::Nickel),
    "nim" => FileTypeResolver::Static(FileType::Nim),
    "nims" => FileTypeResolver::Static(FileType::Nim),
    "nimble" => FileTypeResolver::Static(FileType::Nim),
    "ninja" => FileTypeResolver::Static(FileType::Ninja),
    "nix" => FileTypeResolver::Static(FileType::Nix),
    "norg" => FileTypeResolver::Static(FileType::Norg),
    "nq" => FileTypeResolver::Static(FileType::Nq),
    "nqc" => FileTypeResolver::Static(FileType::Nqc),
    "roff" => FileTypeResolver::Static(FileType::Nroff),
    "tmac" => FileTypeResolver::Static(FileType::Nroff),
    "man" => FileTypeResolver::Static(FileType::Nroff),
    "nr" => FileTypeResolver::Static(FileType::Nroff),
    "tr" => FileTypeResolver::Static(FileType::Nroff),
    "nsi" => FileTypeResolver::Static(FileType::Nsis),
    "nsh" => FileTypeResolver::Static(FileType::Nsis),
    "nt" => FileTypeResolver::Static(FileType::Ntriples),
    "nu" => FileTypeResolver::Static(FileType::Nu),
    "nbt" => FileTypeResolver::Static(FileType::Numbat),
    "obj" => FileTypeResolver::Static(FileType::Obj),
    "objdump" => FileTypeResolver::Static(FileType::Objdump),
    "cppobjdump" => FileTypeResolver::Static(FileType::Objdump),
    "obl" => FileTypeResolver::Static(FileType::Obse),
    "obse" => FileTypeResolver::Static(FileType::Obse),
    "oblivion" => FileTypeResolver::Static(FileType::Obse),
    "obscript" => FileTypeResolver::Static(FileType::Obse),
    "mlt" => FileTypeResolver::Static(FileType::OCaml),
    "mly" => FileTypeResolver::Static(FileType::OCaml),
    "mll" => FileTypeResolver::Static(FileType::OCaml),
    "mlp" => FileTypeResolver::Static(FileType::OCaml),
    "mlip" => FileTypeResolver::Static(FileType::OCaml),
    "mli" => FileTypeResolver::Static(FileType::OCamlInterface),
    "ml" => FileTypeResolver::Static(FileType::OCaml),
    "occ" => FileTypeResolver::Static(FileType::Occam),
    "odin" => FileTypeResolver::Static(FileType::Odin),
    "xom" => FileTypeResolver::Static(FileType::OmniMark),
    "xin" => FileTypeResolver::Static(FileType::OmniMark),
    "opam" => FileTypeResolver::Static(FileType::Opam),
    "or" => FileTypeResolver::Static(FileType::OpenRoad),
    "scad" => FileTypeResolver::Static(FileType::OpenScad),
    "ovpn" => FileTypeResolver::Static(FileType::OpenVpn),
    "opl" => FileTypeResolver::Static(FileType::Opl),
    "opL" => FileTypeResolver::Static(FileType::Opl),
    "oPl" => FileTypeResolver::Static(FileType::Opl),
    "oPL" => FileTypeResolver::Static(FileType::Opl),
    "Opl" => FileTypeResolver::Static(FileType::Opl),
    "OpL" => FileTypeResolver::Static(FileType::Opl),
    "OPl" => FileTypeResolver::Static(FileType::Opl),
    "OPL" => FileTypeResolver::Static(FileType::Opl),
    "ora" => FileTypeResolver::Static(FileType::Ora),
    "org" => FileTypeResolver::Static(FileType::Org),
    "org_archive" => FileTypeResolver::Static(FileType::Org),
    "pandoc" => FileTypeResolver::Static(FileType::Pandoc),
    "pdk" => FileTypeResolver::Static(FileType::Pandoc),
    "pd" => FileTypeResolver::Static(FileType::Pandoc),
    "pdc" => FileTypeResolver::Static(FileType::Pandoc),
    "pxsl" => FileTypeResolver::Static(FileType::Papp),
    "papp" => FileTypeResolver::Static(FileType::Papp),
    "pxml" => FileTypeResolver::Static(FileType::Papp),
    "pas" => FileTypeResolver::Static(FileType::Pascal),
    "lpr" => FileTypeResolver::Static(FileType::Pascal),
    "dpr" => FileTypeResolver::Static(FileType::Pascal),
    "txtpb" => FileTypeResolver::Static(FileType::Pbtxt),
    "textproto" => FileTypeResolver::Static(FileType::Pbtxt),
    "textpb" => FileTypeResolver::Static(FileType::Pbtxt),
    "pbtxt" => FileTypeResolver::Static(FileType::Pbtxt),
    "aconfig" => FileTypeResolver::Static(FileType::Pbtxt),
    "g" => FileTypeResolver::Static(FileType::Pccts),
    "pcmk" => FileTypeResolver::Static(FileType::Pcmk),
    "pdf" => FileTypeResolver::Static(FileType::Pdf),
    "pem" => FileTypeResolver::Static(FileType::Pem),
    "cer" => FileTypeResolver::Static(FileType::Pem),
    "crt" => FileTypeResolver::Static(FileType::Pem),
    "csr" => FileTypeResolver::Static(FileType::Pem),
    "plx" => FileTypeResolver::Static(FileType::Perl),
    "prisma" => FileTypeResolver::Static(FileType::Prisma),
    "psgi" => FileTypeResolver::Static(FileType::Perl),
    "al" => FileTypeResolver::Static(FileType::Perl),
    "ctp" => FileTypeResolver::Static(FileType::Php),
    "php" => FileTypeResolver::Static(FileType::Php),
    "phpt" => FileTypeResolver::Static(FileType::Php),
    "php0" => FileTypeResolver::Static(FileType::Php),
    "php1" => FileTypeResolver::Static(FileType::Php),
    "php2" => FileTypeResolver::Static(FileType::Php),
    "php3" => FileTypeResolver::Static(FileType::Php),
    "php4" => FileTypeResolver::Static(FileType::Php),
    "php5" => FileTypeResolver::Static(FileType::Php),
    "php6" => FileTypeResolver::Static(FileType::Php),
    "php7" => FileTypeResolver::Static(FileType::Php),
    "php8" => FileTypeResolver::Static(FileType::Php),
    "php9" => FileTypeResolver::Static(FileType::Php),
    "phtml" => FileTypeResolver::Static(FileType::Php),
    "theme" => FileTypeResolver::Static(FileType::Php),
    "pike" => FileTypeResolver::Static(FileType::Pike),
    "pmod" => FileTypeResolver::Static(FileType::Pike),
    "rcp" => FileTypeResolver::Static(FileType::Pilrc),
    "pkl" => FileTypeResolver::Static(FileType::Pkl),
    "pcf" => FileTypeResolver::Static(FileType::Pkl),
    "pli" => FileTypeResolver::Static(FileType::Pli),
    "pl1" => FileTypeResolver::Static(FileType::Pli),
    "p36" => FileTypeResolver::Static(FileType::Plm),
    "plm" => FileTypeResolver::Static(FileType::Plm),
    "pac" => FileTypeResolver::Static(FileType::Plm),
    "plp" => FileTypeResolver::Static(FileType::Plp),
    "pls" => FileTypeResolver::Static(FileType::Plsql),
    "plsql" => FileTypeResolver::Static(FileType::Plsql),
    "po" => FileTypeResolver::Static(FileType::Po),
    "pot" => FileTypeResolver::Static(FileType::Po),
    "pod" => FileTypeResolver::Static(FileType::Pod),
    "filter" => FileTypeResolver::Static(FileType::PoeFilter),
    "pk" => FileTypeResolver::Static(FileType::Poke),
    "pony" => FileTypeResolver::Static(FileType::Pony),
    "ps" => FileTypeResolver::Static(FileType::Postscr),
    "epsi" => FileTypeResolver::Static(FileType::Postscr),
    "afm" => FileTypeResolver::Static(FileType::Postscr),
    "epsf" => FileTypeResolver::Static(FileType::Postscr),
    "eps" => FileTypeResolver::Static(FileType::Postscr),
    "pfa" => FileTypeResolver::Static(FileType::Postscr),
    "ai" => FileTypeResolver::Static(FileType::Postscr),
    "pov" => FileTypeResolver::Static(FileType::Pov),
    "ppd" => FileTypeResolver::Static(FileType::Ppd),
    "it" => FileTypeResolver::Static(FileType::Ppwiz),
    "ih" => FileTypeResolver::Static(FileType::Ppwiz),
    "pq" => FileTypeResolver::Static(FileType::Pq),
    "action" => FileTypeResolver::Static(FileType::Privoxy),
    "pc" => FileTypeResolver::Static(FileType::Proc),
    "pdb" => FileTypeResolver::Static(FileType::Prolog),
    "pml" => FileTypeResolver::Static(FileType::Promela),
    "proto" => FileTypeResolver::Static(FileType::Proto),
    "prql" => FileTypeResolver::Static(FileType::Prql),
    "psd1" => FileTypeResolver::Static(FileType::Ps1),
    "psm1" => FileTypeResolver::Static(FileType::Ps1),
    "ps1" => FileTypeResolver::Static(FileType::Ps1),
    "pssc" => FileTypeResolver::Static(FileType::Ps1),
    "ps1xml" => FileTypeResolver::Static(FileType::Ps1Xml),
    "psf" => FileTypeResolver::Static(FileType::Psf),
    "psl" => FileTypeResolver::Static(FileType::Psl),
    "ptx" => FileTypeResolver::Static(FileType::Ptx),
    "pug" => FileTypeResolver::Static(FileType::Pug),
    "purs" => FileTypeResolver::Static(FileType::Purescript),
    "arr" => FileTypeResolver::Static(FileType::Pyret),
    "pxd" => FileTypeResolver::Static(FileType::Pyrex),
    "pxi" => FileTypeResolver::Static(FileType::Pyrex),
    "pyx" => FileTypeResolver::Static(FileType::Pyrex),
    "pyx+" => FileTypeResolver::Static(FileType::Pyrex),
    "pyw" => FileTypeResolver::Static(FileType::Python),
    "py" => FileTypeResolver::Static(FileType::Python),
    "pyi" => FileTypeResolver::Static(FileType::Python),
    "ptl" => FileTypeResolver::Static(FileType::Python),
    "ipy" => FileTypeResolver::Static(FileType::Python),
    "ql" => FileTypeResolver::Static(FileType::Ql),
    "qll" => FileTypeResolver::Static(FileType::Ql),
    "qml" => FileTypeResolver::Static(FileType::Qmljs),
    "qbs" => FileTypeResolver::Static(FileType::Qmljs),
    "qmd" => FileTypeResolver::Static(FileType::Quarto),
    "bms" => FileTypeResolver::Static(FileType::Quickbms),
    "rkt" => FileTypeResolver::Static(FileType::Racket),
    "rktd" => FileTypeResolver::Static(FileType::Racket),
    "rktl" => FileTypeResolver::Static(FileType::Racket),
    "rad" => FileTypeResolver::Static(FileType::Radiance),
    "mat" => FileTypeResolver::Static(FileType::Radiance),
    "pod6" => FileTypeResolver::Static(FileType::Raku),
    "rakudoc" => FileTypeResolver::Static(FileType::Raku),
    "rakutest" => FileTypeResolver::Static(FileType::Raku),
    "rakumod" => FileTypeResolver::Static(FileType::Raku),
    "pm6" => FileTypeResolver::Static(FileType::Raku),
    "raku" => FileTypeResolver::Static(FileType::Raku),
    "t6" => FileTypeResolver::Static(FileType::Raku),
    "p6" => FileTypeResolver::Static(FileType::Raku),
    "raml" => FileTypeResolver::Static(FileType::Raml),
    "sysx" => FileTypeResolver::Static(FileType::Rapid),
    "sysX" => FileTypeResolver::Static(FileType::Rapid),
    "Sysx" => FileTypeResolver::Static(FileType::Rapid),
    "SysX" => FileTypeResolver::Static(FileType::Rapid),
    "SYSX" => FileTypeResolver::Static(FileType::Rapid),
    "SYSx" => FileTypeResolver::Static(FileType::Rapid),
    "modx" => FileTypeResolver::Static(FileType::Rapid),
    "modX" => FileTypeResolver::Static(FileType::Rapid),
    "Modx" => FileTypeResolver::Static(FileType::Rapid),
    "ModX" => FileTypeResolver::Static(FileType::Rapid),
    "MODX" => FileTypeResolver::Static(FileType::Rapid),
    "MODx" => FileTypeResolver::Static(FileType::Rapid),
    "rasi" => FileTypeResolver::Static(FileType::Rasi),
    "rasinc" => FileTypeResolver::Static(FileType::Rasi),
    "rbs" => FileTypeResolver::Static(FileType::Rbs),
    "rego" => FileTypeResolver::Static(FileType::Rego),
    "rem" => FileTypeResolver::Static(FileType::Remind),
    "remind" => FileTypeResolver::Static(FileType::Remind),
    "pip" => FileTypeResolver::Static(FileType::Requirements),
    "res" => FileTypeResolver::Static(FileType::ReScript),
    "resi" => FileTypeResolver::Static(FileType::ReScript),
    "frt" => FileTypeResolver::Static(FileType::Reva),
    "testUnit" => FileTypeResolver::Static(FileType::Rexx),
    "rex" => FileTypeResolver::Static(FileType::Rexx),
    "orx" => FileTypeResolver::Static(FileType::Rexx),
    "rexx" => FileTypeResolver::Static(FileType::Rexx),
    "jrexx" => FileTypeResolver::Static(FileType::Rexx),
    "rxj" => FileTypeResolver::Static(FileType::Rexx),
    "rexxj" => FileTypeResolver::Static(FileType::Rexx),
    "testGroup" => FileTypeResolver::Static(FileType::Rexx),
    "rxo" => FileTypeResolver::Static(FileType::Rexx),
    "Rd" => FileTypeResolver::Static(FileType::RHelp),
    "rd" => FileTypeResolver::Static(FileType::RHelp),
    "rib" => FileTypeResolver::Static(FileType::Rib),
    "Rmd" => FileTypeResolver::Static(FileType::Rmd),
    "rmd" => FileTypeResolver::Static(FileType::Rmd),
    "smd" => FileTypeResolver::Static(FileType::Rmd),
    "Smd" => FileTypeResolver::Static(FileType::Rmd),
    "rnc" => FileTypeResolver::Static(FileType::Rnc),
    "rng" => FileTypeResolver::Static(FileType::Rng),
    "rnw" => FileTypeResolver::Static(FileType::Rnoweb),
    "snw" => FileTypeResolver::Static(FileType::Rnoweb),
    "Rnw" => FileTypeResolver::Static(FileType::Rnoweb),
    "Snw" => FileTypeResolver::Static(FileType::Rnoweb),
    "robot" => FileTypeResolver::Static(FileType::Robot),
    "resource" => FileTypeResolver::Static(FileType::Robot),
    "roc" => FileTypeResolver::Static(FileType::Roc),
    "ron" => FileTypeResolver::Static(FileType::Ron),
    "rsc" => FileTypeResolver::Static(FileType::RouterOs),
    "x" => FileTypeResolver::Static(FileType::Rpcgen),
    "rpgle" => FileTypeResolver::Static(FileType::Rpgle),
    "rpgleinc" => FileTypeResolver::Static(FileType::Rpgle),
    "rpl" => FileTypeResolver::Static(FileType::Rpl),
    "Srst" => FileTypeResolver::Static(FileType::Rrst),
    "srst" => FileTypeResolver::Static(FileType::Rrst),
    "Rrst" => FileTypeResolver::Static(FileType::Rrst),
    "rrst" => FileTypeResolver::Static(FileType::Rrst),
    "rst" => FileTypeResolver::Static(FileType::Rst),
    "rtf" => FileTypeResolver::Static(FileType::Rtf),
    "rjs" => FileTypeResolver::Static(FileType::Ruby),
    "rxml" => FileTypeResolver::Static(FileType::Ruby),
    "rb" => FileTypeResolver::Static(FileType::Ruby),
    "rbi" => FileTypeResolver::Static(FileType::Ruby),
    "rant" => FileTypeResolver::Static(FileType::Ruby),
    "ru" => FileTypeResolver::Static(FileType::Ruby),
    "rbw" => FileTypeResolver::Static(FileType::Ruby),
    "gemspec" => FileTypeResolver::Static(FileType::Ruby),
    "builder" => FileTypeResolver::Static(FileType::Ruby),
    "rake" => FileTypeResolver::Static(FileType::Ruby),
    "rs" => FileTypeResolver::Static(FileType::Rust),
    "sa" => FileTypeResolver::Static(FileType::Sather),
    "sage" => FileTypeResolver::Static(FileType::Sage),
    "sls" => FileTypeResolver::Static(FileType::Salt),
    "sas" => FileTypeResolver::Static(FileType::Sas),
    "sass" => FileTypeResolver::Static(FileType::Sass),
    "sbt" => FileTypeResolver::Static(FileType::Sbt),
    "scala" => FileTypeResolver::Static(FileType::Scala),
    "mill" => FileTypeResolver::Static(FileType::Scala),
    "ss" => FileTypeResolver::Static(FileType::Scheme),
    "scm" => FileTypeResolver::Static(FileType::Scheme),
    "sld" => FileTypeResolver::Static(FileType::Scheme),
    "stsg" => FileTypeResolver::Static(FileType::Scheme),
    "sce" => FileTypeResolver::Static(FileType::Scilab),
    "sci" => FileTypeResolver::Static(FileType::Scilab),
    "scss" => FileTypeResolver::Static(FileType::Scss),
    "sd" => FileTypeResolver::Static(FileType::Sd),
    "sdc" => FileTypeResolver::Static(FileType::Sdc),
    "pr" => FileTypeResolver::Static(FileType::Sdl),
    "sdl" => FileTypeResolver::Static(FileType::Sdl),
    "sed" => FileTypeResolver::Static(FileType::Sed),
    "sexp" => FileTypeResolver::Static(FileType::Sexplib),
    "lo" => FileTypeResolver::Static(FileType::Sh),
    "la" => FileTypeResolver::Static(FileType::Sh),
    "lai" => FileTypeResolver::Static(FileType::Sh),
    "mdd" => FileTypeResolver::Static(FileType::Sh),
    "slang" => FileTypeResolver::Static(FileType::Slang),
    "sieve" => FileTypeResolver::Static(FileType::Sieve),
    "siv" => FileTypeResolver::Static(FileType::Sieve),
    "sim" => FileTypeResolver::Static(FileType::Simula),
    "s85" => FileTypeResolver::Static(FileType::Sinda),
    "sin" => FileTypeResolver::Static(FileType::Sinda),
    "ssm" => FileTypeResolver::Static(FileType::Sisu),
    "sst" => FileTypeResolver::Static(FileType::Sisu),
    "ssi" => FileTypeResolver::Static(FileType::Sisu),
    "_sst" => FileTypeResolver::Static(FileType::Sisu),
    "-sst" => FileTypeResolver::Static(FileType::Sisu),
    "il" => FileTypeResolver::Static(FileType::Skill),
    "ils" => FileTypeResolver::Static(FileType::Skill),
    "cdf" => FileTypeResolver::Static(FileType::Skill),
    "sl" => FileTypeResolver::Static(FileType::Slang),
    "ice" => FileTypeResolver::Static(FileType::Slice),
    "slint" => FileTypeResolver::Static(FileType::Slint),
    "score" => FileTypeResolver::Static(FileType::Slrnsc),
    "sol" => FileTypeResolver::Static(FileType::Solidity),
    "smali" => FileTypeResolver::Static(FileType::Smali),
    "tpl" => FileTypeResolver::Static(FileType::Smarty),
    "ihlp" => FileTypeResolver::Static(FileType::Smcl),
    "smcl" => FileTypeResolver::Static(FileType::Smcl),
    "hlp" => FileTypeResolver::Static(FileType::Smcl),
    "smith" => FileTypeResolver::Static(FileType::Smith),
    "smt" => FileTypeResolver::Static(FileType::Smith),
    "smithy" => FileTypeResolver::Static(FileType::Smithy),
    "sml" => FileTypeResolver::Static(FileType::Sml),
    "smk" => FileTypeResolver::Static(FileType::Snakemake),
    "spt" => FileTypeResolver::Static(FileType::Snobol4),
    "sno" => FileTypeResolver::Static(FileType::Snobol4),
    "sln" => FileTypeResolver::Static(FileType::Solution),
    "soy" => FileTypeResolver::Static(FileType::Soy),
    "sparql" => FileTypeResolver::Static(FileType::Sparql),
    "rq" => FileTypeResolver::Static(FileType::Sparql),
    "spec" => FileTypeResolver::Static(FileType::Spec),
    "spice" => FileTypeResolver::Static(FileType::Spice),
    "sp" => FileTypeResolver::Static(FileType::Spice),
    "spd" => FileTypeResolver::Static(FileType::Spup),
    "spdata" => FileTypeResolver::Static(FileType::Spup),
    "speedup" => FileTypeResolver::Static(FileType::Spup),
    "spi" => FileTypeResolver::Static(FileType::Spyce),
    "spy" => FileTypeResolver::Static(FileType::Spyce),
    "tyc" => FileTypeResolver::Static(FileType::Sql),
    "pkb" => FileTypeResolver::Static(FileType::Sql),
    "tyb" => FileTypeResolver::Static(FileType::Sql),
    "pks" => FileTypeResolver::Static(FileType::Sql),
    "sqlj" => FileTypeResolver::Static(FileType::Sqlj),
    "sqi" => FileTypeResolver::Static(FileType::Sqr),
    "sqr" => FileTypeResolver::Static(FileType::Sqr),
    "nut" => FileTypeResolver::Static(FileType::Squirrel),
    "s28" => FileTypeResolver::Static(FileType::Srec),
    "s37" => FileTypeResolver::Static(FileType::Srec),
    "srec" => FileTypeResolver::Static(FileType::Srec),
    "mot" => FileTypeResolver::Static(FileType::Srec),
    "s19" => FileTypeResolver::Static(FileType::Srec),
    "srt" => FileTypeResolver::Static(FileType::Srt),
    "ssa" => FileTypeResolver::Static(FileType::Ssa),
    "ass" => FileTypeResolver::Static(FileType::Ssa),
    "st" => FileTypeResolver::Static(FileType::St),
    "ipd" => FileTypeResolver::Static(FileType::Starlark),
    "sky" => FileTypeResolver::Static(FileType::Starlark),
    "star" => FileTypeResolver::Static(FileType::Starlark),
    "starlark" => FileTypeResolver::Static(FileType::Starlark),
    "imata" => FileTypeResolver::Static(FileType::Stata),
    "do" => FileTypeResolver::Static(FileType::Stata),
    "mata" => FileTypeResolver::Static(FileType::Stata),
    "ado" => FileTypeResolver::Static(FileType::Stata),
    "stp" => FileTypeResolver::Static(FileType::Stp),
    "styl" => FileTypeResolver::Static(FileType::Stylus),
    "stylus" => FileTypeResolver::Static(FileType::Stylus),
    "quark" => FileTypeResolver::Static(FileType::Supercollider),
    "sface" => FileTypeResolver::Static(FileType::Surface),
    "svelte" => FileTypeResolver::Static(FileType::Svelte),
    "svg" => FileTypeResolver::Static(FileType::Svg),
    "sw" => FileTypeResolver::Static(FileType::Sway),
    "swift" => FileTypeResolver::Static(FileType::Swift),
    "swiftinterface" => FileTypeResolver::Static(FileType::Swift),
    "swig" => FileTypeResolver::Static(FileType::Swig),
    "swg" => FileTypeResolver::Static(FileType::Swig),
    "sysml" => FileTypeResolver::Static(FileType::Sysml),
    "svh" => FileTypeResolver::Static(FileType::SystemVerilog),
    "sv" => FileTypeResolver::Static(FileType::SystemVerilog),
    "cmm" => FileTypeResolver::Static(FileType::Trace32),
    "cmmt" => FileTypeResolver::Static(FileType::Trace32),
    "t32" => FileTypeResolver::Static(FileType::Trace32),
    "td" => FileTypeResolver::Static(FileType::Tablegen),
    "tak" => FileTypeResolver::Static(FileType::Tak),
    "tal" => FileTypeResolver::Static(FileType::Tal),
    "task" => FileTypeResolver::Static(FileType::TaskEdit),
    "tm" => FileTypeResolver::Static(FileType::Tcl),
    "tcl" => FileTypeResolver::Static(FileType::Tcl),
    "itk" => FileTypeResolver::Static(FileType::Tcl),
    "itcl" => FileTypeResolver::Static(FileType::Tcl),
    "tk" => FileTypeResolver::Static(FileType::Tcl),
    "jacl" => FileTypeResolver::Static(FileType::Tcl),
    "tl" => FileTypeResolver::Static(FileType::Teal),
    "templ" => FileTypeResolver::Static(FileType::Templ),
    "tmpl" => FileTypeResolver::Static(FileType::Template),
    "tera" => FileTypeResolver::Static(FileType::Tera),
    "ti" => FileTypeResolver::Static(FileType::Terminfo),
    "dtx" => FileTypeResolver::Static(FileType::Tex),
    "ltx" => FileTypeResolver::Static(FileType::Tex),
    "bbl" => FileTypeResolver::Static(FileType::Tex),
    "latex" => FileTypeResolver::Static(FileType::Tex),
    "sty" => FileTypeResolver::Static(FileType::Tex),
    "pgf" => FileTypeResolver::Static(FileType::Tex),
    "nlo" => FileTypeResolver::Static(FileType::Tex),
    "nls" => FileTypeResolver::Static(FileType::Tex),
    "thm" => FileTypeResolver::Static(FileType::Tex),
    "eps_tex" => FileTypeResolver::Static(FileType::Tex),
    "pdf_tex" => FileTypeResolver::Static(FileType::Tex),
    "pygtex" => FileTypeResolver::Static(FileType::Tex),
    "pygstyle" => FileTypeResolver::Static(FileType::Tex),
    "clo" => FileTypeResolver::Static(FileType::Tex),
    "aux" => FileTypeResolver::Static(FileType::Tex),
    "brf" => FileTypeResolver::Static(FileType::Tex),
    "ind" => FileTypeResolver::Static(FileType::Tex),
    "lof" => FileTypeResolver::Static(FileType::Tex),
    "loe" => FileTypeResolver::Static(FileType::Tex),
    "nav" => FileTypeResolver::Static(FileType::Tex),
    "vrb" => FileTypeResolver::Static(FileType::Tex),
    "ins" => FileTypeResolver::Static(FileType::Tex),
    "tikz" => FileTypeResolver::Static(FileType::Tex),
    "bbx" => FileTypeResolver::Static(FileType::Tex),
    "cbx" => FileTypeResolver::Static(FileType::Tex),
    "beamer" => FileTypeResolver::Static(FileType::Tex),
    "texi" => FileTypeResolver::Static(FileType::TexInfo),
    "txi" => FileTypeResolver::Static(FileType::TexInfo),
    "texinfo" => FileTypeResolver::Static(FileType::TexInfo),
    "text" => FileTypeResolver::Static(FileType::Text),
    "tfvars" => FileTypeResolver::Static(FileType::TerraformVars),
    "thrift" => FileTypeResolver::Static(FileType::Thrift),
    "tig" => FileTypeResolver::Static(FileType::Tiger),
    "Tiltfile" => FileTypeResolver::Static(FileType::Tiltfile),
    "tiltfile" => FileTypeResolver::Static(FileType::Tiltfile),
    "tla" => FileTypeResolver::Static(FileType::Tla),
    "tli" => FileTypeResolver::Static(FileType::Tli),
    "toml" => FileTypeResolver::Static(FileType::Toml),
    "tpp" => FileTypeResolver::Static(FileType::Tpp),
    "treetop" => FileTypeResolver::Static(FileType::Treetop),
    "trig" => FileTypeResolver::Static(FileType::Trig),
    "slt" => FileTypeResolver::Static(FileType::Tsalt),
    "tsscl" => FileTypeResolver::Static(FileType::Tsscl),
    "tssgm" => FileTypeResolver::Static(FileType::Tssgm),
    "tssop" => FileTypeResolver::Static(FileType::Tssop),
    "tsv" => FileTypeResolver::Static(FileType::Tsv),
    "tutor" => FileTypeResolver::Static(FileType::Tutor),
    "twig" => FileTypeResolver::Static(FileType::Twig),
    "mts" => FileTypeResolver::Static(FileType::TypeScript),
    "cts" => FileTypeResolver::Static(FileType::TypeScript),
    "tsx" => FileTypeResolver::Static(FileType::Tsx),
    "tsp" => FileTypeResolver::Static(FileType::Typespec),
    "uc" => FileTypeResolver::Static(FileType::Uc),
    "uit" => FileTypeResolver::Static(FileType::Uil),
    "uil" => FileTypeResolver::Static(FileType::Uil),
    "ungram" => FileTypeResolver::Static(FileType::Ungrammar),
    "u" => FileTypeResolver::Static(FileType::Unison),
    "uu" => FileTypeResolver::Static(FileType::Unison),
    "url" => FileTypeResolver::Static(FileType::UrlShortcut),
    "usd" => FileTypeResolver::Static(FileType::Usd),
    "usda" => FileTypeResolver::Static(FileType::Usd),
    "vsh" => FileTypeResolver::Static(FileType::V),
    "vv" => FileTypeResolver::Static(FileType::V),
    "ctl" => FileTypeResolver::Static(FileType::Vb),
    "dob" => FileTypeResolver::Static(FileType::Vb),
    "dsm" => FileTypeResolver::Static(FileType::Vb),
    "dsr" => FileTypeResolver::Static(FileType::Vb),
    "pag" => FileTypeResolver::Static(FileType::Vb),
    "sba" => FileTypeResolver::Static(FileType::Vb),
    "vb" => FileTypeResolver::Static(FileType::Vb),
    "vbs" => FileTypeResolver::Static(FileType::Vb),
    "vba" => FileTypeResolver::Static(FileType::Vim),
    "vdf" => FileTypeResolver::Static(FileType::Vdf),
    "vdmpp" => FileTypeResolver::Static(FileType::Vdmpp),
    "vpp" => FileTypeResolver::Static(FileType::Vdmpp),
    "vdmrt" => FileTypeResolver::Static(FileType::Vdmrt),
    "vdmsl" => FileTypeResolver::Static(FileType::Vdmsl),
    "vdm" => FileTypeResolver::Static(FileType::Vdmsl),
    "vto" => FileTypeResolver::Static(FileType::Vento),
    "vr" => FileTypeResolver::Static(FileType::Vera),
    "vri" => FileTypeResolver::Static(FileType::Vera),
    "vrh" => FileTypeResolver::Static(FileType::Vera),
    "va" => FileTypeResolver::Static(FileType::Verilogams),
    "vams" => FileTypeResolver::Static(FileType::Verilogams),
    "vhdl" => FileTypeResolver::Static(FileType::Vhdl),
    "vst" => FileTypeResolver::Static(FileType::Vhdl),
    "vhd" => FileTypeResolver::Static(FileType::Vhdl),
    "hdl" => FileTypeResolver::Static(FileType::Vhdl),
    "vho" => FileTypeResolver::Static(FileType::Vhdl),
    "vbe" => FileTypeResolver::Static(FileType::Vhdl),
    "tape" => FileTypeResolver::Static(FileType::Vhs),
    "vim" => FileTypeResolver::Static(FileType::Vim),
    "mar" => FileTypeResolver::Static(FileType::Vmasm),
    "cm" => FileTypeResolver::Static(FileType::Voscm),
    "wrl" => FileTypeResolver::Static(FileType::Vrml),
    "vroom" => FileTypeResolver::Static(FileType::Vroom),
    "vue" => FileTypeResolver::Static(FileType::Vue),
    "wast" => FileTypeResolver::Static(FileType::Wast),
    "wat" => FileTypeResolver::Static(FileType::Wat),
    "wdl" => FileTypeResolver::Static(FileType::Wdl),
    "wm" => FileTypeResolver::Static(FileType::WebMacro),
    "wgsl" => FileTypeResolver::Static(FileType::Wgsl),
    "wbt" => FileTypeResolver::Static(FileType::WinBatch),
    "wit" => FileTypeResolver::Static(FileType::Wit),
    "wml" => FileTypeResolver::Static(FileType::Wml),
    "wsf" => FileTypeResolver::Static(FileType::Wsh),
    "wsc" => FileTypeResolver::Static(FileType::Wsh),
    "wsml" => FileTypeResolver::Static(FileType::Wsml),
    "ad" => FileTypeResolver::Static(FileType::XDefaults),
    "xhtml" => FileTypeResolver::Static(FileType::Xhtml),
    "xht" => FileTypeResolver::Static(FileType::Xhtml),
    "msc" => FileTypeResolver::Static(FileType::XMath),
    "msf" => FileTypeResolver::Static(FileType::XMath),
    "psc1" => FileTypeResolver::Static(FileType::Xml),
    "tpm" => FileTypeResolver::Static(FileType::Xml),
    "xliff" => FileTypeResolver::Static(FileType::Xml),
    "atom" => FileTypeResolver::Static(FileType::Xml),
    "xul" => FileTypeResolver::Static(FileType::Xml),
    "cdxml" => FileTypeResolver::Static(FileType::Xml),
    "mpd" => FileTypeResolver::Static(FileType::Xml),
    "rss" => FileTypeResolver::Static(FileType::Xml),
    "fsproj" => FileTypeResolver::Static(FileType::Xml),
    "ui" => FileTypeResolver::Static(FileType::Xml),
    "vbproj" => FileTypeResolver::Static(FileType::Xml),
    "xlf" => FileTypeResolver::Static(FileType::Xml),
    "wsdl" => FileTypeResolver::Static(FileType::Xml),
    "csproj" => FileTypeResolver::Static(FileType::Xml),
    "wpl" => FileTypeResolver::Static(FileType::Xml),
    "xmi" => FileTypeResolver::Static(FileType::Xml),
    "xpr" => FileTypeResolver::Static(FileType::Xml),
    "xpfm" => FileTypeResolver::Static(FileType::Xml),
    "spfm" => FileTypeResolver::Static(FileType::Xml),
    "bxml" => FileTypeResolver::Static(FileType::Xml),
    "mmi" => FileTypeResolver::Static(FileType::Xml),
    "xcu" => FileTypeResolver::Static(FileType::Xml),
    "xlb" => FileTypeResolver::Static(FileType::Xml),
    "xlc" => FileTypeResolver::Static(FileType::Xml),
    "xba" => FileTypeResolver::Static(FileType::Xml),
    "slnx" => FileTypeResolver::Static(FileType::Xml),
    "xpm2" => FileTypeResolver::Static(FileType::Xpm2),
    "xqy" => FileTypeResolver::Static(FileType::XQuery),
    "xqm" => FileTypeResolver::Static(FileType::XQuery),
    "xquery" => FileTypeResolver::Static(FileType::XQuery),
    "xq" => FileTypeResolver::Static(FileType::XQuery),
    "xql" => FileTypeResolver::Static(FileType::XQuery),
    "xs" => FileTypeResolver::Static(FileType::Xs),
    "xsd" => FileTypeResolver::Static(FileType::Xsd),
    "xsl" => FileTypeResolver::Static(FileType::Xslt),
    "xslt" => FileTypeResolver::Static(FileType::Xslt),
    "yy" => FileTypeResolver::Static(FileType::Yacc),
    "y++" => FileTypeResolver::Static(FileType::Yacc),
    "yxx" => FileTypeResolver::Static(FileType::Yacc),
    "yml" => FileTypeResolver::Static(FileType::Yaml),
    "yaml" => FileTypeResolver::Static(FileType::Yaml),
    "eyaml" => FileTypeResolver::Static(FileType::Yaml),
    "mplstyle" => FileTypeResolver::Static(FileType::Yaml),
    "kyaml" => FileTypeResolver::Static(FileType::Yaml),
    "kyml" => FileTypeResolver::Static(FileType::Yaml),
    "grc" => FileTypeResolver::Static(FileType::Yaml),
    "yang" => FileTypeResolver::Static(FileType::Yang),
    "yuck" => FileTypeResolver::Static(FileType::Yuck),
    "z8a" => FileTypeResolver::Static(FileType::Z8a),
    "zig" => FileTypeResolver::Static(FileType::Zig),
    "zon" => FileTypeResolver::Static(FileType::Zig),
    "ziggy" => FileTypeResolver::Static(FileType::Ziggy),
    "ziggy-schema" => FileTypeResolver::Static(FileType::ZiggySchema),
    "zu" => FileTypeResolver::Static(FileType::Zimbu),
    "zut" => FileTypeResolver::Static(FileType::ZimbuTempl),
    "zs" => FileTypeResolver::Static(FileType::Zserio),
    "zsh" => FileTypeResolver::Static(FileType::Zsh),
    "zunit" => FileTypeResolver::Static(FileType::Zsh),
    "zsh-theme" => FileTypeResolver::Static(FileType::Zsh),
    "vala" => FileTypeResolver::Static(FileType::Vala),
    "class" => FileTypeResolver::Static(FileType::Stata),
    "asa" => FileTypeResolver::Dynamic(detect::asa),
    "asm" => FileTypeResolver::Dynamic(detect::asm),
    "s" => FileTypeResolver::Dynamic(detect::asm),
    "S" => FileTypeResolver::Dynamic(detect::asm),
    "a" => FileTypeResolver::Dynamic(detect::asm),
    "A" => FileTypeResolver::Dynamic(detect::asm),
    "lst" => FileTypeResolver::Dynamic(detect::asm),
    "mac" => FileTypeResolver::Dynamic(detect::asm),
    "asp" => FileTypeResolver::Dynamic(detect::asp),
    "bas" => FileTypeResolver::Dynamic(detect::bas),
    "bi" => FileTypeResolver::Dynamic(detect::bas),
    "bm" => FileTypeResolver::Dynamic(detect::bas),
    "btm" => FileTypeResolver::Dynamic(detect::btm),
    "cfg" => FileTypeResolver::Dynamic(detect::cfg),
    "Cfg" => FileTypeResolver::Dynamic(detect::cfg),
    "CFG" => FileTypeResolver::Dynamic(detect::cfg),
    "ch" => FileTypeResolver::Dynamic(detect::change),
    "hook" => FileTypeResolver::Dynamic(detect::hook),
    "control" => FileTypeResolver::Dynamic(detect::control),
    "copyright" => FileTypeResolver::Dynamic(detect::copyright),
    "csh" => FileTypeResolver::Dynamic(detect::csh),
    "cpp" => FileTypeResolver::Dynamic(detect::cpp),
    "cc" => FileTypeResolver::Dynamic(detect::cpp),
    "dat" => FileTypeResolver::Dynamic(detect::dat),
    "Dat" => FileTypeResolver::Dynamic(detect::dat),
    "DAT" => FileTypeResolver::Dynamic(detect::dat),
    "decl" => FileTypeResolver::Dynamic(detect::decl),
    "dec" => FileTypeResolver::Dynamic(detect::decl),
    "d" => FileTypeResolver::Dynamic(detect::dtrace),
    "e" => FileTypeResolver::Dynamic(detect::e),
    "E" => FileTypeResolver::Dynamic(detect::e),
    "edn" => FileTypeResolver::Dynamic(detect::edn),
    "ent" => FileTypeResolver::Dynamic(detect::ent),
    "eu" => FileTypeResolver::Dynamic(detect::euphoria),
    "EU" => FileTypeResolver::Dynamic(detect::euphoria),
    "ew" => FileTypeResolver::Dynamic(detect::euphoria),
    "EW" => FileTypeResolver::Dynamic(detect::euphoria),
    "EX" => FileTypeResolver::Dynamic(detect::euphoria),
    "exu" => FileTypeResolver::Dynamic(detect::euphoria),
    "EXU" => FileTypeResolver::Dynamic(detect::euphoria),
    "exw" => FileTypeResolver::Dynamic(detect::euphoria),
    "EXW" => FileTypeResolver::Dynamic(detect::euphoria),
    "ex" => FileTypeResolver::Dynamic(detect::ex),
    "frm" => FileTypeResolver::Dynamic(detect::frm),
    "fs" => FileTypeResolver::Dynamic(detect::fs),
    "h" => FileTypeResolver::Dynamic(detect::header),
    "cpt" => FileTypeResolver::Dynamic(detect::html),
    "dtml" => FileTypeResolver::Dynamic(detect::html),
    "htm" => FileTypeResolver::Dynamic(detect::html),
    "html" => FileTypeResolver::Dynamic(detect::html),
    "pt" => FileTypeResolver::Dynamic(detect::html),
    "shtml" => FileTypeResolver::Dynamic(detect::html),
    "stm" => FileTypeResolver::Dynamic(detect::html),
    "hw" => FileTypeResolver::Dynamic(detect::hw),
    "module" => FileTypeResolver::Dynamic(detect::hw),
    "pkg" => FileTypeResolver::Dynamic(detect::hw),
    "idl" => FileTypeResolver::Dynamic(detect::idl),
    "inc" => FileTypeResolver::Dynamic(detect::inc),
    "inp" => FileTypeResolver::Dynamic(detect::inp),
    "c" => FileTypeResolver::Dynamic(detect::lpc),
    "lsl" => FileTypeResolver::Dynamic(detect::lsl),
    "m" => FileTypeResolver::Dynamic(detect::m),
    "mc" => FileTypeResolver::Dynamic(detect::mc),
    "m4" => FileTypeResolver::Dynamic(detect::m4_ext),
    "mm" => FileTypeResolver::Dynamic(detect::mm),
    "mms" => FileTypeResolver::Dynamic(detect::mms),
    "mod" => FileTypeResolver::Dynamic(detect::mod_),
    "Mod" => FileTypeResolver::Dynamic(detect::mod_),
    "MOD" => FileTypeResolver::Dynamic(detect::mod_),
    "0" => FileTypeResolver::Dynamic(detect::nroff),
    "1" => FileTypeResolver::Dynamic(detect::nroff),
    "2" => FileTypeResolver::Dynamic(detect::nroff),
    "3" => FileTypeResolver::Dynamic(detect::nroff),
    "4" => FileTypeResolver::Dynamic(detect::nroff),
    "5" => FileTypeResolver::Dynamic(detect::nroff),
    "6" => FileTypeResolver::Dynamic(detect::nroff),
    "7" => FileTypeResolver::Dynamic(detect::nroff),
    "8" => FileTypeResolver::Dynamic(detect::nroff),
    "9" => FileTypeResolver::Dynamic(detect::nroff),
    "0p" => FileTypeResolver::Dynamic(detect::nroff),
    "1p" => FileTypeResolver::Dynamic(detect::nroff),
    "3p" => FileTypeResolver::Dynamic(detect::nroff),
    "1x" => FileTypeResolver::Dynamic(detect::nroff),
    "2x" => FileTypeResolver::Dynamic(detect::nroff),
    "3x" => FileTypeResolver::Dynamic(detect::nroff),
    "4x" => FileTypeResolver::Dynamic(detect::nroff),
    "5x" => FileTypeResolver::Dynamic(detect::nroff),
    "6x" => FileTypeResolver::Dynamic(detect::nroff),
    "7x" => FileTypeResolver::Dynamic(detect::nroff),
    "8x" => FileTypeResolver::Dynamic(detect::nroff),
    "3am" => FileTypeResolver::Dynamic(detect::nroff),
    "3perl" => FileTypeResolver::Dynamic(detect::nroff),
    "3pm" => FileTypeResolver::Dynamic(detect::nroff),
    "3posix" => FileTypeResolver::Dynamic(detect::nroff),
    "3type" => FileTypeResolver::Dynamic(detect::nroff),
    "n" => FileTypeResolver::Dynamic(detect::nroff),
    "PL" => FileTypeResolver::Dynamic(detect::pl),
    "prg" => FileTypeResolver::Dynamic(detect::prg),
    "Prg" => FileTypeResolver::Dynamic(detect::prg),
    "PRG" => FileTypeResolver::Dynamic(detect::prg),
    "R" => FileTypeResolver::Dynamic(detect::r),
    "sig" => FileTypeResolver::Dynamic(detect::sig),
    "sil" => FileTypeResolver::Dynamic(detect::sil),
    "typ" => FileTypeResolver::Dynamic(detect::typ),
    "src" => FileTypeResolver::Dynamic(detect::src),
    "Src" => FileTypeResolver::Dynamic(detect::src),
    "SRC" => FileTypeResolver::Dynamic(detect::src),
    "sys" => FileTypeResolver::Dynamic(detect::sys),
    "Sys" => FileTypeResolver::Dynamic(detect::sys),
    "SYS" => FileTypeResolver::Dynamic(detect::sys),
    "cls" => FileTypeResolver::Dynamic(detect::cls),
    "ts" => FileTypeResolver::Dynamic(detect::ts),
    "v" => FileTypeResolver::Dynamic(detect::v),
    "xpm" => FileTypeResolver::Dynamic(detect::xpm),
    "web" => FileTypeResolver::Dynamic(detect::web),
    "pl" => FileTypeResolver::Dynamic(detect::pl),
    "pp" => FileTypeResolver::Dynamic(detect::pp),
    "i" => FileTypeResolver::Dynamic(detect::progress_asm),
    "w" => FileTypeResolver::Dynamic(detect::progress_cweb),
    "p" => FileTypeResolver::Dynamic(detect::progress_pascal),
    "patch" => FileTypeResolver::Dynamic(detect::patch),
    "r" => FileTypeResolver::Dynamic(detect::r),
    "rdf" => FileTypeResolver::Dynamic(detect::redif),
    "rules" => FileTypeResolver::Dynamic(detect::rules),
    "sc" => FileTypeResolver::Dynamic(detect::sc),
    "scd" => FileTypeResolver::Dynamic(detect::scd),
    "sql" => FileTypeResolver::Dynamic(detect::sql),
    "zsql" => FileTypeResolver::Dynamic(detect::sql),
    "tex" => FileTypeResolver::Dynamic(detect::tex),
    "tf" => FileTypeResolver::Dynamic(detect::tf),
    "txt" => FileTypeResolver::Dynamic(detect::txt),
    "xml" => FileTypeResolver::Dynamic(detect::xml),
    "y" => FileTypeResolver::Dynamic(detect::y),
    "cmd" => FileTypeResolver::Dynamic(detect::cmd),
    "rul" => FileTypeResolver::Dynamic(detect::rul),
    "cpy" => FileTypeResolver::Dynamic(detect::cpy),
    "dsl" => FileTypeResolver::Dynamic(detect::dsl),
    "smil" => FileTypeResolver::Dynamic(detect::smil),
    "smi" => FileTypeResolver::Dynamic(detect::smi),
    "install" => FileTypeResolver::Dynamic(detect::install),
    "pm" => FileTypeResolver::Dynamic(detect::pm),
    "me" => FileTypeResolver::Dynamic(detect::me),
    "reg" => FileTypeResolver::Dynamic(detect::reg),
    "ttl" => FileTypeResolver::Dynamic(detect::ttl),
    "rc" => FileTypeResolver::Dynamic(detect::rc),
    "rch" => FileTypeResolver::Dynamic(detect::rc),
    "sgml" => FileTypeResolver::Dynamic(detect::sgml),
    "sgm" => FileTypeResolver::Dynamic(detect::sgml),
    "bak" => FileTypeResolver::Dynamic(detect::bak),
    "dpkg-bak" => FileTypeResolver::Dynamic(detect::bak),
    "dpkg-dist" => FileTypeResolver::Dynamic(detect::bak),
    "dpkg-old" => FileTypeResolver::Dynamic(detect::bak),
    "dpkg-new" => FileTypeResolver::Dynamic(detect::bak),
    "in" => FileTypeResolver::Dynamic(detect::in_),
    "new" => FileTypeResolver::Dynamic(detect::bak),
    "old" => FileTypeResolver::Dynamic(detect::bak),
    "orig" => FileTypeResolver::Dynamic(detect::bak),
    "pacsave" => FileTypeResolver::Dynamic(detect::bak),
    "pacnew" => FileTypeResolver::Dynamic(detect::bak),
    "rpmsave" => FileTypeResolver::Dynamic(detect::bak),
    "rmpnew" => FileTypeResolver::Dynamic(detect::bak),
    "com" => FileTypeResolver::Dynamic(|_, content| detect::bindzone(content, Some(FileType::Dcl))),
    "db" => FileTypeResolver::Dynamic(|_, content| detect::bindzone(content, None)),
    "dcl" => FileTypeResolver::Dynamic(|path, content| detect::decl(path, content).or(Some(FileType::Clean))),
    "lib" => FileTypeResolver::Dynamic(detect::lib),
    "comp" => FileTypeResolver::Dynamic(detect::comp),
    "ms" => FileTypeResolver::Dynamic(|path, content| detect::nroff(path, content).or(Some(FileType::XMath))),
    "bash" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, Some(FileType::Bash))),
    "bats" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, Some(FileType::Bash))),
    "cygport" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, Some(FileType::Bash))),
    "ebuild" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, Some(FileType::Bash))),
    "eclass" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, Some(FileType::Bash))),
    "env" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, None)),
    "envrc" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, None)),
    "ksh" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, Some(FileType::Ksh))),
    "sh" => FileTypeResolver::Dynamic(|_, content| detect::sh(content, None)),
    "pro" => FileTypeResolver::Dynamic(|_, content| detect::proto(content, FileType::Idlang)),
    "tcsh" => FileTypeResolver::Dynamic(|_, content| detect::shell(content, FileType::Tcsh)),
    "t" => FileTypeResolver::Dynamic(|path, content| detect::nroff(path, content).or_else(|| detect::perl(path, content)).or(Some(FileType::Tads))),
    "agda" => FileTypeResolver::Static(FileType::Agda),
    "nawk" => FileTypeResolver::Static(FileType::Awk),
    "mawk" => FileTypeResolver::Static(FileType::Awk),
    "ash" => FileTypeResolver::Static(FileType::Bash),
    "dash" => FileTypeResolver::Static(FileType::Bash),
    "mksh" => FileTypeResolver::Static(FileType::Bash),
    "bazelrc" => FileTypeResolver::Static(FileType::Bash),
    "Renviron" => FileTypeResolver::Static(FileType::Bash),
    "bashrc_Apple_Terminal" => FileTypeResolver::Static(FileType::Bash),
    "zshrc_Apple_Terminal" => FileTypeResolver::Static(FileType::Bash),
    "bean" => FileTypeResolver::Static(FileType::BeanCount),
    "blade" => FileTypeResolver::Static(FileType::Blade),
    "circom" => FileTypeResolver::Static(FileType::Circom),
    "clar" => FileTypeResolver::Static(FileType::Clarity),
    "clje" => FileTypeResolver::Static(FileType::Clojure),
    "cljr" => FileTypeResolver::Static(FileType::Clojure),
    "boot" => FileTypeResolver::Static(FileType::Clojure),
    "cp" => FileTypeResolver::Static(FileType::Cpon),
    "txx" => FileTypeResolver::Static(FileType::Cpp),
    "h++" => FileTypeResolver::Static(FileType::Cpp),
    "cylc" => FileTypeResolver::Static(FileType::Cylc),
    "dd" => FileTypeResolver::Static(FileType::D),
    "Containerfile" => FileTypeResolver::Static(FileType::Dockerfile),
    "containerfile" => FileTypeResolver::Static(FileType::Dockerfile),
    "fidl" => FileTypeResolver::Static(FileType::Fidl),
    "forth" => FileTypeResolver::Static(FileType::Forth),
    "fsscript" => FileTypeResolver::Static(FileType::FSharp),
    "godot" => FileTypeResolver::Static(FileType::GdResource),
    "gdextension" => FileTypeResolver::Static(FileType::GdResource),
    "gotmpl" => FileTypeResolver::Static(FileType::Gotmpl),
    "gren" => FileTypeResolver::Static(FileType::Gren),
    "jenkinsfile" => FileTypeResolver::Static(FileType::Groovy),
    "nomad" => FileTypeResolver::Static(FileType::Hcl),
    "aspx" => FileTypeResolver::Static(FileType::Html),
    "jshtm" => FileTypeResolver::Static(FileType::Html),
    "volt" => FileTypeResolver::Static(FileType::Html),
    "container" => FileTypeResolver::Static(FileType::ConfIni),
    "volume" => FileTypeResolver::Static(FileType::ConfIni),
    "kube" => FileTypeResolver::Static(FileType::ConfIni),
    "network" => FileTypeResolver::Static(FileType::ConfIni),
    "cgen" => FileTypeResolver::Static(FileType::JanetSimple),
    "jdn" => FileTypeResolver::Static(FileType::JanetSimple),
    "es6" => FileTypeResolver::Static(FileType::JavaScript),
    "jinja2" => FileTypeResolver::Static(FileType::Jinja),
    "j2" => FileTypeResolver::Static(FileType::Jinja),
    "jsdoc" => FileTypeResolver::Static(FileType::Jsdoc),
    "arb" => FileTypeResolver::Static(FileType::Json),
    "gltf" => FileTypeResolver::Static(FileType::Json),
    "js.map" => FileTypeResolver::Static(FileType::Json),
    "ts.map" => FileTypeResolver::Static(FileType::Json),
    "css.map" => FileTypeResolver::Static(FileType::Json),
    "avsc" => FileTypeResolver::Static(FileType::Json),
    "ldtk" => FileTypeResolver::Static(FileType::Json),
    "ldtkl" => FileTypeResolver::Static(FileType::Json),
    "sublime-build" => FileTypeResolver::Static(FileType::Json),
    "sublime-color-scheme" => FileTypeResolver::Static(FileType::Json),
    "sublime-commands" => FileTypeResolver::Static(FileType::Json),
    "sublime-completions" => FileTypeResolver::Static(FileType::Json),
    "sublime-keymap" => FileTypeResolver::Static(FileType::Json),
    "sublime-macro" => FileTypeResolver::Static(FileType::Json),
    "sublime-menu" => FileTypeResolver::Static(FileType::Json),
    "sublime-mousemap" => FileTypeResolver::Static(FileType::Json),
    "sublime-theme" => FileTypeResolver::Static(FileType::Json),
    "code-workspace" => FileTypeResolver::Static(FileType::Json),
    "kcl" => FileTypeResolver::Static(FileType::Kcl),
    "kconfig" => FileTypeResolver::Static(FileType::KConfig),
    "koto" => FileTypeResolver::Static(FileType::Koto),
    "make" => FileTypeResolver::Static(FileType::Make),
    "mdx" => FileTypeResolver::Static(FileType::Markdown),
    "markdn" => FileTypeResolver::Static(FileType::Markdown),
    "mdtxt" => FileTypeResolver::Static(FileType::Markdown),
    "mdtext" => FileTypeResolver::Static(FileType::Markdown),
    "workbook" => FileTypeResolver::Static(FileType::Markdown),
    "nuon" => FileTypeResolver::Static(FileType::Nu),
    "lfm" => FileTypeResolver::Static(FileType::Pascal),
    "cert" => FileTypeResolver::Static(FileType::Pem),
    "nqp" => FileTypeResolver::Static(FileType::Perl),
    "pl6" => FileTypeResolver::Static(FileType::Perl),
    "pscc" => FileTypeResolver::Static(FileType::Ps1),
    "psrc" => FileTypeResolver::Static(FileType::Ps1),
    "prolog" => FileTypeResolver::Static(FileType::Prolog),
    "prefs" => FileTypeResolver::Static(FileType::JProperties),
    "py3" => FileTypeResolver::Static(FileType::Python),
    "rpy" => FileTypeResolver::Static(FileType::Python),
    "pyt" => FileTypeResolver::Static(FileType::Python),
    "scrbl" => FileTypeResolver::Static(FileType::Racket),
    "zuo" => FileTypeResolver::Static(FileType::Racket),
    "regex" => FileTypeResolver::Static(FileType::Regex),
    "irb" => FileTypeResolver::Static(FileType::Ruby),
    "rabl" => FileTypeResolver::Static(FileType::Ruby),
    "jbuilder" => FileTypeResolver::Static(FileType::Ruby),
    "jb" => FileTypeResolver::Static(FileType::Ruby),
    "podspec" => FileTypeResolver::Static(FileType::Ruby),
    "dsql" => FileTypeResolver::Static(FileType::Sql),
    "strace" => FileTypeResolver::Static(FileType::Strace),
    "tact" => FileTypeResolver::Static(FileType::Tact),
    "todotxt" => FileTypeResolver::Static(FileType::Todotxt),
    "typst" => FileTypeResolver::Static(FileType::Typst),
    "ungrammar" => FileTypeResolver::Static(FileType::Ungrammar),
    "vapi" => FileTypeResolver::Static(FileType::Vala),
    "ascx" => FileTypeResolver::Static(FileType::Xml),
    "axaml" => FileTypeResolver::Static(FileType::Xml),
    "axml" => FileTypeResolver::Static(FileType::Xml),
    "bpmn" => FileTypeResolver::Static(FileType::Xml),
    "checkstyle" => FileTypeResolver::Static(FileType::Xml),
    "csl" => FileTypeResolver::Static(FileType::Xml),
    "csproj.user" => FileTypeResolver::Static(FileType::Xml),
    "dita" => FileTypeResolver::Static(FileType::Xml),
    "ditamap" => FileTypeResolver::Static(FileType::Xml),
    "fods" => FileTypeResolver::Static(FileType::Xml),
    "fodt" => FileTypeResolver::Static(FileType::Xml),
    "fxml" => FileTypeResolver::Static(FileType::Xml),
    "gir" => FileTypeResolver::Static(FileType::Xml),
    "glif" => FileTypeResolver::Static(FileType::Xml),
    "gml" => FileTypeResolver::Static(FileType::Xml),
    "gpx" => FileTypeResolver::Static(FileType::Xml),
    "iml" => FileTypeResolver::Static(FileType::Xml),
    "isml" => FileTypeResolver::Static(FileType::Xml),
    "itermcolors" => FileTypeResolver::Static(FileType::Xml),
    "jmx" => FileTypeResolver::Static(FileType::Xml),
    "kml" => FileTypeResolver::Static(FileType::Xml),
    "launch" => FileTypeResolver::Static(FileType::Xml),
    "menu" => FileTypeResolver::Static(FileType::Xml),
    "mobileconfig" => FileTypeResolver::Static(FileType::Xml),
    "musicxml" => FileTypeResolver::Static(FileType::Xml),
    "mxml" => FileTypeResolver::Static(FileType::Xml),
    "ncx" => FileTypeResolver::Static(FileType::Xml),
    "nuspec" => FileTypeResolver::Static(FileType::Xml),
    "opml" => FileTypeResolver::Static(FileType::Xml),
    "osc" => FileTypeResolver::Static(FileType::Xml),
    "osm" => FileTypeResolver::Static(FileType::Xml),
    "plist" => FileTypeResolver::Static(FileType::Xml),
    "policy" => FileTypeResolver::Static(FileType::Xml),
    "publishsettings" => FileTypeResolver::Static(FileType::Xml),
    "pubxml" => FileTypeResolver::Static(FileType::Xml),
    "pubxml.user" => FileTypeResolver::Static(FileType::Xml),
    "rbxlx" => FileTypeResolver::Static(FileType::Xml),
    "rbxmx" => FileTypeResolver::Static(FileType::Xml),
    "resx" => FileTypeResolver::Static(FileType::Xml),
    "shproj" => FileTypeResolver::Static(FileType::Xml),
    "storyboard" => FileTypeResolver::Static(FileType::Xml),
    "sublime-snippet" => FileTypeResolver::Static(FileType::Xml),
    "terminal" => FileTypeResolver::Static(FileType::Xml),
    "tld" => FileTypeResolver::Static(FileType::Xml),
    "tmx" => FileTypeResolver::Static(FileType::Xml),
    "vbproj.user" => FileTypeResolver::Static(FileType::Xml),
    "vcxproj" => FileTypeResolver::Static(FileType::Xml),
    "vcxproj.filters" => FileTypeResolver::Static(FileType::Xml),
    "wixproj" => FileTypeResolver::Static(FileType::Xml),
    "wxi" => FileTypeResolver::Static(FileType::Xml),
    "wxs" => FileTypeResolver::Static(FileType::Xml),
    "xaml" => FileTypeResolver::Static(FileType::Xml),
    "xbl" => FileTypeResolver::Static(FileType::Xml),
    "xib" => FileTypeResolver::Static(FileType::Xml),
    "xmp" => FileTypeResolver::Static(FileType::Xml),
    "xoml" => FileTypeResolver::Static(FileType::Xml),
    "xpdl" => FileTypeResolver::Static(FileType::Xml),
    "xrc" => FileTypeResolver::Static(FileType::Xml),
    "sublime-syntax" => FileTypeResolver::Static(FileType::Yaml),
    "bu" => FileTypeResolver::Static(FileType::Yaml),
};